language_server-protocol 3.7.0.0 → 3.15.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +9 -1
- data/lib/language_server/protocol/constant.rb +14 -0
- data/lib/language_server/protocol/constant/code_action_kind.rb +75 -0
- data/lib/language_server/protocol/constant/completion_item_tag.rb +16 -0
- data/lib/language_server/protocol/constant/diagnostic_tag.rb +24 -0
- data/lib/language_server/protocol/constant/error_codes.rb +1 -0
- data/lib/language_server/protocol/constant/failure_handling_kind.rb +29 -0
- data/lib/language_server/protocol/constant/resource_operation_kind.rb +23 -0
- data/lib/language_server/protocol/constant/signature_help_trigger_kind.rb +23 -0
- data/lib/language_server/protocol/constant/text_document_sync_kind.rb +1 -0
- data/lib/language_server/protocol/interface.rb +186 -6
- data/lib/language_server/protocol/interface/apply_workspace_edit_response.rb +13 -1
- data/lib/language_server/protocol/interface/client_capabilities.rb +11 -2
- data/lib/language_server/protocol/interface/code_action.rb +92 -0
- data/lib/language_server/protocol/interface/code_action_client_capabilities.rb +52 -0
- data/lib/language_server/protocol/interface/code_action_context.rb +18 -2
- data/lib/language_server/protocol/interface/code_action_options.rb +37 -0
- data/lib/language_server/protocol/interface/code_action_params.rb +3 -2
- data/lib/language_server/protocol/interface/code_action_registration_options.rb +26 -0
- data/lib/language_server/protocol/interface/code_lens_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/code_lens_options.rb +3 -5
- data/lib/language_server/protocol/interface/code_lens_params.rb +3 -2
- data/lib/language_server/protocol/interface/code_lens_registration_options.rb +3 -10
- data/lib/language_server/protocol/interface/color_presentation_params.rb +3 -2
- data/lib/language_server/protocol/interface/completion_client_capabilities.rb +59 -0
- data/lib/language_server/protocol/interface/completion_item.rb +29 -5
- data/lib/language_server/protocol/interface/completion_options.rb +33 -11
- data/lib/language_server/protocol/interface/completion_params.rb +4 -3
- data/lib/language_server/protocol/interface/completion_registration_options.rb +4 -26
- data/lib/language_server/protocol/interface/create_file.rb +54 -0
- data/lib/language_server/protocol/interface/create_file_options.rb +45 -0
- data/lib/language_server/protocol/interface/declaration_client_capabilities.rb +44 -0
- data/lib/language_server/protocol/interface/declaration_options.rb +25 -0
- data/lib/language_server/protocol/interface/declaration_params.rb +25 -0
- data/lib/language_server/protocol/interface/{color_provider_options.rb → declaration_registration_options.rb} +3 -5
- data/lib/language_server/protocol/interface/definition_client_capabilities.rb +42 -0
- data/lib/language_server/protocol/interface/definition_options.rb +25 -0
- data/lib/language_server/protocol/interface/definition_params.rb +25 -0
- data/lib/language_server/protocol/interface/definition_registration_options.rb +25 -0
- data/lib/language_server/protocol/interface/delete_file.rb +54 -0
- data/lib/language_server/protocol/interface/delete_file_options.rb +45 -0
- data/lib/language_server/protocol/interface/diagnostic.rb +11 -2
- data/lib/language_server/protocol/interface/diagnostic_related_information.rb +1 -1
- 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 +10 -2
- 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 +25 -0
- data/lib/language_server/protocol/interface/document_color_params.rb +34 -0
- data/lib/language_server/protocol/interface/document_color_registration_options.rb +25 -0
- data/lib/language_server/protocol/interface/document_filter.rb +8 -0
- data/lib/language_server/protocol/interface/document_formatting_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/document_formatting_options.rb +25 -0
- data/lib/language_server/protocol/interface/document_formatting_params.rb +3 -2
- data/lib/language_server/protocol/interface/document_formatting_registration_options.rb +25 -0
- data/lib/language_server/protocol/interface/document_highlight_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/document_highlight_options.rb +25 -0
- data/lib/language_server/protocol/interface/document_highlight_params.rb +25 -0
- data/lib/language_server/protocol/interface/document_highlight_registration_options.rb +25 -0
- data/lib/language_server/protocol/interface/document_link.rb +14 -1
- data/lib/language_server/protocol/interface/document_link_client_capabilities.rb +42 -0
- data/lib/language_server/protocol/interface/document_link_options.rb +3 -5
- data/lib/language_server/protocol/interface/document_link_params.rb +3 -2
- data/lib/language_server/protocol/interface/document_link_registration_options.rb +3 -10
- 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 +1 -17
- data/lib/language_server/protocol/interface/document_on_type_formatting_registration_options.rb +2 -18
- 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 +25 -0
- data/lib/language_server/protocol/interface/document_range_formatting_params.rb +3 -2
- data/lib/language_server/protocol/interface/document_range_formatting_registration_options.rb +25 -0
- data/lib/language_server/protocol/interface/document_symbol.rb +96 -0
- data/lib/language_server/protocol/interface/document_symbol_client_capabilities.rb +51 -0
- data/lib/language_server/protocol/interface/document_symbol_options.rb +25 -0
- data/lib/language_server/protocol/interface/document_symbol_params.rb +3 -2
- data/lib/language_server/protocol/interface/document_symbol_registration_options.rb +25 -0
- data/lib/language_server/protocol/interface/execute_command_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/execute_command_options.rb +3 -5
- data/lib/language_server/protocol/interface/execute_command_params.rb +3 -2
- data/lib/language_server/protocol/interface/execute_command_registration_options.rb +3 -10
- data/lib/language_server/protocol/interface/file_system_watcher.rb +9 -1
- data/lib/language_server/protocol/interface/folding_range.rb +74 -0
- data/lib/language_server/protocol/interface/folding_range_client_capabilities.rb +55 -0
- data/lib/language_server/protocol/interface/folding_range_options.rb +25 -0
- data/lib/language_server/protocol/interface/folding_range_params.rb +34 -0
- data/lib/language_server/protocol/interface/folding_range_registration_options.rb +25 -0
- data/lib/language_server/protocol/interface/formatting_options.rb +28 -1
- data/lib/language_server/protocol/interface/hover_client_capabilities.rb +43 -0
- data/lib/language_server/protocol/interface/hover_options.rb +25 -0
- data/lib/language_server/protocol/interface/hover_params.rb +25 -0
- data/lib/language_server/protocol/interface/hover_registration_options.rb +25 -0
- data/lib/language_server/protocol/interface/implementation_client_capabilities.rb +44 -0
- data/lib/language_server/protocol/interface/implementation_options.rb +25 -0
- data/lib/language_server/protocol/interface/implementation_params.rb +25 -0
- data/lib/language_server/protocol/interface/implementation_registration_options.rb +25 -0
- data/lib/language_server/protocol/interface/initialize_params.rb +12 -4
- data/lib/language_server/protocol/interface/initialize_result.rb +10 -1
- data/lib/language_server/protocol/interface/location_link.rb +66 -0
- data/lib/language_server/protocol/interface/markup_content.rb +1 -1
- data/lib/language_server/protocol/interface/notification_message.rb +2 -1
- data/lib/language_server/protocol/interface/parameter_information.rb +9 -3
- data/lib/language_server/protocol/interface/partial_result_params.rb +34 -0
- data/lib/language_server/protocol/interface/prepare_rename_params.rb +26 -0
- data/lib/language_server/protocol/interface/progress_params.rb +42 -0
- data/lib/language_server/protocol/interface/publish_diagnostics_client_capabilities.rb +53 -0
- data/lib/language_server/protocol/interface/publish_diagnostics_params.rb +10 -1
- data/lib/language_server/protocol/interface/reference_client_capabilities.rb +33 -0
- data/lib/language_server/protocol/interface/reference_options.rb +25 -0
- data/lib/language_server/protocol/interface/reference_params.rb +3 -2
- data/lib/language_server/protocol/interface/reference_registration_options.rb +25 -0
- data/lib/language_server/protocol/interface/rename_client_capabilities.rb +43 -0
- data/lib/language_server/protocol/interface/rename_file.rb +63 -0
- data/lib/language_server/protocol/interface/rename_file_options.rb +45 -0
- data/lib/language_server/protocol/interface/rename_options.rb +34 -0
- data/lib/language_server/protocol/interface/rename_params.rb +3 -20
- data/lib/language_server/protocol/interface/rename_registration_options.rb +26 -0
- data/lib/language_server/protocol/interface/request_message.rb +2 -1
- data/lib/language_server/protocol/interface/response_error.rb +2 -2
- data/lib/language_server/protocol/interface/response_message.rb +5 -4
- data/lib/language_server/protocol/interface/save_options.rb +0 -3
- data/lib/language_server/protocol/interface/selection_range.rb +42 -0
- data/lib/language_server/protocol/interface/selection_range_client_capabilities.rb +35 -0
- data/lib/language_server/protocol/interface/selection_range_options.rb +25 -0
- data/lib/language_server/protocol/interface/selection_range_params.rb +43 -0
- data/lib/language_server/protocol/interface/selection_range_registration_options.rb +25 -0
- data/lib/language_server/protocol/interface/server_capabilities.rb +78 -53
- data/lib/language_server/protocol/interface/signature_help.rb +8 -5
- data/lib/language_server/protocol/interface/signature_help_client_capabilities.rb +55 -0
- data/lib/language_server/protocol/interface/signature_help_context.rb +71 -0
- data/lib/language_server/protocol/interface/signature_help_options.rb +15 -5
- data/lib/language_server/protocol/interface/signature_help_params.rb +35 -0
- data/lib/language_server/protocol/interface/signature_help_registration_options.rb +4 -11
- data/lib/language_server/protocol/interface/symbol_information.rb +1 -1
- data/lib/language_server/protocol/interface/text_document_change_registration_options.rb +2 -1
- data/lib/language_server/protocol/interface/text_document_client_capabilities.rb +97 -75
- data/lib/language_server/protocol/interface/text_document_registration_options.rb +3 -0
- data/lib/language_server/protocol/interface/text_document_save_registration_options.rb +1 -0
- 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 -6
- data/lib/language_server/protocol/interface/type_definition_client_capabilities.rb +44 -0
- data/lib/language_server/protocol/interface/type_definition_options.rb +25 -0
- data/lib/language_server/protocol/interface/type_definition_params.rb +25 -0
- data/lib/language_server/protocol/interface/type_definition_registration_options.rb +25 -0
- data/lib/language_server/protocol/interface/versioned_text_document_identifier.rb +5 -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 +11 -5
- data/lib/language_server/protocol/interface/workspace_edit_client_capabilities.rb +53 -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 +42 -0
- data/lib/language_server/protocol/interface/workspace_symbol_options.rb +25 -0
- data/lib/language_server/protocol/interface/workspace_symbol_params.rb +5 -3
- data/lib/language_server/protocol/interface/workspace_symbol_registration_options.rb +25 -0
- data/lib/language_server/protocol/transport.rb +1 -0
- data/lib/language_server/protocol/transport/io.rb +2 -0
- data/lib/language_server/protocol/transport/io/reader.rb +47 -0
- data/lib/language_server/protocol/transport/io/writer.rb +34 -0
- data/lib/language_server/protocol/transport/stdio/reader.rb +3 -29
- data/lib/language_server/protocol/transport/stdio/writer.rb +3 -18
- data/lib/language_server/protocol/version.rb +1 -1
- metadata +105 -29
- data/.gitignore +0 -10
- data/.travis.yml +0 -5
- data/CHANGELOG.md +0 -13
- data/CODE_OF_CONDUCT.md +0 -74
- data/Dockerfile-node.development +0 -6
- data/Dockerfile.development +0 -24
- data/Gemfile +0 -6
- data/Rakefile +0 -10
- data/bin/console +0 -14
- data/bin/generate_files +0 -5
- data/bin/m +0 -17
- data/bin/setup +0 -6
- data/circle.yml +0 -27
- data/docker-compose.ci.yml +0 -14
- data/docker-compose.override.yml +0 -15
- data/docker-compose.yml +0 -31
- data/language_server-protocol.gemspec +0 -31
- data/lib/language_server/protocol/interface/text_document_content_change_event.rb +0 -55
- data/lib/language_server/protocol/interface/workspace_client_capabilites.rb +0 -82
- data/lib/language_server/protocol/interface/workspace_client_capabilities.rb +0 -104
- data/package.json +0 -10
- data/scripts/generateFiles.ts +0 -252
- data/yarn.lock +0 -293
@@ -2,14 +2,16 @@ module LanguageServer
|
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
4
|
class CompletionItem
|
5
|
-
def initialize(label:, kind: nil, detail: nil, documentation: nil, deprecated: nil, sort_text: nil, filter_text: nil, insert_text: nil, insert_text_format: nil, text_edit: nil, additional_text_edits: nil, commit_characters: nil, command: nil, data: nil)
|
5
|
+
def initialize(label:, kind: nil, tags: nil, detail: nil, documentation: nil, deprecated: nil, preselect: nil, sort_text: nil, filter_text: nil, insert_text: nil, insert_text_format: nil, text_edit: nil, additional_text_edits: nil, commit_characters: nil, command: nil, data: nil)
|
6
6
|
@attributes = {}
|
7
7
|
|
8
8
|
@attributes[:label] = label
|
9
9
|
@attributes[:kind] = kind if kind
|
10
|
+
@attributes[:tags] = tags if tags
|
10
11
|
@attributes[:detail] = detail if detail
|
11
12
|
@attributes[:documentation] = documentation if documentation
|
12
13
|
@attributes[:deprecated] = deprecated if deprecated
|
14
|
+
@attributes[:preselect] = preselect if preselect
|
13
15
|
@attributes[:sortText] = sort_text if sort_text
|
14
16
|
@attributes[:filterText] = filter_text if filter_text
|
15
17
|
@attributes[:insertText] = insert_text if insert_text
|
@@ -35,13 +37,22 @@ module LanguageServer
|
|
35
37
|
|
36
38
|
#
|
37
39
|
# The kind of this completion item. Based of the kind
|
38
|
-
# an icon is chosen by the editor.
|
40
|
+
# an icon is chosen by the editor. The standardized set
|
41
|
+
# of available values is defined in `CompletionItemKind`.
|
39
42
|
#
|
40
43
|
# @return [number]
|
41
44
|
def kind
|
42
45
|
attributes.fetch(:kind)
|
43
46
|
end
|
44
47
|
|
48
|
+
#
|
49
|
+
# Tags for this completion item.
|
50
|
+
#
|
51
|
+
# @return [1[]]
|
52
|
+
def tags
|
53
|
+
attributes.fetch(:tags)
|
54
|
+
end
|
55
|
+
|
45
56
|
#
|
46
57
|
# A human-readable string with additional information
|
47
58
|
# about this item, like type or symbol information.
|
@@ -67,6 +78,18 @@ module LanguageServer
|
|
67
78
|
attributes.fetch(:deprecated)
|
68
79
|
end
|
69
80
|
|
81
|
+
#
|
82
|
+
# Select this item when showing.
|
83
|
+
#
|
84
|
+
# *Note* that only one completion item can be selected and that the
|
85
|
+
# tool / client decides which item that is. The rule is that the *first*
|
86
|
+
# item of those that match best is selected.
|
87
|
+
#
|
88
|
+
# @return [boolean]
|
89
|
+
def preselect
|
90
|
+
attributes.fetch(:preselect)
|
91
|
+
end
|
92
|
+
|
70
93
|
#
|
71
94
|
# A string that should be used when comparing this item
|
72
95
|
# with other items. When `falsy` the label is used.
|
@@ -103,9 +126,10 @@ module LanguageServer
|
|
103
126
|
|
104
127
|
#
|
105
128
|
# The format of the insert text. The format applies to both the `insertText` property
|
106
|
-
# and the `newText` property of a provided `textEdit`.
|
129
|
+
# and the `newText` property of a provided `textEdit`. If omitted defaults to
|
130
|
+
# `InsertTextFormat.PlainText`.
|
107
131
|
#
|
108
|
-
# @return [
|
132
|
+
# @return [DiagnosticTag]
|
109
133
|
def insert_text_format
|
110
134
|
attributes.fetch(:insertTextFormat)
|
111
135
|
end
|
@@ -157,7 +181,7 @@ module LanguageServer
|
|
157
181
|
end
|
158
182
|
|
159
183
|
#
|
160
|
-
#
|
184
|
+
# A data entry field that is preserved on a completion item between
|
161
185
|
# a completion and a completion resolve request.
|
162
186
|
#
|
163
187
|
# @return [any]
|
@@ -4,31 +4,53 @@ module LanguageServer
|
|
4
4
|
#
|
5
5
|
# Completion options.
|
6
6
|
#
|
7
|
-
class CompletionOptions
|
8
|
-
def initialize(
|
7
|
+
class CompletionOptions < WorkDoneProgressOptions
|
8
|
+
def initialize(work_done_progress: nil, trigger_characters: nil, all_commit_characters: nil, resolve_provider: nil)
|
9
9
|
@attributes = {}
|
10
10
|
|
11
|
-
@attributes[:
|
11
|
+
@attributes[:workDoneProgress] = work_done_progress if work_done_progress
|
12
12
|
@attributes[:triggerCharacters] = trigger_characters if trigger_characters
|
13
|
+
@attributes[:allCommitCharacters] = all_commit_characters if all_commit_characters
|
14
|
+
@attributes[:resolveProvider] = resolve_provider if resolve_provider
|
13
15
|
|
14
16
|
@attributes.freeze
|
15
17
|
end
|
16
18
|
|
17
19
|
#
|
18
|
-
#
|
19
|
-
#
|
20
|
+
# Most tools trigger completion request automatically without explicitly requesting
|
21
|
+
# it using a keyboard shortcut (e.g. Ctrl+Space). Typically they do so when the user
|
22
|
+
# starts to type an identifier. For example if the user types `c` in a JavaScript file
|
23
|
+
# code complete will automatically pop up present `console` besides others as a
|
24
|
+
# completion item. Characters that make up identifiers don't need to be listed here.
|
20
25
|
#
|
21
|
-
#
|
22
|
-
|
23
|
-
|
26
|
+
# If code complete should automatically be trigger on characters not being valid inside
|
27
|
+
# an identifier (for example `.` in JavaScript) list them in `triggerCharacters`.
|
28
|
+
#
|
29
|
+
# @return [string[]]
|
30
|
+
def trigger_characters
|
31
|
+
attributes.fetch(:triggerCharacters)
|
24
32
|
end
|
25
33
|
|
26
34
|
#
|
27
|
-
# The characters that
|
35
|
+
# The list of all possible characters that commit a completion. This field can be used
|
36
|
+
# if clients don't support individual commit characters per completion item. See
|
37
|
+
# `ClientCapabilities.textDocument.completion.completionItem.commitCharactersSupport`.
|
38
|
+
#
|
39
|
+
# If a server provides both `allCommitCharacters` and commit characters on an individual
|
40
|
+
# completion item the ones on the completion item win.
|
28
41
|
#
|
29
42
|
# @return [string[]]
|
30
|
-
def
|
31
|
-
attributes.fetch(:
|
43
|
+
def all_commit_characters
|
44
|
+
attributes.fetch(:allCommitCharacters)
|
45
|
+
end
|
46
|
+
|
47
|
+
#
|
48
|
+
# The server provides support to resolve additional
|
49
|
+
# information for a completion item.
|
50
|
+
#
|
51
|
+
# @return [boolean]
|
52
|
+
def resolve_provider
|
53
|
+
attributes.fetch(:resolveProvider)
|
32
54
|
end
|
33
55
|
|
34
56
|
attr_reader :attributes
|
@@ -1,17 +1,18 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
-
class CompletionParams <
|
5
|
-
def initialize(
|
4
|
+
class CompletionParams < PartialResultParams
|
5
|
+
def initialize(partial_result_token: nil, context: nil)
|
6
6
|
@attributes = {}
|
7
7
|
|
8
|
+
@attributes[:partialResultToken] = partial_result_token if partial_result_token
|
8
9
|
@attributes[:context] = context if context
|
9
10
|
|
10
11
|
@attributes.freeze
|
11
12
|
end
|
12
13
|
|
13
14
|
#
|
14
|
-
# The completion context. This is only available
|
15
|
+
# The completion context. This is only available if the client specifies
|
15
16
|
# to send this using `ClientCapabilities.textDocument.completion.contextSupport === true`
|
16
17
|
#
|
17
18
|
# @return [CompletionContext]
|
@@ -1,40 +1,18 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
-
class CompletionRegistrationOptions <
|
5
|
-
def initialize(
|
4
|
+
class CompletionRegistrationOptions < CompletionOptions
|
5
|
+
def initialize(work_done_progress: nil, trigger_characters: nil, all_commit_characters: nil, resolve_provider: nil)
|
6
6
|
@attributes = {}
|
7
7
|
|
8
|
+
@attributes[:workDoneProgress] = work_done_progress if work_done_progress
|
8
9
|
@attributes[:triggerCharacters] = trigger_characters if trigger_characters
|
10
|
+
@attributes[:allCommitCharacters] = all_commit_characters if all_commit_characters
|
9
11
|
@attributes[:resolveProvider] = resolve_provider if resolve_provider
|
10
12
|
|
11
13
|
@attributes.freeze
|
12
14
|
end
|
13
15
|
|
14
|
-
#
|
15
|
-
# Most tools trigger completion request automatically without explicitly requesting
|
16
|
-
# it using a keyboard shortcut (e.g. Ctrl+Space). Typically they do so when the user
|
17
|
-
# starts to type an identifier. For example if the user types `c` in a JavaScript file
|
18
|
-
# code complete will automatically pop up present `console` besides others as a
|
19
|
-
# completion item. Characters that make up identifiers don't need to be listed here.
|
20
|
-
#
|
21
|
-
# If code complete should automatically be trigger on characters not being valid inside
|
22
|
-
# an identifier (for example `.` in JavaScript) list them in `triggerCharacters`.
|
23
|
-
#
|
24
|
-
# @return [string[]]
|
25
|
-
def trigger_characters
|
26
|
-
attributes.fetch(:triggerCharacters)
|
27
|
-
end
|
28
|
-
|
29
|
-
#
|
30
|
-
# The server provides support to resolve additional
|
31
|
-
# information for a completion item.
|
32
|
-
#
|
33
|
-
# @return [boolean]
|
34
|
-
def resolve_provider
|
35
|
-
attributes.fetch(:resolveProvider)
|
36
|
-
end
|
37
|
-
|
38
16
|
attr_reader :attributes
|
39
17
|
|
40
18
|
def to_hash
|
@@ -0,0 +1,54 @@
|
|
1
|
+
module LanguageServer
|
2
|
+
module Protocol
|
3
|
+
module Interface
|
4
|
+
#
|
5
|
+
# Create file operation
|
6
|
+
#
|
7
|
+
class CreateFile
|
8
|
+
def initialize(kind:, uri:, options: nil)
|
9
|
+
@attributes = {}
|
10
|
+
|
11
|
+
@attributes[:kind] = kind
|
12
|
+
@attributes[:uri] = uri
|
13
|
+
@attributes[:options] = options if options
|
14
|
+
|
15
|
+
@attributes.freeze
|
16
|
+
end
|
17
|
+
|
18
|
+
#
|
19
|
+
# A create
|
20
|
+
#
|
21
|
+
# @return ["create"]
|
22
|
+
def kind
|
23
|
+
attributes.fetch(:kind)
|
24
|
+
end
|
25
|
+
|
26
|
+
#
|
27
|
+
# The resource to create.
|
28
|
+
#
|
29
|
+
# @return [string]
|
30
|
+
def uri
|
31
|
+
attributes.fetch(:uri)
|
32
|
+
end
|
33
|
+
|
34
|
+
#
|
35
|
+
# Additional options
|
36
|
+
#
|
37
|
+
# @return [CreateFileOptions]
|
38
|
+
def options
|
39
|
+
attributes.fetch(:options)
|
40
|
+
end
|
41
|
+
|
42
|
+
attr_reader :attributes
|
43
|
+
|
44
|
+
def to_hash
|
45
|
+
attributes
|
46
|
+
end
|
47
|
+
|
48
|
+
def to_json(*args)
|
49
|
+
to_hash.to_json(*args)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
module LanguageServer
|
2
|
+
module Protocol
|
3
|
+
module Interface
|
4
|
+
#
|
5
|
+
# Options to create a file.
|
6
|
+
#
|
7
|
+
class CreateFileOptions
|
8
|
+
def initialize(overwrite: nil, ignore_if_exists: nil)
|
9
|
+
@attributes = {}
|
10
|
+
|
11
|
+
@attributes[:overwrite] = overwrite if overwrite
|
12
|
+
@attributes[:ignoreIfExists] = ignore_if_exists if ignore_if_exists
|
13
|
+
|
14
|
+
@attributes.freeze
|
15
|
+
end
|
16
|
+
|
17
|
+
#
|
18
|
+
# Overwrite existing file. Overwrite wins over `ignoreIfExists`
|
19
|
+
#
|
20
|
+
# @return [boolean]
|
21
|
+
def overwrite
|
22
|
+
attributes.fetch(:overwrite)
|
23
|
+
end
|
24
|
+
|
25
|
+
#
|
26
|
+
# Ignore if exists.
|
27
|
+
#
|
28
|
+
# @return [boolean]
|
29
|
+
def ignore_if_exists
|
30
|
+
attributes.fetch(:ignoreIfExists)
|
31
|
+
end
|
32
|
+
|
33
|
+
attr_reader :attributes
|
34
|
+
|
35
|
+
def to_hash
|
36
|
+
attributes
|
37
|
+
end
|
38
|
+
|
39
|
+
def to_json(*args)
|
40
|
+
to_hash.to_json(*args)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
module LanguageServer
|
2
|
+
module Protocol
|
3
|
+
module Interface
|
4
|
+
class DeclarationClientCapabilities
|
5
|
+
def initialize(dynamic_registration: nil, link_support: nil)
|
6
|
+
@attributes = {}
|
7
|
+
|
8
|
+
@attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
|
9
|
+
@attributes[:linkSupport] = link_support if link_support
|
10
|
+
|
11
|
+
@attributes.freeze
|
12
|
+
end
|
13
|
+
|
14
|
+
#
|
15
|
+
# Whether declaration supports dynamic registration. If this is set to `true`
|
16
|
+
# the client supports the new `DeclarationRegistrationOptions` return value
|
17
|
+
# for the corresponding server capability as well.
|
18
|
+
#
|
19
|
+
# @return [boolean]
|
20
|
+
def dynamic_registration
|
21
|
+
attributes.fetch(:dynamicRegistration)
|
22
|
+
end
|
23
|
+
|
24
|
+
#
|
25
|
+
# The client supports additional metadata in the form of declaration links.
|
26
|
+
#
|
27
|
+
# @return [boolean]
|
28
|
+
def link_support
|
29
|
+
attributes.fetch(:linkSupport)
|
30
|
+
end
|
31
|
+
|
32
|
+
attr_reader :attributes
|
33
|
+
|
34
|
+
def to_hash
|
35
|
+
attributes
|
36
|
+
end
|
37
|
+
|
38
|
+
def to_json(*args)
|
39
|
+
to_hash.to_json(*args)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module LanguageServer
|
2
|
+
module Protocol
|
3
|
+
module Interface
|
4
|
+
class DeclarationOptions < WorkDoneProgressOptions
|
5
|
+
def initialize(work_done_progress: nil)
|
6
|
+
@attributes = {}
|
7
|
+
|
8
|
+
@attributes[:workDoneProgress] = work_done_progress if work_done_progress
|
9
|
+
|
10
|
+
@attributes.freeze
|
11
|
+
end
|
12
|
+
|
13
|
+
attr_reader :attributes
|
14
|
+
|
15
|
+
def to_hash
|
16
|
+
attributes
|
17
|
+
end
|
18
|
+
|
19
|
+
def to_json(*args)
|
20
|
+
to_hash.to_json(*args)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module LanguageServer
|
2
|
+
module Protocol
|
3
|
+
module Interface
|
4
|
+
class DeclarationParams < PartialResultParams
|
5
|
+
def initialize(partial_result_token: nil)
|
6
|
+
@attributes = {}
|
7
|
+
|
8
|
+
@attributes[:partialResultToken] = partial_result_token if partial_result_token
|
9
|
+
|
10
|
+
@attributes.freeze
|
11
|
+
end
|
12
|
+
|
13
|
+
attr_reader :attributes
|
14
|
+
|
15
|
+
def to_hash
|
16
|
+
attributes
|
17
|
+
end
|
18
|
+
|
19
|
+
def to_json(*args)
|
20
|
+
to_hash.to_json(*args)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -1,13 +1,11 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
-
|
5
|
-
|
6
|
-
#
|
7
|
-
class ColorProviderOptions
|
8
|
-
def initialize()
|
4
|
+
class DeclarationRegistrationOptions < StaticRegistrationOptions
|
5
|
+
def initialize(id: nil)
|
9
6
|
@attributes = {}
|
10
7
|
|
8
|
+
@attributes[:id] = id if id
|
11
9
|
|
12
10
|
@attributes.freeze
|
13
11
|
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
module LanguageServer
|
2
|
+
module Protocol
|
3
|
+
module Interface
|
4
|
+
class DefinitionClientCapabilities
|
5
|
+
def initialize(dynamic_registration: nil, link_support: nil)
|
6
|
+
@attributes = {}
|
7
|
+
|
8
|
+
@attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
|
9
|
+
@attributes[:linkSupport] = link_support if link_support
|
10
|
+
|
11
|
+
@attributes.freeze
|
12
|
+
end
|
13
|
+
|
14
|
+
#
|
15
|
+
# Whether definition supports dynamic registration.
|
16
|
+
#
|
17
|
+
# @return [boolean]
|
18
|
+
def dynamic_registration
|
19
|
+
attributes.fetch(:dynamicRegistration)
|
20
|
+
end
|
21
|
+
|
22
|
+
#
|
23
|
+
# The client supports additional metadata in the form of definition links.
|
24
|
+
#
|
25
|
+
# @return [boolean]
|
26
|
+
def link_support
|
27
|
+
attributes.fetch(:linkSupport)
|
28
|
+
end
|
29
|
+
|
30
|
+
attr_reader :attributes
|
31
|
+
|
32
|
+
def to_hash
|
33
|
+
attributes
|
34
|
+
end
|
35
|
+
|
36
|
+
def to_json(*args)
|
37
|
+
to_hash.to_json(*args)
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|