LSP: Fix type bind, mark as experimental, deprecate direct LSP access

This commit is contained in:
HolonProduction 2025-06-08 16:12:33 +02:00
parent bf95b62586
commit c416cbaf54
12 changed files with 332 additions and 43 deletions

View file

@ -0,0 +1,69 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="GDScriptLanguageProtocol" inherits="JSONRPC" experimental="" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
<brief_description>
GDScript language server.
</brief_description>
<description>
Provides access to certain features that are implemented in the language server.
[b]Note:[/b] This class is not a language server client that can be used to access LSP functionality. It only provides access to a limited set of features that is implemented using the same technical foundation as the language server.
</description>
<tutorials>
</tutorials>
<methods>
<method name="get_text_document" deprecated="[GDScriptTextDocument] is deprecated.">
<return type="GDScriptTextDocument" />
<description>
Returns the language server's [GDScriptTextDocument] instance.
</description>
</method>
<method name="get_workspace">
<return type="GDScriptWorkspace" />
<description>
Returns the language server's [GDScriptWorkspace] instance.
</description>
</method>
<method name="initialize" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Dictionary" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="initialized" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="void" />
<param index="0" name="params" type="Variant" />
<description>
</description>
</method>
<method name="is_initialized" qualifiers="const">
<return type="bool" />
<description>
Returns [code]true[/code] if the language server was initialized by a language server client, [code]false[/code] otherwise.
</description>
</method>
<method name="is_smart_resolve_enabled" qualifiers="const">
<return type="bool" />
<description>
Returns [code]true[/code] if the language server is providing the smart resolve feature, [code]false[/code] otherwise. The feature can be configured through the editor settings.
</description>
</method>
<method name="notify_client" deprecated="Might result in unwanted side effects for connected clients.">
<return type="void" />
<param index="0" name="method" type="String" />
<param index="1" name="params" type="Variant" default="null" />
<param index="2" name="client_id" type="int" default="-1" />
<description>
</description>
</method>
<method name="on_client_connected" deprecated="Might result in unwanted side effects for connected clients.">
<return type="int" enum="Error" />
<description>
</description>
</method>
<method name="on_client_disconnected" deprecated="Might result in unwanted side effects for connected clients.">
<return type="void" />
<param index="0" name="client_id" type="int" />
<description>
</description>
</method>
</methods>
</class>

View file

@ -0,0 +1,139 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="GDScriptTextDocument" inherits="RefCounted" deprecated="" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
<brief_description>
Document related language server functionality.
</brief_description>
<description>
Provides language server functionality related to documents.
</description>
<tutorials>
</tutorials>
<methods>
<method name="codeLens" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Array" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="colorPresentation" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Array" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="completion" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Array" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="declaration" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Variant" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="definition" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Array" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="didChange" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="void" />
<param index="0" name="params" type="Variant" />
<description>
</description>
</method>
<method name="didClose" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="void" />
<param index="0" name="params" type="Variant" />
<description>
</description>
</method>
<method name="didOpen" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="void" />
<param index="0" name="params" type="Variant" />
<description>
</description>
</method>
<method name="didSave" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="void" />
<param index="0" name="params" type="Variant" />
<description>
</description>
</method>
<method name="documentLink" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Array" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="documentSymbol" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Array" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="foldingRange" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Array" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="hover" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Variant" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="nativeSymbol" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Variant" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="prepareRename" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Variant" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="references" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Array" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="rename" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Dictionary" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="resolve" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Dictionary" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="show_native_symbol_in_editor" deprecated="Use [method ScriptEditor.goto_help] instead.">
<return type="void" />
<param index="0" name="symbol_id" type="String" />
<description>
</description>
</method>
<method name="signatureHelp" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="Variant" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="willSaveWaitUntil" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="void" />
<param index="0" name="params" type="Variant" />
<description>
</description>
</method>
</methods>
</class>

View file

@ -0,0 +1,67 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="GDScriptWorkspace" inherits="RefCounted" experimental="" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
<brief_description>
Workspace related language server functionality.
</brief_description>
<description>
Provides language server functionality related to the workspace.
</description>
<tutorials>
</tutorials>
<methods>
<method name="apply_new_signal" deprecated="Might result in unwanted side effects for connected clients.">
<return type="void" />
<param index="0" name="obj" type="Object" />
<param index="1" name="function" type="String" />
<param index="2" name="args" type="PackedStringArray" />
<description>
</description>
</method>
<method name="didDeleteFiles" deprecated="Accessing LSP endpoints directly might lead to unwanted side effects. Connect to the server via TCP, like a regular language server client.">
<return type="void" />
<param index="0" name="params" type="Dictionary" />
<description>
</description>
</method>
<method name="generate_script_api">
<return type="Dictionary" />
<param index="0" name="path" type="String" />
<description>
Returns the interface of the script in a machine-readable format.
</description>
</method>
<method name="get_file_path">
<return type="String" />
<param index="0" name="uri" type="String" />
<description>
Converts a URI to a file path.
</description>
</method>
<method name="get_file_uri" qualifiers="const">
<return type="String" />
<param index="0" name="path" type="String" />
<description>
Converts a file path to a URI.
</description>
</method>
<method name="parse_local_script" deprecated="Might result in unwanted side effects for connected clients.">
<return type="int" enum="Error" />
<param index="0" name="path" type="String" />
<description>
</description>
</method>
<method name="parse_script" deprecated="Might result in unwanted side effects for connected clients.">
<return type="int" enum="Error" />
<param index="0" name="path" type="String" />
<param index="1" name="content" type="String" />
<description>
</description>
</method>
<method name="publish_diagnostics" deprecated="Might result in unwanted side effects for connected clients.">
<return type="void" />
<param index="0" name="path" type="String" />
<description>
</description>
</method>
</methods>
</class>