summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/language_server/gdscript_text_document.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2019-10-03 13:40:09 +0200
committerGitHub <noreply@github.com>2019-10-03 13:40:09 +0200
commitd66cce0215fe2f963ecf35c2176f4c89ef793ac5 (patch)
tree6427ebcd16a48cba2914d760e8a77fd46aff866c /modules/gdscript/language_server/gdscript_text_document.cpp
parent9a115ccaf3dd0224de0e5b1a2d116e53b6fabffb (diff)
parent6a8303f82f78646d77bc3f18b7083313005485c9 (diff)
downloadredot-engine-d66cce0215fe2f963ecf35c2176f4c89ef793ac5.tar.gz
Merge pull request #32517 from GodotExplorer/gdscript-lsp
GDScript LSP server improvement
Diffstat (limited to 'modules/gdscript/language_server/gdscript_text_document.cpp')
-rw-r--r--modules/gdscript/language_server/gdscript_text_document.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/modules/gdscript/language_server/gdscript_text_document.cpp b/modules/gdscript/language_server/gdscript_text_document.cpp
index 7c58c7aa15..f51f3671dd 100644
--- a/modules/gdscript/language_server/gdscript_text_document.cpp
+++ b/modules/gdscript/language_server/gdscript_text_document.cpp
@@ -271,8 +271,17 @@ Array GDScriptTextDocument::codeLens(const Dictionary &p_params) {
return arr;
}
-Variant GDScriptTextDocument::documentLink(const Dictionary &p_params) {
- Variant ret;
+Array GDScriptTextDocument::documentLink(const Dictionary &p_params) {
+ Array ret;
+
+ lsp::DocumentLinkParams params;
+ params.load(p_params);
+
+ List<lsp::DocumentLink> links;
+ GDScriptLanguageProtocol::get_singleton()->get_workspace()->resolve_document_links(params.textDocument.uri, links);
+ for (const List<lsp::DocumentLink>::Element *E = links.front(); E; E = E->next()) {
+ ret.push_back(E->get().to_json());
+ }
return ret;
}