language_server-protocol 3.16.0.0 → 3.16.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +2 -0
- data/lib/language_server/protocol/interface/annotated_text_edit.rb +19 -1
- data/lib/language_server/protocol/interface/call_hierarchy_incoming_calls_params.rb +20 -2
- data/lib/language_server/protocol/interface/call_hierarchy_options.rb +6 -1
- data/lib/language_server/protocol/interface/call_hierarchy_outgoing_calls_params.rb +20 -2
- data/lib/language_server/protocol/interface/call_hierarchy_prepare_params.rb +28 -2
- data/lib/language_server/protocol/interface/call_hierarchy_registration_options.rb +27 -2
- data/lib/language_server/protocol/interface/code_action_options.rb +6 -1
- data/lib/language_server/protocol/interface/code_action_params.rb +20 -2
- data/lib/language_server/protocol/interface/code_action_registration_options.rb +37 -2
- data/lib/language_server/protocol/interface/code_lens_options.rb +6 -1
- data/lib/language_server/protocol/interface/code_lens_params.rb +20 -2
- data/lib/language_server/protocol/interface/code_lens_registration_options.rb +25 -2
- data/lib/language_server/protocol/interface/color_presentation_params.rb +20 -2
- data/lib/language_server/protocol/interface/completion_options.rb +6 -1
- data/lib/language_server/protocol/interface/completion_params.rb +38 -2
- data/lib/language_server/protocol/interface/completion_registration_options.rb +57 -2
- data/lib/language_server/protocol/interface/declaration_options.rb +6 -1
- data/lib/language_server/protocol/interface/declaration_params.rb +38 -2
- data/lib/language_server/protocol/interface/declaration_registration_options.rb +27 -2
- data/lib/language_server/protocol/interface/definition_options.rb +6 -1
- data/lib/language_server/protocol/interface/definition_params.rb +38 -2
- data/lib/language_server/protocol/interface/definition_registration_options.rb +17 -2
- data/lib/language_server/protocol/interface/document_color_options.rb +6 -1
- data/lib/language_server/protocol/interface/document_color_params.rb +20 -2
- data/lib/language_server/protocol/interface/document_color_registration_options.rb +27 -2
- data/lib/language_server/protocol/interface/document_formatting_options.rb +6 -1
- data/lib/language_server/protocol/interface/document_formatting_params.rb +9 -1
- data/lib/language_server/protocol/interface/document_formatting_registration_options.rb +17 -2
- data/lib/language_server/protocol/interface/document_highlight_options.rb +6 -1
- data/lib/language_server/protocol/interface/document_highlight_params.rb +38 -2
- data/lib/language_server/protocol/interface/document_highlight_registration_options.rb +17 -2
- data/lib/language_server/protocol/interface/document_link_options.rb +6 -1
- data/lib/language_server/protocol/interface/document_link_params.rb +20 -2
- data/lib/language_server/protocol/interface/document_link_registration_options.rb +25 -2
- data/lib/language_server/protocol/interface/document_on_type_formatting_params.rb +17 -1
- data/lib/language_server/protocol/interface/document_on_type_formatting_registration_options.rb +28 -2
- data/lib/language_server/protocol/interface/document_range_formatting_options.rb +6 -1
- data/lib/language_server/protocol/interface/document_range_formatting_params.rb +9 -1
- data/lib/language_server/protocol/interface/document_range_formatting_registration_options.rb +17 -2
- data/lib/language_server/protocol/interface/document_symbol_options.rb +6 -1
- data/lib/language_server/protocol/interface/document_symbol_params.rb +20 -2
- data/lib/language_server/protocol/interface/document_symbol_registration_options.rb +26 -2
- data/lib/language_server/protocol/interface/execute_command_options.rb +6 -1
- data/lib/language_server/protocol/interface/execute_command_params.rb +9 -1
- data/lib/language_server/protocol/interface/execute_command_registration_options.rb +14 -1
- data/lib/language_server/protocol/interface/folding_range_options.rb +6 -1
- data/lib/language_server/protocol/interface/folding_range_params.rb +20 -2
- data/lib/language_server/protocol/interface/folding_range_registration_options.rb +27 -2
- data/lib/language_server/protocol/interface/hover_options.rb +6 -1
- data/lib/language_server/protocol/interface/hover_params.rb +28 -2
- data/lib/language_server/protocol/interface/hover_registration_options.rb +17 -2
- data/lib/language_server/protocol/interface/implementation_options.rb +6 -1
- data/lib/language_server/protocol/interface/implementation_params.rb +38 -2
- data/lib/language_server/protocol/interface/implementation_registration_options.rb +27 -2
- data/lib/language_server/protocol/interface/initialize_params.rb +9 -1
- data/lib/language_server/protocol/interface/linked_editing_range_options.rb +6 -1
- data/lib/language_server/protocol/interface/linked_editing_range_params.rb +28 -2
- data/lib/language_server/protocol/interface/linked_editing_range_registration_options.rb +27 -2
- data/lib/language_server/protocol/interface/moniker_options.rb +6 -1
- data/lib/language_server/protocol/interface/moniker_params.rb +38 -2
- data/lib/language_server/protocol/interface/moniker_registration_options.rb +17 -2
- data/lib/language_server/protocol/interface/notification_message.rb +6 -1
- data/lib/language_server/protocol/interface/optional_versioned_text_document_identifier.rb +9 -1
- data/lib/language_server/protocol/interface/prepare_rename_params.rb +17 -1
- data/lib/language_server/protocol/interface/reference_options.rb +6 -1
- data/lib/language_server/protocol/interface/reference_params.rb +38 -2
- data/lib/language_server/protocol/interface/reference_registration_options.rb +17 -2
- data/lib/language_server/protocol/interface/rename_options.rb +6 -1
- data/lib/language_server/protocol/interface/rename_params.rb +28 -2
- data/lib/language_server/protocol/interface/rename_registration_options.rb +25 -2
- data/lib/language_server/protocol/interface/request_message.rb +6 -1
- data/lib/language_server/protocol/interface/response_message.rb +6 -1
- data/lib/language_server/protocol/interface/selection_range_options.rb +6 -1
- data/lib/language_server/protocol/interface/selection_range_params.rb +20 -2
- data/lib/language_server/protocol/interface/selection_range_registration_options.rb +27 -2
- data/lib/language_server/protocol/interface/semantic_tokens_delta_params.rb +20 -2
- data/lib/language_server/protocol/interface/semantic_tokens_options.rb +6 -1
- data/lib/language_server/protocol/interface/semantic_tokens_params.rb +20 -2
- data/lib/language_server/protocol/interface/semantic_tokens_range_params.rb +20 -2
- data/lib/language_server/protocol/interface/semantic_tokens_registration_options.rb +55 -2
- data/lib/language_server/protocol/interface/signature_help_options.rb +6 -1
- data/lib/language_server/protocol/interface/signature_help_params.rb +28 -2
- data/lib/language_server/protocol/interface/signature_help_registration_options.rb +38 -2
- data/lib/language_server/protocol/interface/text_document_change_registration_options.rb +10 -1
- data/lib/language_server/protocol/interface/text_document_save_registration_options.rb +10 -1
- data/lib/language_server/protocol/interface/type_definition_options.rb +6 -1
- data/lib/language_server/protocol/interface/type_definition_params.rb +38 -2
- data/lib/language_server/protocol/interface/type_definition_registration_options.rb +27 -2
- data/lib/language_server/protocol/interface/versioned_text_document_identifier.rb +9 -1
- data/lib/language_server/protocol/interface/workspace_symbol_options.rb +6 -1
- data/lib/language_server/protocol/interface/workspace_symbol_params.rb +20 -2
- data/lib/language_server/protocol/interface/workspace_symbol_registration_options.rb +6 -1
- data/lib/language_server/protocol/version.rb +1 -1
- metadata +3 -3
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class RenameOptions
|
|
4
|
+
class RenameOptions
|
|
5
5
|
def initialize(work_done_progress: nil, prepare_provider: nil)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
@@ -11,6 +11,11 @@ module LanguageServer
|
|
|
11
11
|
@attributes.freeze
|
|
12
12
|
end
|
|
13
13
|
|
|
14
|
+
# @return [boolean]
|
|
15
|
+
def work_done_progress
|
|
16
|
+
attributes.fetch(:workDoneProgress)
|
|
17
|
+
end
|
|
18
|
+
|
|
14
19
|
#
|
|
15
20
|
# Renames should be checked and tested before being executed.
|
|
16
21
|
#
|
|
@@ -1,16 +1,42 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class RenameParams
|
|
5
|
-
def initialize(work_done_token: nil, new_name:)
|
|
4
|
+
class RenameParams
|
|
5
|
+
def initialize(text_document:, position:, work_done_token: nil, new_name:)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
8
|
+
@attributes[:textDocument] = text_document
|
|
9
|
+
@attributes[:position] = position
|
|
8
10
|
@attributes[:workDoneToken] = work_done_token if work_done_token
|
|
9
11
|
@attributes[:newName] = new_name
|
|
10
12
|
|
|
11
13
|
@attributes.freeze
|
|
12
14
|
end
|
|
13
15
|
|
|
16
|
+
#
|
|
17
|
+
# The text document.
|
|
18
|
+
#
|
|
19
|
+
# @return [TextDocumentIdentifier]
|
|
20
|
+
def text_document
|
|
21
|
+
attributes.fetch(:textDocument)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
#
|
|
25
|
+
# The position inside the text document.
|
|
26
|
+
#
|
|
27
|
+
# @return [Position]
|
|
28
|
+
def position
|
|
29
|
+
attributes.fetch(:position)
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
#
|
|
33
|
+
# An optional token that a server can use to report work done progress.
|
|
34
|
+
#
|
|
35
|
+
# @return [ProgressToken]
|
|
36
|
+
def work_done_token
|
|
37
|
+
attributes.fetch(:workDoneToken)
|
|
38
|
+
end
|
|
39
|
+
|
|
14
40
|
#
|
|
15
41
|
# The new name of the symbol. If the given name is not valid the
|
|
16
42
|
# request must return a [ResponseError](#ResponseError) with an
|
|
@@ -1,16 +1,39 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class RenameRegistrationOptions
|
|
5
|
-
def initialize(work_done_progress: nil, prepare_provider: nil)
|
|
4
|
+
class RenameRegistrationOptions
|
|
5
|
+
def initialize(document_selector:, work_done_progress: nil, prepare_provider: nil)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
8
|
+
@attributes[:documentSelector] = document_selector
|
|
8
9
|
@attributes[:workDoneProgress] = work_done_progress if work_done_progress
|
|
9
10
|
@attributes[:prepareProvider] = prepare_provider if prepare_provider
|
|
10
11
|
|
|
11
12
|
@attributes.freeze
|
|
12
13
|
end
|
|
13
14
|
|
|
15
|
+
#
|
|
16
|
+
# A document selector to identify the scope of the registration. If set to
|
|
17
|
+
# null the document selector provided on the client side will be used.
|
|
18
|
+
#
|
|
19
|
+
# @return [DocumentSelector]
|
|
20
|
+
def document_selector
|
|
21
|
+
attributes.fetch(:documentSelector)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
# @return [boolean]
|
|
25
|
+
def work_done_progress
|
|
26
|
+
attributes.fetch(:workDoneProgress)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
#
|
|
30
|
+
# Renames should be checked and tested before being executed.
|
|
31
|
+
#
|
|
32
|
+
# @return [boolean]
|
|
33
|
+
def prepare_provider
|
|
34
|
+
attributes.fetch(:prepareProvider)
|
|
35
|
+
end
|
|
36
|
+
|
|
14
37
|
attr_reader :attributes
|
|
15
38
|
|
|
16
39
|
def to_hash
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class RequestMessage
|
|
4
|
+
class RequestMessage
|
|
5
5
|
def initialize(jsonrpc:, id:, method:, params: nil)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
@@ -13,6 +13,11 @@ module LanguageServer
|
|
|
13
13
|
@attributes.freeze
|
|
14
14
|
end
|
|
15
15
|
|
|
16
|
+
# @return [string]
|
|
17
|
+
def jsonrpc
|
|
18
|
+
attributes.fetch(:jsonrpc)
|
|
19
|
+
end
|
|
20
|
+
|
|
16
21
|
#
|
|
17
22
|
# The request id.
|
|
18
23
|
#
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class ResponseMessage
|
|
4
|
+
class ResponseMessage
|
|
5
5
|
def initialize(jsonrpc:, id:, result: nil, error: nil)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
@@ -13,6 +13,11 @@ module LanguageServer
|
|
|
13
13
|
@attributes.freeze
|
|
14
14
|
end
|
|
15
15
|
|
|
16
|
+
# @return [string]
|
|
17
|
+
def jsonrpc
|
|
18
|
+
attributes.fetch(:jsonrpc)
|
|
19
|
+
end
|
|
20
|
+
|
|
16
21
|
#
|
|
17
22
|
# The request id.
|
|
18
23
|
#
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class SelectionRangeOptions
|
|
4
|
+
class SelectionRangeOptions
|
|
5
5
|
def initialize(work_done_progress: nil)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
@@ -10,6 +10,11 @@ module LanguageServer
|
|
|
10
10
|
@attributes.freeze
|
|
11
11
|
end
|
|
12
12
|
|
|
13
|
+
# @return [boolean]
|
|
14
|
+
def work_done_progress
|
|
15
|
+
attributes.fetch(:workDoneProgress)
|
|
16
|
+
end
|
|
17
|
+
|
|
13
18
|
attr_reader :attributes
|
|
14
19
|
|
|
15
20
|
def to_hash
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class SelectionRangeParams
|
|
5
|
-
def initialize(partial_result_token: nil, text_document:, positions:)
|
|
4
|
+
class SelectionRangeParams
|
|
5
|
+
def initialize(work_done_token: nil, partial_result_token: nil, text_document:, positions:)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
8
|
+
@attributes[:workDoneToken] = work_done_token if work_done_token
|
|
8
9
|
@attributes[:partialResultToken] = partial_result_token if partial_result_token
|
|
9
10
|
@attributes[:textDocument] = text_document
|
|
10
11
|
@attributes[:positions] = positions
|
|
@@ -12,6 +13,23 @@ module LanguageServer
|
|
|
12
13
|
@attributes.freeze
|
|
13
14
|
end
|
|
14
15
|
|
|
16
|
+
#
|
|
17
|
+
# An optional token that a server can use to report work done progress.
|
|
18
|
+
#
|
|
19
|
+
# @return [ProgressToken]
|
|
20
|
+
def work_done_token
|
|
21
|
+
attributes.fetch(:workDoneToken)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
#
|
|
25
|
+
# An optional token that a server can use to report partial results (e.g.
|
|
26
|
+
# streaming) to the client.
|
|
27
|
+
#
|
|
28
|
+
# @return [ProgressToken]
|
|
29
|
+
def partial_result_token
|
|
30
|
+
attributes.fetch(:partialResultToken)
|
|
31
|
+
end
|
|
32
|
+
|
|
15
33
|
#
|
|
16
34
|
# The text document.
|
|
17
35
|
#
|
|
@@ -1,15 +1,40 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class SelectionRangeRegistrationOptions
|
|
5
|
-
def initialize(id: nil)
|
|
4
|
+
class SelectionRangeRegistrationOptions
|
|
5
|
+
def initialize(work_done_progress: nil, document_selector:, id: nil)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
8
|
+
@attributes[:workDoneProgress] = work_done_progress if work_done_progress
|
|
9
|
+
@attributes[:documentSelector] = document_selector
|
|
8
10
|
@attributes[:id] = id if id
|
|
9
11
|
|
|
10
12
|
@attributes.freeze
|
|
11
13
|
end
|
|
12
14
|
|
|
15
|
+
# @return [boolean]
|
|
16
|
+
def work_done_progress
|
|
17
|
+
attributes.fetch(:workDoneProgress)
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
#
|
|
21
|
+
# A document selector to identify the scope of the registration. If set to
|
|
22
|
+
# null the document selector provided on the client side will be used.
|
|
23
|
+
#
|
|
24
|
+
# @return [DocumentSelector]
|
|
25
|
+
def document_selector
|
|
26
|
+
attributes.fetch(:documentSelector)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
#
|
|
30
|
+
# The id used to register the request. The id can be used to deregister
|
|
31
|
+
# the request again. See also Registration#id.
|
|
32
|
+
#
|
|
33
|
+
# @return [string]
|
|
34
|
+
def id
|
|
35
|
+
attributes.fetch(:id)
|
|
36
|
+
end
|
|
37
|
+
|
|
13
38
|
attr_reader :attributes
|
|
14
39
|
|
|
15
40
|
def to_hash
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class SemanticTokensDeltaParams
|
|
5
|
-
def initialize(partial_result_token: nil, text_document:, previous_result_id:)
|
|
4
|
+
class SemanticTokensDeltaParams
|
|
5
|
+
def initialize(work_done_token: nil, partial_result_token: nil, text_document:, previous_result_id:)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
8
|
+
@attributes[:workDoneToken] = work_done_token if work_done_token
|
|
8
9
|
@attributes[:partialResultToken] = partial_result_token if partial_result_token
|
|
9
10
|
@attributes[:textDocument] = text_document
|
|
10
11
|
@attributes[:previousResultId] = previous_result_id
|
|
@@ -12,6 +13,23 @@ module LanguageServer
|
|
|
12
13
|
@attributes.freeze
|
|
13
14
|
end
|
|
14
15
|
|
|
16
|
+
#
|
|
17
|
+
# An optional token that a server can use to report work done progress.
|
|
18
|
+
#
|
|
19
|
+
# @return [ProgressToken]
|
|
20
|
+
def work_done_token
|
|
21
|
+
attributes.fetch(:workDoneToken)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
#
|
|
25
|
+
# An optional token that a server can use to report partial results (e.g.
|
|
26
|
+
# streaming) to the client.
|
|
27
|
+
#
|
|
28
|
+
# @return [ProgressToken]
|
|
29
|
+
def partial_result_token
|
|
30
|
+
attributes.fetch(:partialResultToken)
|
|
31
|
+
end
|
|
32
|
+
|
|
15
33
|
#
|
|
16
34
|
# The text document.
|
|
17
35
|
#
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class SemanticTokensOptions
|
|
4
|
+
class SemanticTokensOptions
|
|
5
5
|
def initialize(work_done_progress: nil, legend:, range: nil, full: nil)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
@@ -13,6 +13,11 @@ module LanguageServer
|
|
|
13
13
|
@attributes.freeze
|
|
14
14
|
end
|
|
15
15
|
|
|
16
|
+
# @return [boolean]
|
|
17
|
+
def work_done_progress
|
|
18
|
+
attributes.fetch(:workDoneProgress)
|
|
19
|
+
end
|
|
20
|
+
|
|
16
21
|
#
|
|
17
22
|
# The legend used by the server
|
|
18
23
|
#
|
|
@@ -1,16 +1,34 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class SemanticTokensParams
|
|
5
|
-
def initialize(partial_result_token: nil, text_document:)
|
|
4
|
+
class SemanticTokensParams
|
|
5
|
+
def initialize(work_done_token: nil, partial_result_token: nil, text_document:)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
8
|
+
@attributes[:workDoneToken] = work_done_token if work_done_token
|
|
8
9
|
@attributes[:partialResultToken] = partial_result_token if partial_result_token
|
|
9
10
|
@attributes[:textDocument] = text_document
|
|
10
11
|
|
|
11
12
|
@attributes.freeze
|
|
12
13
|
end
|
|
13
14
|
|
|
15
|
+
#
|
|
16
|
+
# An optional token that a server can use to report work done progress.
|
|
17
|
+
#
|
|
18
|
+
# @return [ProgressToken]
|
|
19
|
+
def work_done_token
|
|
20
|
+
attributes.fetch(:workDoneToken)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
#
|
|
24
|
+
# An optional token that a server can use to report partial results (e.g.
|
|
25
|
+
# streaming) to the client.
|
|
26
|
+
#
|
|
27
|
+
# @return [ProgressToken]
|
|
28
|
+
def partial_result_token
|
|
29
|
+
attributes.fetch(:partialResultToken)
|
|
30
|
+
end
|
|
31
|
+
|
|
14
32
|
#
|
|
15
33
|
# The text document.
|
|
16
34
|
#
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class SemanticTokensRangeParams
|
|
5
|
-
def initialize(partial_result_token: nil, text_document:, range:)
|
|
4
|
+
class SemanticTokensRangeParams
|
|
5
|
+
def initialize(work_done_token: nil, partial_result_token: nil, text_document:, range:)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
8
|
+
@attributes[:workDoneToken] = work_done_token if work_done_token
|
|
8
9
|
@attributes[:partialResultToken] = partial_result_token if partial_result_token
|
|
9
10
|
@attributes[:textDocument] = text_document
|
|
10
11
|
@attributes[:range] = range
|
|
@@ -12,6 +13,23 @@ module LanguageServer
|
|
|
12
13
|
@attributes.freeze
|
|
13
14
|
end
|
|
14
15
|
|
|
16
|
+
#
|
|
17
|
+
# An optional token that a server can use to report work done progress.
|
|
18
|
+
#
|
|
19
|
+
# @return [ProgressToken]
|
|
20
|
+
def work_done_token
|
|
21
|
+
attributes.fetch(:workDoneToken)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
#
|
|
25
|
+
# An optional token that a server can use to report partial results (e.g.
|
|
26
|
+
# streaming) to the client.
|
|
27
|
+
#
|
|
28
|
+
# @return [ProgressToken]
|
|
29
|
+
def partial_result_token
|
|
30
|
+
attributes.fetch(:partialResultToken)
|
|
31
|
+
end
|
|
32
|
+
|
|
15
33
|
#
|
|
16
34
|
# The text document.
|
|
17
35
|
#
|
|
@@ -1,15 +1,68 @@
|
|
|
1
1
|
module LanguageServer
|
|
2
2
|
module Protocol
|
|
3
3
|
module Interface
|
|
4
|
-
class SemanticTokensRegistrationOptions
|
|
5
|
-
def initialize(id: nil)
|
|
4
|
+
class SemanticTokensRegistrationOptions
|
|
5
|
+
def initialize(document_selector:, work_done_progress: nil, legend:, range: nil, full: nil, id: nil)
|
|
6
6
|
@attributes = {}
|
|
7
7
|
|
|
8
|
+
@attributes[:documentSelector] = document_selector
|
|
9
|
+
@attributes[:workDoneProgress] = work_done_progress if work_done_progress
|
|
10
|
+
@attributes[:legend] = legend
|
|
11
|
+
@attributes[:range] = range if range
|
|
12
|
+
@attributes[:full] = full if full
|
|
8
13
|
@attributes[:id] = id if id
|
|
9
14
|
|
|
10
15
|
@attributes.freeze
|
|
11
16
|
end
|
|
12
17
|
|
|
18
|
+
#
|
|
19
|
+
# A document selector to identify the scope of the registration. If set to
|
|
20
|
+
# null the document selector provided on the client side will be used.
|
|
21
|
+
#
|
|
22
|
+
# @return [DocumentSelector]
|
|
23
|
+
def document_selector
|
|
24
|
+
attributes.fetch(:documentSelector)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# @return [boolean]
|
|
28
|
+
def work_done_progress
|
|
29
|
+
attributes.fetch(:workDoneProgress)
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
#
|
|
33
|
+
# The legend used by the server
|
|
34
|
+
#
|
|
35
|
+
# @return [SemanticTokensLegend]
|
|
36
|
+
def legend
|
|
37
|
+
attributes.fetch(:legend)
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
#
|
|
41
|
+
# Server supports providing semantic tokens for a specific range
|
|
42
|
+
# of a document.
|
|
43
|
+
#
|
|
44
|
+
# @return [boolean | {}]
|
|
45
|
+
def range
|
|
46
|
+
attributes.fetch(:range)
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
#
|
|
50
|
+
# Server supports providing semantic tokens for a full document.
|
|
51
|
+
#
|
|
52
|
+
# @return [boolean | { delta?: boolean; }]
|
|
53
|
+
def full
|
|
54
|
+
attributes.fetch(:full)
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
#
|
|
58
|
+
# The id used to register the request. The id can be used to deregister
|
|
59
|
+
# the request again. See also Registration#id.
|
|
60
|
+
#
|
|
61
|
+
# @return [string]
|
|
62
|
+
def id
|
|
63
|
+
attributes.fetch(:id)
|
|
64
|
+
end
|
|
65
|
+
|
|
13
66
|
attr_reader :attributes
|
|
14
67
|
|
|
15
68
|
def to_hash
|