class LanguageServer::Protocol::Interface::ServerCapabilities

Attributes

attributes[R]

Public Class Methods

new(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) click to toggle source
# 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

Public Instance Methods

call_hierarchy_provider() click to toggle source

The server provides call hierarchy support.

@return [boolean | CallHierarchyOptions | CallHierarchyRegistrationOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 236
def call_hierarchy_provider
  attributes.fetch(:callHierarchyProvider)
end
code_action_provider() click to toggle source

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`.

@return [boolean | CodeActionOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 138
def code_action_provider
  attributes.fetch(:codeActionProvider)
end
code_lens_provider() click to toggle source

The server provides code lens.

@return [CodeLensOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 146
def code_lens_provider
  attributes.fetch(:codeLensProvider)
end
color_provider() click to toggle source

The server provides color provider support.

@return [boolean | DocumentColorOptions | DocumentColorRegistrationOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 162
def color_provider
  attributes.fetch(:colorProvider)
end
completion_provider() click to toggle source

The server provides completion support.

@return [CompletionOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 56
def completion_provider
  attributes.fetch(:completionProvider)
end
declaration_provider() click to toggle source

The server provides go to declaration support.

@return [boolean | DeclarationOptions | DeclarationRegistrationOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 80
def declaration_provider
  attributes.fetch(:declarationProvider)
end
definition_provider() click to toggle source

The server provides goto definition support.

@return [boolean | DefinitionOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 88
def definition_provider
  attributes.fetch(:definitionProvider)
end
document_formatting_provider() click to toggle source

The server provides document formatting.

@return [boolean | DocumentFormattingOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 170
def document_formatting_provider
  attributes.fetch(:documentFormattingProvider)
end
document_highlight_provider() click to toggle source

The server provides document highlight support.

@return [boolean | DocumentHighlightOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 120
def document_highlight_provider
  attributes.fetch(:documentHighlightProvider)
end
document_on_type_formatting_provider() click to toggle source

The server provides document formatting on typing.

@return [DocumentOnTypeFormattingOptions]

# 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() click to toggle source

The server provides document range formatting.

@return [boolean | DocumentRangeFormattingOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 178
def document_range_formatting_provider
  attributes.fetch(:documentRangeFormattingProvider)
end
document_symbol_provider() click to toggle source

The server provides document symbol support.

@return [boolean | DocumentSymbolOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 128
def document_symbol_provider
  attributes.fetch(:documentSymbolProvider)
end
execute_command_provider() click to toggle source

The server provides execute command support.

@return [ExecuteCommandOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 212
def execute_command_provider
  attributes.fetch(:executeCommandProvider)
end
experimental() click to toggle source

Experimental server capabilities.

@return [any]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 276
def experimental
  attributes.fetch(:experimental)
end
folding_range_provider() click to toggle source

The server provides folding provider support.

@return [boolean | FoldingRangeOptions | FoldingRangeRegistrationOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 204
def folding_range_provider
  attributes.fetch(:foldingRangeProvider)
end
hover_provider() click to toggle source

The server provides hover support.

@return [boolean | HoverOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 64
def hover_provider
  attributes.fetch(:hoverProvider)
end
implementation_provider() click to toggle source

The server provides goto implementation support.

@return [boolean | ImplementationOptions | ImplementationRegistrationOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 104
def implementation_provider
  attributes.fetch(:implementationProvider)
end
linked_editing_range_provider() click to toggle source

The server provides linked editing range support.

@return [boolean | LinkedEditingRangeOptions | LinkedEditingRangeRegistrationOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 228
def linked_editing_range_provider
  attributes.fetch(:linkedEditingRangeProvider)
end
moniker_provider() click to toggle source

Whether server provides moniker support.

@return [boolean | MonikerOptions | MonikerRegistrationOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 252
def moniker_provider
  attributes.fetch(:monikerProvider)
end
references_provider() click to toggle source

The server provides find references support.

@return [boolean | ReferenceOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 112
def references_provider
  attributes.fetch(:referencesProvider)
end
rename_provider() click to toggle source

The server provides rename support. RenameOptions may only be specified if the client states that it supports `prepareSupport` in its initial `initialize` request.

@return [boolean | RenameOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 196
def rename_provider
  attributes.fetch(:renameProvider)
end
selection_range_provider() click to toggle source

The server provides selection range support.

@return [boolean | SelectionRangeOptions | SelectionRangeRegistrationOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 220
def selection_range_provider
  attributes.fetch(:selectionRangeProvider)
end
semantic_tokens_provider() click to toggle source

The server provides semantic tokens support.

@return [SemanticTokensOptions | SemanticTokensRegistrationOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 244
def semantic_tokens_provider
  attributes.fetch(:semanticTokensProvider)
end
signature_help_provider() click to toggle source

The server provides signature help support.

@return [SignatureHelpOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 72
def signature_help_provider
  attributes.fetch(:signatureHelpProvider)
end
text_document_sync() click to toggle source

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`.

@return [TextDocumentSyncOptions | TextDocumentSyncKind]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 48
def text_document_sync
  attributes.fetch(:textDocumentSync)
end
to_hash() click to toggle source
# File lib/language_server/protocol/interface/server_capabilities.rb, line 282
def to_hash
  attributes
end
to_json(*args) click to toggle source
# File lib/language_server/protocol/interface/server_capabilities.rb, line 286
def to_json(*args)
  to_hash.to_json(*args)
end
type_definition_provider() click to toggle source

The server provides goto type definition support.

@return [boolean | TypeDefinitionOptions | TypeDefinitionRegistrationOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 96
def type_definition_provider
  attributes.fetch(:typeDefinitionProvider)
end
workspace() click to toggle source

Workspace specific server capabilities

@return [{ workspaceFolders?: WorkspaceFoldersServerCapabilities; fileOperations?: { didCreate?: FileOperationRegistrationOptions; … 4 more …; willDelete?: FileOperationRegistrationOptions; }; }]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 268
def workspace
  attributes.fetch(:workspace)
end
workspace_symbol_provider() click to toggle source

The server provides workspace symbol support.

@return [boolean | WorkspaceSymbolOptions]

# File lib/language_server/protocol/interface/server_capabilities.rb, line 260
def workspace_symbol_provider
  attributes.fetch(:workspaceSymbolProvider)
end