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
-
#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, workspace_symbol_provider: nil, workspace: nil, experimental: nil) ⇒ ServerCapabilities
constructor
A new instance of ServerCapabilities.
-
#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.
-
#signature_help_provider ⇒ SignatureHelpOptions
The server provides signature help support.
-
#text_document_sync ⇒ number | TextDocumentSyncOptions
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; }
Workspace specific server capabilities.
-
#workspace_symbol_provider ⇒ boolean
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, 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 |
# 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, 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[: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.
242 243 244 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 242 def attributes @attributes end |
Instance Method Details
#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`.
132 133 134 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 132 def code_action_provider attributes.fetch(:codeActionProvider) end |
#code_lens_provider ⇒ CodeLensOptions
The server provides code lens.
140 141 142 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 140 def code_lens_provider attributes.fetch(:codeLensProvider) end |
#color_provider ⇒ boolean | DocumentColorOptions | DocumentColorRegistrationOptions
The server provides color provider support.
156 157 158 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 156 def color_provider attributes.fetch(:colorProvider) end |
#completion_provider ⇒ CompletionOptions
The server provides completion support.
50 51 52 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 50 def completion_provider attributes.fetch(:completionProvider) end |
#declaration_provider ⇒ boolean | DeclarationOptions | DeclarationRegistrationOptions
The server provides go to declaration support.
74 75 76 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 74 def declaration_provider attributes.fetch(:declarationProvider) end |
#definition_provider ⇒ boolean | DefinitionOptions
The server provides goto definition support.
82 83 84 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 82 def definition_provider attributes.fetch(:definitionProvider) end |
#document_formatting_provider ⇒ boolean | DocumentFormattingOptions
The server provides document formatting.
164 165 166 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 164 def document_formatting_provider attributes.fetch(:documentFormattingProvider) end |
#document_highlight_provider ⇒ boolean | DocumentHighlightOptions
The server provides document highlight support.
114 115 116 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 114 def document_highlight_provider attributes.fetch(:documentHighlightProvider) end |
#document_link_provider ⇒ DocumentLinkOptions
The server provides document link support.
148 149 150 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 148 def document_link_provider attributes.fetch(:documentLinkProvider) end |
#document_on_type_formatting_provider ⇒ DocumentOnTypeFormattingOptions
The server provides document formatting on typing.
180 181 182 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 180 def document_on_type_formatting_provider attributes.fetch(:documentOnTypeFormattingProvider) end |
#document_range_formatting_provider ⇒ boolean | DocumentRangeFormattingOptions
The server provides document range formatting.
172 173 174 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 172 def document_range_formatting_provider attributes.fetch(:documentRangeFormattingProvider) end |
#document_symbol_provider ⇒ boolean | DocumentSymbolOptions
The server provides document symbol support.
122 123 124 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 122 def document_symbol_provider attributes.fetch(:documentSymbolProvider) end |
#execute_command_provider ⇒ ExecuteCommandOptions
The server provides execute command support.
206 207 208 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 206 def execute_command_provider attributes.fetch(:executeCommandProvider) end |
#experimental ⇒ any
Experimental server capabilities.
238 239 240 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 238 def experimental attributes.fetch(:experimental) end |
#folding_range_provider ⇒ boolean | FoldingRangeOptions | FoldingRangeRegistrationOptions
The server provides folding provider support.
198 199 200 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 198 def folding_range_provider attributes.fetch(:foldingRangeProvider) end |
#hover_provider ⇒ boolean | HoverOptions
The server provides hover support.
58 59 60 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 58 def hover_provider attributes.fetch(:hoverProvider) end |
#implementation_provider ⇒ boolean | ImplementationOptions | ImplementationRegistrationOptions
The server provides goto implementation support.
98 99 100 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 98 def implementation_provider attributes.fetch(:implementationProvider) end |
#references_provider ⇒ boolean | ReferenceOptions
The server provides find references support.
106 107 108 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 106 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.
190 191 192 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 190 def rename_provider attributes.fetch(:renameProvider) end |
#selection_range_provider ⇒ boolean | SelectionRangeOptions | SelectionRangeRegistrationOptions
The server provides selection range support.
214 215 216 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 214 def selection_range_provider attributes.fetch(:selectionRangeProvider) end |
#signature_help_provider ⇒ SignatureHelpOptions
The server provides signature help support.
66 67 68 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 66 def signature_help_provider attributes.fetch(:signatureHelpProvider) end |
#text_document_sync ⇒ number | TextDocumentSyncOptions
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`.
42 43 44 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 42 def text_document_sync attributes.fetch(:textDocumentSync) end |
#to_hash ⇒ Object
244 245 246 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 244 def to_hash attributes end |
#to_json(*args) ⇒ Object
248 249 250 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 248 def to_json(*args) to_hash.to_json(*args) end |
#type_definition_provider ⇒ boolean | TypeDefinitionOptions | TypeDefinitionRegistrationOptions
The server provides goto type definition support.
90 91 92 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 90 def type_definition_provider attributes.fetch(:typeDefinitionProvider) end |
#workspace ⇒ { workspaceFolders?: WorkspaceFoldersServerCapabilities; }
Workspace specific server capabilities
230 231 232 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 230 def workspace attributes.fetch(:workspace) end |
#workspace_symbol_provider ⇒ boolean
The server provides workspace symbol support.
222 223 224 |
# File 'lib/language_server/protocol/interface/server_capabilities.rb', line 222 def workspace_symbol_provider attributes.fetch(:workspaceSymbolProvider) end |