language_server-protocol 3.14.0.2 → 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 +3 -1
- data/lib/language_server/protocol/constant.rb +18 -0
- data/lib/language_server/protocol/constant/code_action_kind.rb +17 -11
- data/lib/language_server/protocol/constant/completion_item_tag.rb +16 -0
- data/lib/language_server/protocol/constant/completion_trigger_kind.rb +2 -1
- data/lib/language_server/protocol/constant/diagnostic_tag.rb +24 -0
- data/lib/language_server/protocol/constant/error_codes.rb +26 -3
- data/lib/language_server/protocol/constant/failure_handling_kind.rb +6 -5
- data/lib/language_server/protocol/constant/file_operation_pattern_kind.rb +20 -0
- data/lib/language_server/protocol/constant/initialize_error.rb +2 -1
- data/lib/language_server/protocol/constant/insert_text_mode.rb +30 -0
- data/lib/language_server/protocol/constant/prepare_support_default_behavior.rb +13 -0
- data/lib/language_server/protocol/constant/signature_help_trigger_kind.rb +24 -0
- data/lib/language_server/protocol/constant/symbol_tag.rb +15 -0
- data/lib/language_server/protocol/constant/text_document_save_reason.rb +2 -2
- data/lib/language_server/protocol/constant/text_document_sync_kind.rb +2 -1
- data/lib/language_server/protocol/constant/token_format.rb +9 -0
- data/lib/language_server/protocol/interface.rb +270 -6
- data/lib/language_server/protocol/interface/annotated_text_edit.rb +56 -0
- data/lib/language_server/protocol/interface/apply_workspace_edit_response.rb +24 -1
- data/lib/language_server/protocol/interface/call_hierarchy_client_capabilities.rb +36 -0
- data/lib/language_server/protocol/interface/call_hierarchy_incoming_call.rb +43 -0
- data/lib/language_server/protocol/interface/call_hierarchy_incoming_calls_params.rb +49 -0
- data/lib/language_server/protocol/interface/call_hierarchy_item.rb +100 -0
- data/lib/language_server/protocol/interface/call_hierarchy_options.rb +30 -0
- data/lib/language_server/protocol/interface/call_hierarchy_outgoing_call.rb +43 -0
- data/lib/language_server/protocol/interface/call_hierarchy_outgoing_calls_params.rb +49 -0
- data/lib/language_server/protocol/interface/call_hierarchy_prepare_params.rb +51 -0
- data/lib/language_server/protocol/interface/call_hierarchy_registration_options.rb +50 -0
- data/lib/language_server/protocol/interface/change_annotation.rb +57 -0
- data/lib/language_server/protocol/interface/client_capabilities.rb +20 -2
- data/lib/language_server/protocol/interface/code_action.rb +52 -4
- data/lib/language_server/protocol/interface/code_action_client_capabilities.rb +95 -0
- data/lib/language_server/protocol/interface/code_action_context.rb +8 -3
- data/lib/language_server/protocol/interface/code_action_options.rb +19 -6
- data/lib/language_server/protocol/interface/code_action_params.rb +20 -1
- data/lib/language_server/protocol/interface/code_action_registration_options.rb +39 -2
- data/lib/language_server/protocol/interface/code_description.rb +36 -0
- data/lib/language_server/protocol/interface/code_lens.rb +5 -3
- data/lib/language_server/protocol/interface/code_lens_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/code_lens_options.rb +7 -4
- data/lib/language_server/protocol/interface/code_lens_params.rb +20 -1
- data/lib/language_server/protocol/interface/code_lens_registration_options.rb +17 -2
- data/lib/language_server/protocol/interface/code_lens_workspace_client_capabilities.rb +39 -0
- data/lib/language_server/protocol/interface/color_presentation.rb +7 -6
- data/lib/language_server/protocol/interface/color_presentation_params.rb +20 -1
- data/lib/language_server/protocol/interface/completion_client_capabilities.rb +59 -0
- data/lib/language_server/protocol/interface/completion_context.rb +5 -3
- data/lib/language_server/protocol/interface/completion_item.rb +71 -29
- data/lib/language_server/protocol/interface/completion_list.rb +2 -2
- data/lib/language_server/protocol/interface/completion_options.rb +39 -9
- data/lib/language_server/protocol/interface/completion_params.rb +39 -3
- data/lib/language_server/protocol/interface/completion_registration_options.rb +41 -9
- data/lib/language_server/protocol/interface/create_file.rb +10 -1
- data/lib/language_server/protocol/interface/create_files_params.rb +37 -0
- data/lib/language_server/protocol/interface/declaration_client_capabilities.rb +44 -0
- data/lib/language_server/protocol/interface/declaration_options.rb +30 -0
- data/lib/language_server/protocol/interface/declaration_params.rb +61 -0
- data/lib/language_server/protocol/interface/declaration_registration_options.rb +50 -0
- data/lib/language_server/protocol/interface/definition_client_capabilities.rb +42 -0
- data/lib/language_server/protocol/interface/definition_options.rb +30 -0
- data/lib/language_server/protocol/interface/definition_params.rb +61 -0
- data/lib/language_server/protocol/interface/definition_registration_options.rb +40 -0
- data/lib/language_server/protocol/interface/delete_file.rb +10 -1
- data/lib/language_server/protocol/interface/delete_files_params.rb +37 -0
- data/lib/language_server/protocol/interface/diagnostic.rb +31 -2
- data/lib/language_server/protocol/interface/diagnostic_related_information.rb +3 -3
- data/lib/language_server/protocol/interface/did_change_configuration_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/did_change_text_document_params.rb +13 -3
- data/lib/language_server/protocol/interface/did_change_watched_files_client_capabilities.rb +35 -0
- data/lib/language_server/protocol/interface/did_change_watched_files_registration_options.rb +1 -1
- data/lib/language_server/protocol/interface/document_color_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/document_color_options.rb +30 -0
- data/lib/language_server/protocol/interface/document_color_params.rb +52 -0
- data/lib/language_server/protocol/interface/document_color_registration_options.rb +50 -0
- data/lib/language_server/protocol/interface/document_filter.rb +7 -3
- data/lib/language_server/protocol/interface/document_formatting_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/document_formatting_options.rb +30 -0
- data/lib/language_server/protocol/interface/document_formatting_params.rb +10 -1
- data/lib/language_server/protocol/interface/document_formatting_registration_options.rb +40 -0
- data/lib/language_server/protocol/interface/document_highlight.rb +1 -1
- data/lib/language_server/protocol/interface/document_highlight_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/document_highlight_options.rb +30 -0
- data/lib/language_server/protocol/interface/document_highlight_params.rb +61 -0
- data/lib/language_server/protocol/interface/document_highlight_registration_options.rb +40 -0
- data/lib/language_server/protocol/interface/document_link.rb +17 -3
- data/lib/language_server/protocol/interface/document_link_client_capabilities.rb +42 -0
- data/lib/language_server/protocol/interface/document_link_options.rb +7 -4
- data/lib/language_server/protocol/interface/document_link_params.rb +20 -1
- data/lib/language_server/protocol/interface/document_link_registration_options.rb +17 -2
- data/lib/language_server/protocol/interface/document_on_type_formatting_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/document_on_type_formatting_options.rb +0 -3
- data/lib/language_server/protocol/interface/document_on_type_formatting_params.rb +2 -2
- data/lib/language_server/protocol/interface/document_on_type_formatting_registration_options.rb +10 -1
- data/lib/language_server/protocol/interface/document_range_formatting_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/document_range_formatting_options.rb +30 -0
- data/lib/language_server/protocol/interface/document_range_formatting_params.rb +10 -1
- data/lib/language_server/protocol/interface/document_range_formatting_registration_options.rb +40 -0
- data/lib/language_server/protocol/interface/document_symbol.rb +108 -0
- data/lib/language_server/protocol/interface/document_symbol_client_capabilities.rb +73 -0
- data/lib/language_server/protocol/interface/document_symbol_options.rb +40 -0
- data/lib/language_server/protocol/interface/document_symbol_params.rb +20 -1
- data/lib/language_server/protocol/interface/document_symbol_registration_options.rb +50 -0
- data/lib/language_server/protocol/interface/execute_command_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/execute_command_options.rb +7 -4
- data/lib/language_server/protocol/interface/execute_command_params.rb +10 -1
- data/lib/language_server/protocol/interface/execute_command_registration_options.rb +7 -1
- data/lib/language_server/protocol/interface/file_create.rb +36 -0
- data/lib/language_server/protocol/interface/file_delete.rb +36 -0
- data/lib/language_server/protocol/interface/file_operation_filter.rb +46 -0
- data/lib/language_server/protocol/interface/file_operation_pattern.rb +67 -0
- data/lib/language_server/protocol/interface/file_operation_pattern_options.rb +36 -0
- data/lib/language_server/protocol/interface/file_operation_registration_options.rb +36 -0
- data/lib/language_server/protocol/interface/file_rename.rb +45 -0
- data/lib/language_server/protocol/interface/file_system_watcher.rb +7 -3
- data/lib/language_server/protocol/interface/folding_range.rb +17 -8
- data/lib/language_server/protocol/interface/folding_range_client_capabilities.rb +58 -0
- data/lib/language_server/protocol/interface/folding_range_options.rb +30 -0
- data/lib/language_server/protocol/interface/folding_range_params.rb +20 -1
- data/lib/language_server/protocol/interface/folding_range_registration_options.rb +50 -0
- data/lib/language_server/protocol/interface/formatting_options.rb +28 -1
- data/lib/language_server/protocol/interface/hover.rb +1 -1
- data/lib/language_server/protocol/interface/hover_client_capabilities.rb +44 -0
- data/lib/language_server/protocol/interface/hover_options.rb +30 -0
- data/lib/language_server/protocol/interface/hover_params.rb +51 -0
- data/lib/language_server/protocol/interface/hover_registration_options.rb +40 -0
- data/lib/language_server/protocol/interface/implementation_client_capabilities.rb +44 -0
- data/lib/language_server/protocol/interface/implementation_options.rb +30 -0
- data/lib/language_server/protocol/interface/implementation_params.rb +61 -0
- data/lib/language_server/protocol/interface/implementation_registration_options.rb +50 -0
- data/lib/language_server/protocol/interface/initialize_params.rb +38 -7
- data/lib/language_server/protocol/interface/initialize_result.rb +10 -1
- data/lib/language_server/protocol/interface/insert_replace_edit.rb +54 -0
- data/lib/language_server/protocol/interface/linked_editing_range_client_capabilities.rb +36 -0
- data/lib/language_server/protocol/interface/linked_editing_range_options.rb +30 -0
- data/lib/language_server/protocol/interface/linked_editing_range_params.rb +51 -0
- data/lib/language_server/protocol/interface/linked_editing_range_registration_options.rb +50 -0
- data/lib/language_server/protocol/interface/linked_editing_ranges.rb +45 -0
- data/lib/language_server/protocol/interface/location_link.rb +11 -6
- data/lib/language_server/protocol/interface/log_message_params.rb +1 -1
- data/lib/language_server/protocol/interface/log_trace_params.rb +43 -0
- data/lib/language_server/protocol/interface/markdown_client_capabilities.rb +45 -0
- data/lib/language_server/protocol/interface/markup_content.rb +9 -7
- data/lib/language_server/protocol/interface/moniker.rb +64 -0
- data/lib/language_server/protocol/interface/moniker_client_capabilities.rb +36 -0
- data/lib/language_server/protocol/interface/moniker_options.rb +30 -0
- data/lib/language_server/protocol/interface/moniker_params.rb +61 -0
- data/lib/language_server/protocol/interface/moniker_registration_options.rb +40 -0
- data/lib/language_server/protocol/interface/notification_message.rb +7 -2
- data/lib/language_server/protocol/interface/optional_versioned_text_document_identifier.rb +50 -0
- data/lib/language_server/protocol/interface/parameter_information.rb +7 -5
- data/lib/language_server/protocol/interface/partial_result_params.rb +34 -0
- data/lib/language_server/protocol/interface/position.rb +5 -5
- data/lib/language_server/protocol/interface/prepare_rename_params.rb +42 -0
- data/lib/language_server/protocol/interface/progress_params.rb +42 -0
- data/lib/language_server/protocol/interface/publish_diagnostics_client_capabilities.rb +73 -0
- data/lib/language_server/protocol/interface/publish_diagnostics_params.rb +11 -1
- data/lib/language_server/protocol/interface/reference_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/reference_options.rb +30 -0
- data/lib/language_server/protocol/interface/reference_params.rb +37 -2
- data/lib/language_server/protocol/interface/reference_registration_options.rb +40 -0
- data/lib/language_server/protocol/interface/regular_expressions_client_capabilities.rb +45 -0
- data/lib/language_server/protocol/interface/rename_client_capabilities.rb +69 -0
- data/lib/language_server/protocol/interface/rename_file.rb +10 -1
- data/lib/language_server/protocol/interface/rename_files_params.rb +38 -0
- data/lib/language_server/protocol/interface/rename_options.rb +7 -4
- data/lib/language_server/protocol/interface/rename_params.rb +12 -3
- data/lib/language_server/protocol/interface/rename_registration_options.rb +18 -3
- data/lib/language_server/protocol/interface/request_message.rb +7 -2
- data/lib/language_server/protocol/interface/response_error.rb +2 -2
- data/lib/language_server/protocol/interface/response_message.rb +10 -5
- data/lib/language_server/protocol/interface/save_options.rb +0 -3
- data/lib/language_server/protocol/interface/selection_range.rb +43 -0
- data/lib/language_server/protocol/interface/selection_range_client_capabilities.rb +36 -0
- data/lib/language_server/protocol/interface/selection_range_options.rb +30 -0
- data/lib/language_server/protocol/interface/selection_range_params.rb +61 -0
- data/lib/language_server/protocol/interface/selection_range_registration_options.rb +50 -0
- data/lib/language_server/protocol/interface/semantic_tokens.rb +45 -0
- data/lib/language_server/protocol/interface/semantic_tokens_client_capabilities.rb +97 -0
- data/lib/language_server/protocol/interface/semantic_tokens_delta.rb +40 -0
- data/lib/language_server/protocol/interface/semantic_tokens_delta_params.rb +62 -0
- data/lib/language_server/protocol/interface/{folding_range_provider_options.rb → semantic_tokens_delta_partial_result.rb} +8 -5
- data/lib/language_server/protocol/interface/semantic_tokens_edit.rb +51 -0
- data/lib/language_server/protocol/interface/semantic_tokens_legend.rb +42 -0
- data/lib/language_server/protocol/interface/semantic_tokens_options.rb +58 -0
- data/lib/language_server/protocol/interface/semantic_tokens_params.rb +52 -0
- data/lib/language_server/protocol/interface/{color_provider_options.rb → semantic_tokens_partial_result.rb} +8 -5
- data/lib/language_server/protocol/interface/semantic_tokens_range_params.rb +61 -0
- data/lib/language_server/protocol/interface/semantic_tokens_registration_options.rb +78 -0
- data/lib/language_server/protocol/interface/semantic_tokens_workspace_client_capabilities.rb +39 -0
- data/lib/language_server/protocol/interface/server_capabilities.rb +108 -60
- data/lib/language_server/protocol/interface/set_trace_params.rb +33 -0
- data/lib/language_server/protocol/interface/show_document_client_capabilities.rb +37 -0
- data/lib/language_server/protocol/interface/show_document_params.rb +71 -0
- data/lib/language_server/protocol/interface/show_document_result.rb +36 -0
- data/lib/language_server/protocol/interface/show_message_params.rb +1 -1
- data/lib/language_server/protocol/interface/show_message_request_client_capabilities.rb +36 -0
- data/lib/language_server/protocol/interface/show_message_request_params.rb +1 -1
- data/lib/language_server/protocol/interface/signature_help.rb +7 -4
- data/lib/language_server/protocol/interface/signature_help_client_capabilities.rb +55 -0
- data/lib/language_server/protocol/interface/signature_help_context.rb +74 -0
- data/lib/language_server/protocol/interface/signature_help_options.rb +20 -4
- data/lib/language_server/protocol/interface/signature_help_params.rb +62 -0
- data/lib/language_server/protocol/interface/signature_help_registration_options.rb +30 -2
- data/lib/language_server/protocol/interface/signature_information.rb +12 -1
- data/lib/language_server/protocol/interface/symbol_information.rb +11 -2
- data/lib/language_server/protocol/interface/text_document_change_registration_options.rb +11 -2
- data/lib/language_server/protocol/interface/text_document_client_capabilities.rb +123 -86
- data/lib/language_server/protocol/interface/text_document_content_change_event.rb +10 -6
- data/lib/language_server/protocol/interface/text_document_edit.rb +2 -2
- data/lib/language_server/protocol/interface/text_document_registration_options.rb +6 -3
- data/lib/language_server/protocol/interface/text_document_save_registration_options.rb +10 -1
- data/lib/language_server/protocol/interface/text_document_sync_client_capabilities.rb +62 -0
- data/lib/language_server/protocol/interface/text_document_sync_options.rb +14 -8
- data/lib/language_server/protocol/interface/type_definition_client_capabilities.rb +44 -0
- data/lib/language_server/protocol/interface/type_definition_options.rb +30 -0
- data/lib/language_server/protocol/interface/type_definition_params.rb +61 -0
- data/lib/language_server/protocol/interface/type_definition_registration_options.rb +50 -0
- data/lib/language_server/protocol/interface/versioned_text_document_identifier.rb +12 -8
- data/lib/language_server/protocol/interface/will_save_text_document_params.rb +1 -1
- data/lib/language_server/protocol/interface/work_done_progress_begin.rb +80 -0
- data/lib/language_server/protocol/interface/work_done_progress_cancel_params.rb +33 -0
- data/lib/language_server/protocol/interface/work_done_progress_create_params.rb +33 -0
- data/lib/language_server/protocol/interface/work_done_progress_end.rb +40 -0
- data/lib/language_server/protocol/interface/work_done_progress_options.rb +30 -0
- data/lib/language_server/protocol/interface/work_done_progress_params.rb +33 -0
- data/lib/language_server/protocol/interface/work_done_progress_report.rb +70 -0
- data/lib/language_server/protocol/interface/workspace_edit.rb +25 -8
- data/lib/language_server/protocol/interface/workspace_edit_client_capabilities.rb +75 -0
- data/lib/language_server/protocol/interface/workspace_folder.rb +2 -2
- data/lib/language_server/protocol/interface/workspace_folders_server_capabilities.rb +48 -0
- data/lib/language_server/protocol/interface/workspace_symbol_client_capabilities.rb +53 -0
- data/lib/language_server/protocol/interface/workspace_symbol_options.rb +30 -0
- data/lib/language_server/protocol/interface/workspace_symbol_params.rb +22 -2
- data/lib/language_server/protocol/interface/workspace_symbol_registration_options.rb +30 -0
- data/lib/language_server/protocol/transport/io/reader.rb +1 -1
- data/lib/language_server/protocol/version.rb +1 -1
- metadata +154 -15
- data/lib/language_server/protocol/interface/workspace_client_capabilities.rb +0 -104
@@ -6,11 +6,12 @@ module LanguageServer
|
|
6
6
|
# interfaces etc.
|
7
7
|
#
|
8
8
|
class SymbolInformation
|
9
|
-
def initialize(name:, kind:, deprecated: nil, location:, container_name: nil)
|
9
|
+
def initialize(name:, kind:, tags: nil, deprecated: nil, location:, container_name: nil)
|
10
10
|
@attributes = {}
|
11
11
|
|
12
12
|
@attributes[:name] = name
|
13
13
|
@attributes[:kind] = kind
|
14
|
+
@attributes[:tags] = tags if tags
|
14
15
|
@attributes[:deprecated] = deprecated if deprecated
|
15
16
|
@attributes[:location] = location
|
16
17
|
@attributes[:containerName] = container_name if container_name
|
@@ -29,11 +30,19 @@ module LanguageServer
|
|
29
30
|
#
|
30
31
|
# The kind of this symbol.
|
31
32
|
#
|
32
|
-
# @return [
|
33
|
+
# @return [any]
|
33
34
|
def kind
|
34
35
|
attributes.fetch(:kind)
|
35
36
|
end
|
36
37
|
|
38
|
+
#
|
39
|
+
# Tags for this symbol.
|
40
|
+
#
|
41
|
+
# @return [1[]]
|
42
|
+
def tags
|
43
|
+
attributes.fetch(:tags)
|
44
|
+
end
|
45
|
+
|
37
46
|
#
|
38
47
|
# Indicates if this symbol is deprecated.
|
39
48
|
#
|
@@ -4,7 +4,7 @@ module LanguageServer
|
|
4
4
|
#
|
5
5
|
# Describe options to be used when registering for text document change events.
|
6
6
|
#
|
7
|
-
class TextDocumentChangeRegistrationOptions
|
7
|
+
class TextDocumentChangeRegistrationOptions
|
8
8
|
def initialize(document_selector:, sync_kind:)
|
9
9
|
@attributes = {}
|
10
10
|
|
@@ -14,11 +14,20 @@ module LanguageServer
|
|
14
14
|
@attributes.freeze
|
15
15
|
end
|
16
16
|
|
17
|
+
#
|
18
|
+
# A document selector to identify the scope of the registration. If set to
|
19
|
+
# null the document selector provided on the client side will be used.
|
20
|
+
#
|
21
|
+
# @return [DocumentSelector]
|
22
|
+
def document_selector
|
23
|
+
attributes.fetch(:documentSelector)
|
24
|
+
end
|
25
|
+
|
17
26
|
#
|
18
27
|
# How documents are synced to the server. See TextDocumentSyncKind.Full
|
19
28
|
# and TextDocumentSyncKind.Incremental.
|
20
29
|
#
|
21
|
-
# @return [
|
30
|
+
# @return [TextDocumentSyncKind]
|
22
31
|
def sync_kind
|
23
32
|
attributes.fetch(:syncKind)
|
24
33
|
end
|
@@ -5,208 +5,245 @@ module LanguageServer
|
|
5
5
|
# Text document specific client capabilities.
|
6
6
|
#
|
7
7
|
class TextDocumentClientCapabilities
|
8
|
-
def initialize(synchronization: nil, completion: nil, hover: nil, signature_help: nil,
|
8
|
+
def initialize(synchronization: nil, completion: nil, hover: nil, signature_help: nil, declaration: nil, definition: nil, type_definition: nil, implementation: nil, references: nil, document_highlight: nil, document_symbol: nil, code_action: nil, code_lens: nil, document_link: nil, color_provider: nil, formatting: nil, range_formatting: nil, on_type_formatting: nil, rename: nil, publish_diagnostics: nil, folding_range: nil, selection_range: nil, linked_editing_range: nil, call_hierarchy: nil, semantic_tokens: nil, moniker: nil)
|
9
9
|
@attributes = {}
|
10
10
|
|
11
11
|
@attributes[:synchronization] = synchronization if synchronization
|
12
12
|
@attributes[:completion] = completion if completion
|
13
13
|
@attributes[:hover] = hover if hover
|
14
14
|
@attributes[:signatureHelp] = signature_help if signature_help
|
15
|
-
@attributes[:references] = references if references
|
16
|
-
@attributes[:documentHighlight] = document_highlight if document_highlight
|
17
|
-
@attributes[:documentSymbol] = document_symbol if document_symbol
|
18
|
-
@attributes[:formatting] = formatting if formatting
|
19
|
-
@attributes[:rangeFormatting] = range_formatting if range_formatting
|
20
|
-
@attributes[:onTypeFormatting] = on_type_formatting if on_type_formatting
|
21
15
|
@attributes[:declaration] = declaration if declaration
|
22
16
|
@attributes[:definition] = definition if definition
|
23
17
|
@attributes[:typeDefinition] = type_definition if type_definition
|
24
18
|
@attributes[:implementation] = implementation if implementation
|
19
|
+
@attributes[:references] = references if references
|
20
|
+
@attributes[:documentHighlight] = document_highlight if document_highlight
|
21
|
+
@attributes[:documentSymbol] = document_symbol if document_symbol
|
25
22
|
@attributes[:codeAction] = code_action if code_action
|
26
23
|
@attributes[:codeLens] = code_lens if code_lens
|
27
24
|
@attributes[:documentLink] = document_link if document_link
|
28
25
|
@attributes[:colorProvider] = color_provider if color_provider
|
26
|
+
@attributes[:formatting] = formatting if formatting
|
27
|
+
@attributes[:rangeFormatting] = range_formatting if range_formatting
|
28
|
+
@attributes[:onTypeFormatting] = on_type_formatting if on_type_formatting
|
29
29
|
@attributes[:rename] = rename if rename
|
30
30
|
@attributes[:publishDiagnostics] = publish_diagnostics if publish_diagnostics
|
31
31
|
@attributes[:foldingRange] = folding_range if folding_range
|
32
|
+
@attributes[:selectionRange] = selection_range if selection_range
|
33
|
+
@attributes[:linkedEditingRange] = linked_editing_range if linked_editing_range
|
34
|
+
@attributes[:callHierarchy] = call_hierarchy if call_hierarchy
|
35
|
+
@attributes[:semanticTokens] = semantic_tokens if semantic_tokens
|
36
|
+
@attributes[:moniker] = moniker if moniker
|
32
37
|
|
33
38
|
@attributes.freeze
|
34
39
|
end
|
35
40
|
|
36
|
-
# @return [
|
41
|
+
# @return [TextDocumentSyncClientCapabilities]
|
37
42
|
def synchronization
|
38
43
|
attributes.fetch(:synchronization)
|
39
44
|
end
|
40
45
|
|
41
46
|
#
|
42
|
-
# Capabilities specific to the `textDocument/completion`
|
47
|
+
# Capabilities specific to the `textDocument/completion` request.
|
43
48
|
#
|
44
|
-
# @return [
|
49
|
+
# @return [CompletionClientCapabilities]
|
45
50
|
def completion
|
46
51
|
attributes.fetch(:completion)
|
47
52
|
end
|
48
53
|
|
49
54
|
#
|
50
|
-
# Capabilities specific to the `textDocument/hover`
|
55
|
+
# Capabilities specific to the `textDocument/hover` request.
|
51
56
|
#
|
52
|
-
# @return [
|
57
|
+
# @return [HoverClientCapabilities]
|
53
58
|
def hover
|
54
59
|
attributes.fetch(:hover)
|
55
60
|
end
|
56
61
|
|
57
62
|
#
|
58
|
-
# Capabilities specific to the `textDocument/signatureHelp`
|
63
|
+
# Capabilities specific to the `textDocument/signatureHelp` request.
|
59
64
|
#
|
60
|
-
# @return [
|
65
|
+
# @return [SignatureHelpClientCapabilities]
|
61
66
|
def signature_help
|
62
67
|
attributes.fetch(:signatureHelp)
|
63
68
|
end
|
64
69
|
|
65
70
|
#
|
66
|
-
# Capabilities specific to the `textDocument/
|
71
|
+
# Capabilities specific to the `textDocument/declaration` request.
|
72
|
+
#
|
73
|
+
# @return [DeclarationClientCapabilities]
|
74
|
+
def declaration
|
75
|
+
attributes.fetch(:declaration)
|
76
|
+
end
|
77
|
+
|
78
|
+
#
|
79
|
+
# Capabilities specific to the `textDocument/definition` request.
|
80
|
+
#
|
81
|
+
# @return [DefinitionClientCapabilities]
|
82
|
+
def definition
|
83
|
+
attributes.fetch(:definition)
|
84
|
+
end
|
85
|
+
|
86
|
+
#
|
87
|
+
# Capabilities specific to the `textDocument/typeDefinition` request.
|
67
88
|
#
|
68
|
-
# @return [
|
89
|
+
# @return [TypeDefinitionClientCapabilities]
|
90
|
+
def type_definition
|
91
|
+
attributes.fetch(:typeDefinition)
|
92
|
+
end
|
93
|
+
|
94
|
+
#
|
95
|
+
# Capabilities specific to the `textDocument/implementation` request.
|
96
|
+
#
|
97
|
+
# @return [ImplementationClientCapabilities]
|
98
|
+
def implementation
|
99
|
+
attributes.fetch(:implementation)
|
100
|
+
end
|
101
|
+
|
102
|
+
#
|
103
|
+
# Capabilities specific to the `textDocument/references` request.
|
104
|
+
#
|
105
|
+
# @return [ReferenceClientCapabilities]
|
69
106
|
def references
|
70
107
|
attributes.fetch(:references)
|
71
108
|
end
|
72
109
|
|
73
110
|
#
|
74
|
-
# Capabilities specific to the `textDocument/documentHighlight`
|
111
|
+
# Capabilities specific to the `textDocument/documentHighlight` request.
|
75
112
|
#
|
76
|
-
# @return [
|
113
|
+
# @return [DocumentHighlightClientCapabilities]
|
77
114
|
def document_highlight
|
78
115
|
attributes.fetch(:documentHighlight)
|
79
116
|
end
|
80
117
|
|
81
118
|
#
|
82
|
-
# Capabilities specific to the `textDocument/documentSymbol`
|
119
|
+
# Capabilities specific to the `textDocument/documentSymbol` request.
|
83
120
|
#
|
84
|
-
# @return [
|
121
|
+
# @return [DocumentSymbolClientCapabilities]
|
85
122
|
def document_symbol
|
86
123
|
attributes.fetch(:documentSymbol)
|
87
124
|
end
|
88
125
|
|
89
126
|
#
|
90
|
-
# Capabilities specific to the `textDocument/
|
127
|
+
# Capabilities specific to the `textDocument/codeAction` request.
|
91
128
|
#
|
92
|
-
# @return [
|
93
|
-
def
|
94
|
-
attributes.fetch(:
|
129
|
+
# @return [CodeActionClientCapabilities]
|
130
|
+
def code_action
|
131
|
+
attributes.fetch(:codeAction)
|
95
132
|
end
|
96
133
|
|
97
134
|
#
|
98
|
-
# Capabilities specific to the `textDocument/
|
135
|
+
# Capabilities specific to the `textDocument/codeLens` request.
|
99
136
|
#
|
100
|
-
# @return [
|
101
|
-
def
|
102
|
-
attributes.fetch(:
|
137
|
+
# @return [CodeLensClientCapabilities]
|
138
|
+
def code_lens
|
139
|
+
attributes.fetch(:codeLens)
|
103
140
|
end
|
104
141
|
|
105
142
|
#
|
106
|
-
# Capabilities specific to the `textDocument/
|
143
|
+
# Capabilities specific to the `textDocument/documentLink` request.
|
107
144
|
#
|
108
|
-
# @return [
|
109
|
-
def
|
110
|
-
attributes.fetch(:
|
145
|
+
# @return [DocumentLinkClientCapabilities]
|
146
|
+
def document_link
|
147
|
+
attributes.fetch(:documentLink)
|
111
148
|
end
|
112
149
|
|
113
150
|
#
|
114
|
-
# Capabilities specific to the `textDocument/
|
151
|
+
# Capabilities specific to the `textDocument/documentColor` and the
|
152
|
+
# `textDocument/colorPresentation` request.
|
115
153
|
#
|
116
|
-
# @return [
|
117
|
-
def
|
118
|
-
attributes.fetch(:
|
154
|
+
# @return [DocumentColorClientCapabilities]
|
155
|
+
def color_provider
|
156
|
+
attributes.fetch(:colorProvider)
|
119
157
|
end
|
120
158
|
|
121
159
|
#
|
122
|
-
# Capabilities specific to the `textDocument/
|
160
|
+
# Capabilities specific to the `textDocument/formatting` request.
|
123
161
|
#
|
124
|
-
#
|
125
|
-
|
126
|
-
|
127
|
-
def definition
|
128
|
-
attributes.fetch(:definition)
|
162
|
+
# @return [DocumentFormattingClientCapabilities]
|
163
|
+
def formatting
|
164
|
+
attributes.fetch(:formatting)
|
129
165
|
end
|
130
166
|
|
131
167
|
#
|
132
|
-
# Capabilities specific to the `textDocument/
|
133
|
-
#
|
134
|
-
# Since 3.6.0
|
168
|
+
# Capabilities specific to the `textDocument/rangeFormatting` request.
|
135
169
|
#
|
136
|
-
# @return [
|
137
|
-
def
|
138
|
-
attributes.fetch(:
|
170
|
+
# @return [DocumentRangeFormattingClientCapabilities]
|
171
|
+
def range_formatting
|
172
|
+
attributes.fetch(:rangeFormatting)
|
139
173
|
end
|
140
174
|
|
141
175
|
#
|
142
|
-
#
|
143
|
-
#
|
144
|
-
# Since 3.6.0
|
176
|
+
# request.
|
177
|
+
# Capabilities specific to the `textDocument/onTypeFormatting` request.
|
145
178
|
#
|
146
|
-
# @return [
|
147
|
-
def
|
148
|
-
attributes.fetch(:
|
179
|
+
# @return [DocumentOnTypeFormattingClientCapabilities]
|
180
|
+
def on_type_formatting
|
181
|
+
attributes.fetch(:onTypeFormatting)
|
149
182
|
end
|
150
183
|
|
151
184
|
#
|
152
|
-
# Capabilities specific to the `textDocument/
|
185
|
+
# Capabilities specific to the `textDocument/rename` request.
|
153
186
|
#
|
154
|
-
# @return [
|
155
|
-
def
|
156
|
-
attributes.fetch(:
|
187
|
+
# @return [RenameClientCapabilities]
|
188
|
+
def rename
|
189
|
+
attributes.fetch(:rename)
|
157
190
|
end
|
158
191
|
|
159
192
|
#
|
160
|
-
# Capabilities specific to the `textDocument/
|
193
|
+
# Capabilities specific to the `textDocument/publishDiagnostics`
|
194
|
+
# notification.
|
161
195
|
#
|
162
|
-
# @return [
|
163
|
-
def
|
164
|
-
attributes.fetch(:
|
196
|
+
# @return [PublishDiagnosticsClientCapabilities]
|
197
|
+
def publish_diagnostics
|
198
|
+
attributes.fetch(:publishDiagnostics)
|
165
199
|
end
|
166
200
|
|
167
201
|
#
|
168
|
-
# Capabilities specific to the `textDocument/
|
202
|
+
# Capabilities specific to the `textDocument/foldingRange` request.
|
169
203
|
#
|
170
|
-
# @return [
|
171
|
-
def
|
172
|
-
attributes.fetch(:
|
204
|
+
# @return [FoldingRangeClientCapabilities]
|
205
|
+
def folding_range
|
206
|
+
attributes.fetch(:foldingRange)
|
173
207
|
end
|
174
208
|
|
175
209
|
#
|
176
|
-
# Capabilities specific to the `textDocument/
|
177
|
-
# `textDocument/colorPresentation` request.
|
178
|
-
#
|
179
|
-
# Since 3.6.0
|
210
|
+
# Capabilities specific to the `textDocument/selectionRange` request.
|
180
211
|
#
|
181
|
-
# @return [
|
182
|
-
def
|
183
|
-
attributes.fetch(:
|
212
|
+
# @return [SelectionRangeClientCapabilities]
|
213
|
+
def selection_range
|
214
|
+
attributes.fetch(:selectionRange)
|
184
215
|
end
|
185
216
|
|
186
217
|
#
|
187
|
-
# Capabilities specific to the `textDocument/
|
218
|
+
# Capabilities specific to the `textDocument/linkedEditingRange` request.
|
188
219
|
#
|
189
|
-
# @return [
|
190
|
-
def
|
191
|
-
attributes.fetch(:
|
220
|
+
# @return [LinkedEditingRangeClientCapabilities]
|
221
|
+
def linked_editing_range
|
222
|
+
attributes.fetch(:linkedEditingRange)
|
192
223
|
end
|
193
224
|
|
194
225
|
#
|
195
|
-
# Capabilities specific to
|
226
|
+
# Capabilities specific to the various call hierarchy requests.
|
196
227
|
#
|
197
|
-
# @return [
|
198
|
-
def
|
199
|
-
attributes.fetch(:
|
228
|
+
# @return [CallHierarchyClientCapabilities]
|
229
|
+
def call_hierarchy
|
230
|
+
attributes.fetch(:callHierarchy)
|
200
231
|
end
|
201
232
|
|
202
233
|
#
|
203
|
-
# Capabilities specific to
|
234
|
+
# Capabilities specific to the various semantic token requests.
|
204
235
|
#
|
205
|
-
#
|
236
|
+
# @return [SemanticTokensClientCapabilities]
|
237
|
+
def semantic_tokens
|
238
|
+
attributes.fetch(:semanticTokens)
|
239
|
+
end
|
240
|
+
|
206
241
|
#
|
207
|
-
#
|
208
|
-
|
209
|
-
|
242
|
+
# Capabilities specific to the `textDocument/moniker` request.
|
243
|
+
#
|
244
|
+
# @return [MonikerClientCapabilities]
|
245
|
+
def moniker
|
246
|
+
attributes.fetch(:moniker)
|
210
247
|
end
|
211
248
|
|
212
249
|
attr_reader :attributes
|
@@ -2,8 +2,8 @@ module LanguageServer
|
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
4
|
#
|
5
|
-
# An event describing a change to a text document. If range and rangeLength are
|
6
|
-
# the new text is considered to be the full content of the document.
|
5
|
+
# An event describing a change to a text document. If range and rangeLength are
|
6
|
+
# omitted the new text is considered to be the full content of the document.
|
7
7
|
#
|
8
8
|
class TextDocumentContentChangeEvent
|
9
9
|
def initialize(range: nil, range_length: nil, text:)
|
@@ -19,21 +19,25 @@ module LanguageServer
|
|
19
19
|
#
|
20
20
|
# The range of the document that changed.
|
21
21
|
#
|
22
|
-
# @return [Range]
|
22
|
+
# @return [Range, nil]
|
23
23
|
def range
|
24
24
|
attributes.fetch(:range)
|
25
25
|
end
|
26
26
|
|
27
27
|
#
|
28
|
-
# The length of the range that got replaced.
|
28
|
+
# The optional length of the range that got replaced.
|
29
29
|
#
|
30
|
-
# @return [number]
|
30
|
+
# @return [number, nil]
|
31
31
|
def range_length
|
32
32
|
attributes.fetch(:rangeLength)
|
33
33
|
end
|
34
34
|
|
35
35
|
#
|
36
|
-
# The new text
|
36
|
+
# The new text for the provided range.
|
37
|
+
#
|
38
|
+
# --- OR ---
|
39
|
+
#
|
40
|
+
# The new text of the whole document.
|
37
41
|
#
|
38
42
|
# @return [string]
|
39
43
|
def text
|
@@ -14,7 +14,7 @@ module LanguageServer
|
|
14
14
|
#
|
15
15
|
# The text document to change.
|
16
16
|
#
|
17
|
-
# @return [
|
17
|
+
# @return [OptionalVersionedTextDocumentIdentifier]
|
18
18
|
def text_document
|
19
19
|
attributes.fetch(:textDocument)
|
20
20
|
end
|
@@ -22,7 +22,7 @@ module LanguageServer
|
|
22
22
|
#
|
23
23
|
# The edits to be applied.
|
24
24
|
#
|
25
|
-
# @return [TextEdit[]]
|
25
|
+
# @return [(TextEdit | AnnotatedTextEdit)[]]
|
26
26
|
def edits
|
27
27
|
attributes.fetch(:edits)
|
28
28
|
end
|