Class: LanguageServer::Protocol::Interface::ServerCapabilities
- Inherits:
-
Object
- Object
- LanguageServer::Protocol::Interface::ServerCapabilities
- Defined in:
- lib/language_server/protocol/interface/server_capabilities.rb
Instance Attribute Summary collapse
-
#attributes ⇒ Object
readonly
Returns the value of attribute attributes.
Instance Method Summary collapse
-
#call_hierarchy_provider ⇒ boolean | CallHierarchyOptions | CallHierarchyRegistrationOptions
The server provides call hierarchy support.
-
#code_action_provider ⇒ boolean | CodeActionOptions
The server provides code actions.
-
#code_lens_provider ⇒ CodeLensOptions
The server provides code lens.
-
#color_provider ⇒ boolean | DocumentColorOptions | DocumentColorRegistrationOptions
The server provides color provider support.
-
#completion_provider ⇒ CompletionOptions
The server provides completion support.
-
#declaration_provider ⇒ boolean | DeclarationOptions | DeclarationRegistrationOptions
The server provides go to declaration support.
-
#definition_provider ⇒ boolean | DefinitionOptions
The server provides goto definition support.
-
#document_formatting_provider ⇒ boolean | DocumentFormattingOptions
The server provides document formatting.
-
#document_highlight_provider ⇒ boolean | DocumentHighlightOptions
The server provides document highlight support.
-
#document_link_provider ⇒ DocumentLinkOptions
The server provides document link support.
-
#document_on_type_formatting_provider ⇒ DocumentOnTypeFormattingOptions
The server provides document formatting on typing.
-
#document_range_formatting_provider ⇒ boolean | DocumentRangeFormattingOptions
The server provides document range formatting.
-
#document_symbol_provider ⇒ boolean | DocumentSymbolOptions
The server provides document symbol support.
-
#execute_command_provider ⇒ ExecuteCommandOptions
The server provides execute command support.
-
#experimental ⇒ any
Experimental server capabilities.
-
#folding_range_provider ⇒ boolean | FoldingRangeOptions | FoldingRangeRegistrationOptions
The server provides folding provider support.
-
#hover_provider ⇒ boolean | HoverOptions
The server provides hover support.
-
#implementation_provider ⇒ boolean | ImplementationOptions | ImplementationRegistrationOptions
The server provides goto implementation support.
-
#initialize(text_document_sync: nil, completion_provider: nil, hover_provider: nil, signature_help_provider: nil, declaration_provider: nil, definition_provider: nil, type_definition_provider: nil, implementation_provider: nil, references_provider: nil, document_highlight_provider: nil, document_symbol_provider: nil, code_action_provider: nil, code_lens_provider: nil, document_link_provider: nil, color_provider: nil, document_formatting_provider: nil, document_range_formatting_provider: nil, document_on_type_formatting_provider: nil, rename_provider: nil, folding_range_provider: nil, execute_command_provider: nil, selection_range_provider: nil, linked_editing_range_provider: nil, call_hierarchy_provider: nil, semantic_tokens_provider: nil, moniker_provider: nil, workspace_symbol_provider: nil, workspace: nil, experimental: nil) ⇒ ServerCapabilities
constructor
A new instance of ServerCapabilities.
-
#linked_editing_range_provider ⇒ boolean | LinkedEditingRangeOptions | LinkedEditingRangeRegistrationOptions
The server provides linked editing range support.
-
#moniker_provider ⇒ boolean | MonikerOptions | MonikerRegistrationOptions
Whether server provides moniker support.
-
#references_provider ⇒ boolean | ReferenceOptions
The server provides find references support.
-
#rename_provider ⇒ boolean | RenameOptions
The server provides rename support.
-
#selection_range_provider ⇒ boolean | SelectionRangeOptions | SelectionRangeRegistrationOptions
The server provides selection range support.
-
#semantic_tokens_provider ⇒ SemanticTokensOptions | SemanticTokensRegistrationOptions
The server provides semantic tokens support.
-
#signature_help_provider ⇒ SignatureHelpOptions
The server provides signature help support.
-
#text_document_sync ⇒ TextDocumentSyncOptions | TextDocumentSyncKind
Defines how text documents are synced.
- #to_hash ⇒ Object
- #to_json(*args) ⇒ Object
-
#type_definition_provider ⇒ boolean | TypeDefinitionOptions | TypeDefinitionRegistrationOptions
The server provides goto type definition support.
-
#workspace ⇒ { workspaceFolders?: WorkspaceFoldersServerCapabilities; fileOperations?: { didCreate?: FileOperationRegistrationOptions; ... 4 more ...; willDelete?: FileOperationRegistrationOptions; }; }
Workspace specific server capabilities.
-
#workspace_symbol_provider ⇒ boolean | WorkspaceSymbolOptions
The server provides workspace symbol support.
Constructor Details
#initialize(text_document_sync: nil, completion_provider: nil, hover_provider: nil, signature_help_provider: nil, declaration_provider: nil, definition_provider: nil, type_definition_provider: nil, implementation_provider: nil, references_provider: nil, document_highlight_provider: nil, document_symbol_provider: nil, code_action_provider: nil, code_lens_provider: nil, document_link_provider: nil, color_provider: nil, document_formatting_provider: nil, document_range_formatting_provider: nil, document_on_type_formatting_provider: nil, rename_provider: nil, folding_range_provider: nil, execute_command_provider: nil, selection_range_provider: nil, linked_editing_range_provider: nil, call_hierarchy_provider: nil, semantic_tokens_provider: nil, moniker_provider: nil, workspace_symbol_provider: nil, workspace: nil, experimental: nil) ⇒ ServerCapabilities
Returns a new instance of ServerCapabilities.
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 5 def initialize(text_document_sync: nil, completion_provider: nil, hover_provider: nil, signature_help_provider: nil, declaration_provider: nil, definition_provider: nil, type_definition_provider: nil, implementation_provider: nil, references_provider: nil, document_highlight_provider: nil, document_symbol_provider: nil, code_action_provider: nil, code_lens_provider: nil, document_link_provider: nil, color_provider: nil, document_formatting_provider: nil, document_range_formatting_provider: nil, document_on_type_formatting_provider: nil, rename_provider: nil, folding_range_provider: nil, execute_command_provider: nil, selection_range_provider: nil, linked_editing_range_provider: nil, call_hierarchy_provider: nil, semantic_tokens_provider: nil, moniker_provider: nil, workspace_symbol_provider: nil, workspace: nil, experimental: nil) @attributes = {} @attributes[:textDocumentSync] = text_document_sync if text_document_sync @attributes[:completionProvider] = completion_provider if completion_provider @attributes[:hoverProvider] = hover_provider if hover_provider @attributes[:signatureHelpProvider] = signature_help_provider if signature_help_provider @attributes[:declarationProvider] = declaration_provider if declaration_provider @attributes[:definitionProvider] = definition_provider if definition_provider @attributes[:typeDefinitionProvider] = type_definition_provider if type_definition_provider @attributes[:implementationProvider] = implementation_provider if implementation_provider @attributes[:referencesProvider] = references_provider if references_provider @attributes[:documentHighlightProvider] = document_highlight_provider if document_highlight_provider @attributes[:documentSymbolProvider] = document_symbol_provider if document_symbol_provider @attributes[:codeActionProvider] = code_action_provider if code_action_provider @attributes[:codeLensProvider] = code_lens_provider if code_lens_provider @attributes[:documentLinkProvider] = document_link_provider if document_link_provider @attributes[:colorProvider] = color_provider if color_provider @attributes[:documentFormattingProvider] = document_formatting_provider if document_formatting_provider @attributes[:documentRangeFormattingProvider] = document_range_formatting_provider if document_range_formatting_provider @attributes[:documentOnTypeFormattingProvider] = document_on_type_formatting_provider if document_on_type_formatting_provider @attributes[:renameProvider] = rename_provider if rename_provider @attributes[:foldingRangeProvider] = folding_range_provider if folding_range_provider @attributes[:executeCommandProvider] = execute_command_provider if execute_command_provider @attributes[:selectionRangeProvider] = selection_range_provider if selection_range_provider @attributes[:linkedEditingRangeProvider] = linked_editing_range_provider if linked_editing_range_provider @attributes[:callHierarchyProvider] = call_hierarchy_provider if call_hierarchy_provider @attributes[:semanticTokensProvider] = semantic_tokens_provider if semantic_tokens_provider @attributes[:monikerProvider] = moniker_provider if moniker_provider @attributes[:workspaceSymbolProvider] = workspace_symbol_provider if workspace_symbol_provider @attributes[:workspace] = workspace if workspace @attributes[:experimental] = experimental if experimental @attributes.freeze end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
280 281 282 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 280 def attributes @attributes end |
Instance Method Details
#call_hierarchy_provider ⇒ boolean | CallHierarchyOptions | CallHierarchyRegistrationOptions
The server provides call hierarchy support.
236 237 238 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 236 def call_hierarchy_provider attributes.fetch(:callHierarchyProvider) end |
#code_action_provider ⇒ boolean | CodeActionOptions
The server provides code actions. The ‘CodeActionOptions` return type is only valid if the client signals code action literal support via the property `textDocument.codeAction.codeActionLiteralSupport`.
138 139 140 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 138 def code_action_provider attributes.fetch(:codeActionProvider) end |
#code_lens_provider ⇒ CodeLensOptions
The server provides code lens.
146 147 148 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 146 def code_lens_provider attributes.fetch(:codeLensProvider) end |
#color_provider ⇒ boolean | DocumentColorOptions | DocumentColorRegistrationOptions
The server provides color provider support.
162 163 164 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 162 def color_provider attributes.fetch(:colorProvider) end |
#completion_provider ⇒ CompletionOptions
The server provides completion support.
56 57 58 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 56 def completion_provider attributes.fetch(:completionProvider) end |
#declaration_provider ⇒ boolean | DeclarationOptions | DeclarationRegistrationOptions
The server provides go to declaration support.
80 81 82 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 80 def declaration_provider attributes.fetch(:declarationProvider) end |
#definition_provider ⇒ boolean | DefinitionOptions
The server provides goto definition support.
88 89 90 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 88 def definition_provider attributes.fetch(:definitionProvider) end |
#document_formatting_provider ⇒ boolean | DocumentFormattingOptions
The server provides document formatting.
170 171 172 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 170 def document_formatting_provider attributes.fetch(:documentFormattingProvider) end |
#document_highlight_provider ⇒ boolean | DocumentHighlightOptions
The server provides document highlight support.
120 121 122 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 120 def document_highlight_provider attributes.fetch(:documentHighlightProvider) end |
#document_link_provider ⇒ DocumentLinkOptions
The server provides document link support.
154 155 156 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 154 def document_link_provider attributes.fetch(:documentLinkProvider) end |
#document_on_type_formatting_provider ⇒ DocumentOnTypeFormattingOptions
The server provides document formatting on typing.
186 187 188 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 186 def document_on_type_formatting_provider attributes.fetch(:documentOnTypeFormattingProvider) end |
#document_range_formatting_provider ⇒ boolean | DocumentRangeFormattingOptions
The server provides document range formatting.
178 179 180 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 178 def document_range_formatting_provider attributes.fetch(:documentRangeFormattingProvider) end |
#document_symbol_provider ⇒ boolean | DocumentSymbolOptions
The server provides document symbol support.
128 129 130 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 128 def document_symbol_provider attributes.fetch(:documentSymbolProvider) end |
#execute_command_provider ⇒ ExecuteCommandOptions
The server provides execute command support.
212 213 214 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 212 def execute_command_provider attributes.fetch(:executeCommandProvider) end |
#experimental ⇒ any
Experimental server capabilities.
276 277 278 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 276 def experimental attributes.fetch(:experimental) end |
#folding_range_provider ⇒ boolean | FoldingRangeOptions | FoldingRangeRegistrationOptions
The server provides folding provider support.
204 205 206 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 204 def folding_range_provider attributes.fetch(:foldingRangeProvider) end |
#hover_provider ⇒ boolean | HoverOptions
The server provides hover support.
64 65 66 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 64 def hover_provider attributes.fetch(:hoverProvider) end |
#implementation_provider ⇒ boolean | ImplementationOptions | ImplementationRegistrationOptions
The server provides goto implementation support.
104 105 106 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 104 def implementation_provider attributes.fetch(:implementationProvider) end |
#linked_editing_range_provider ⇒ boolean | LinkedEditingRangeOptions | LinkedEditingRangeRegistrationOptions
The server provides linked editing range support.
228 229 230 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 228 def linked_editing_range_provider attributes.fetch(:linkedEditingRangeProvider) end |
#moniker_provider ⇒ boolean | MonikerOptions | MonikerRegistrationOptions
Whether server provides moniker support.
252 253 254 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 252 def moniker_provider attributes.fetch(:monikerProvider) end |
#references_provider ⇒ boolean | ReferenceOptions
The server provides find references support.
112 113 114 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 112 def references_provider attributes.fetch(:referencesProvider) end |
#rename_provider ⇒ boolean | RenameOptions
The server provides rename support. RenameOptions may only be specified if the client states that it supports ‘prepareSupport` in its initial `initialize` request.
196 197 198 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 196 def rename_provider attributes.fetch(:renameProvider) end |
#selection_range_provider ⇒ boolean | SelectionRangeOptions | SelectionRangeRegistrationOptions
The server provides selection range support.
220 221 222 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 220 def selection_range_provider attributes.fetch(:selectionRangeProvider) end |
#semantic_tokens_provider ⇒ SemanticTokensOptions | SemanticTokensRegistrationOptions
The server provides semantic tokens support.
244 245 246 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 244 def semantic_tokens_provider attributes.fetch(:semanticTokensProvider) end |
#signature_help_provider ⇒ SignatureHelpOptions
The server provides signature help support.
72 73 74 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 72 def signature_help_provider attributes.fetch(:signatureHelpProvider) end |
#text_document_sync ⇒ TextDocumentSyncOptions | TextDocumentSyncKind
Defines how text documents are synced. Is either a detailed structure defining each notification or for backwards compatibility the TextDocumentSyncKind number. If omitted it defaults to ‘TextDocumentSyncKind.None`.
48 49 50 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 48 def text_document_sync attributes.fetch(:textDocumentSync) end |
#to_hash ⇒ Object
282 283 284 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 282 def to_hash attributes end |
#to_json(*args) ⇒ Object
286 287 288 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 286 def to_json(*args) to_hash.to_json(*args) end |
#type_definition_provider ⇒ boolean | TypeDefinitionOptions | TypeDefinitionRegistrationOptions
The server provides goto type definition support.
96 97 98 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 96 def type_definition_provider attributes.fetch(:typeDefinitionProvider) end |
#workspace ⇒ { workspaceFolders?: WorkspaceFoldersServerCapabilities; fileOperations?: { didCreate?: FileOperationRegistrationOptions; ... 4 more ...; willDelete?: FileOperationRegistrationOptions; }; }
Workspace specific server capabilities
268 269 270 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 268 def workspace attributes.fetch(:workspace) end |
#workspace_symbol_provider ⇒ boolean | WorkspaceSymbolOptions
The server provides workspace symbol support.
260 261 262 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 260 def workspace_symbol_provider attributes.fetch(:workspaceSymbolProvider) end |