Class: LanguageServer::Protocol::Interface::TextDocumentClientCapabilities

Inherits:
Object
  • Object
show all
Defined in:
lib/language_server/protocol/interface/text_document_client_capabilities.rb

Overview

Text document specific client capabilities.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(synchronization: nil, completion: nil, hover: nil, signature_help: nil, references: nil, document_highlight: nil, document_symbol: nil, formatting: nil, range_formatting: nil, on_type_formatting: nil, definition: nil, type_definition: nil, implementation: nil, code_action: nil, code_lens: nil, document_link: nil, color_provider: nil, rename: nil, publish_diagnostics: nil, folding_range: nil) ⇒ TextDocumentClientCapabilities

Returns a new instance of TextDocumentClientCapabilities.



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
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 8

def initialize(synchronization: nil, completion: nil, hover: nil, signature_help: nil, references: nil, document_highlight: nil, document_symbol: nil, formatting: nil, range_formatting: nil, on_type_formatting: nil, definition: nil, type_definition: nil, implementation: nil, code_action: nil, code_lens: nil, document_link: nil, color_provider: nil, rename: nil, publish_diagnostics: nil, folding_range: nil)
  @attributes = {}

  @attributes[:synchronization] = synchronization if synchronization
  @attributes[:completion] = completion if completion
  @attributes[:hover] = hover if hover
  @attributes[:signatureHelp] = signature_help if signature_help
  @attributes[:references] = references if references
  @attributes[:documentHighlight] = document_highlight if document_highlight
  @attributes[:documentSymbol] = document_symbol if document_symbol
  @attributes[:formatting] = formatting if formatting
  @attributes[:rangeFormatting] = range_formatting if range_formatting
  @attributes[:onTypeFormatting] = on_type_formatting if on_type_formatting
  @attributes[:definition] = definition if definition
  @attributes[:typeDefinition] = type_definition if type_definition
  @attributes[:implementation] = implementation if implementation
  @attributes[:codeAction] = code_action if code_action
  @attributes[:codeLens] = code_lens if code_lens
  @attributes[:documentLink] = document_link if document_link
  @attributes[:colorProvider] = color_provider if color_provider
  @attributes[:rename] = rename if rename
  @attributes[:publishDiagnostics] = publish_diagnostics if publish_diagnostics
  @attributes[:foldingRange] = folding_range if folding_range

  @attributes.freeze
end

Instance Attribute Details

#attributesObject (readonly)

Returns the value of attribute attributes.



201
202
203
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 201

def attributes
  @attributes
end

Instance Method Details

#code_action{ dynamicRegistration?: boolean; codeActionLiteralSupport?: { codeActionKind: { valueSet: string[...]

Capabilities specific to the textDocument/codeAction

Returns:

  • { dynamicRegistration?: boolean; codeActionLiteralSupport?: { codeActionKind: { valueSet: string



144
145
146
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 144

def code_action
  attributes.fetch(:codeAction)
end

#code_lens{ dynamicRegistration?: boolean; }

Capabilities specific to the textDocument/codeLens

Returns:



152
153
154
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 152

def code_lens
  attributes.fetch(:codeLens)
end

#color_provider{ dynamicRegistration?: boolean; }

Capabilities specific to the textDocument/documentColor and the textDocument/colorPresentation request.

Since 3.6.0

Returns:



171
172
173
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 171

def color_provider
  attributes.fetch(:colorProvider)
end

#completion{ dynamicRegistration?: boolean; completionItem?: { snippetSupport?: boolean; commitCharactersSup...]

Capabilities specific to the textDocument/completion

Returns:

  • { dynamicRegistration?: boolean; completionItem?: { snippetSupport?: boolean; commitCharactersSup…]



44
45
46
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 44

def completion
  attributes.fetch(:completion)
end

#definition{ dynamicRegistration?: boolean; }

Capabilities specific to the textDocument/definition

Returns:



116
117
118
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 116

def definition
  attributes.fetch(:definition)
end

#document_highlight{ dynamicRegistration?: boolean; }

Capabilities specific to the textDocument/documentHighlight

Returns:



76
77
78
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 76

def document_highlight
  attributes.fetch(:documentHighlight)
end

Capabilities specific to the textDocument/documentLink

Returns:



160
161
162
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 160

def document_link
  attributes.fetch(:documentLink)
end

#document_symbol{ dynamicRegistration?: boolean; symbolKind?: { valueSet?: any[]; }; hierarchicalDocumentSymbolSu...]

Capabilities specific to the textDocument/documentSymbol

Returns:

  • { dynamicRegistration?: boolean; symbolKind?: { valueSet?: any[]; }; hierarchicalDocumentSymbolSu…]



84
85
86
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 84

def document_symbol
  attributes.fetch(:documentSymbol)
end

#folding_range{ dynamicRegistration?: boolean; rangeLimit?: number; lineFoldingOnly?: boolean; }

Capabilities specific to textDocument/foldingRange requests.

Since 3.10.0

Returns:



197
198
199
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 197

def folding_range
  attributes.fetch(:foldingRange)
end

#formatting{ dynamicRegistration?: boolean; }

Capabilities specific to the textDocument/formatting

Returns:



92
93
94
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 92

def formatting
  attributes.fetch(:formatting)
end

#hover{ dynamicRegistration?: boolean; contentFormat?: MarkupKind[]; }

Capabilities specific to the textDocument/hover

Returns:



52
53
54
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 52

def hover
  attributes.fetch(:hover)
end

#implementation{ dynamicRegistration?: boolean; }

Capabilities specific to the textDocument/implementation.

Since 3.6.0

Returns:



136
137
138
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 136

def implementation
  attributes.fetch(:implementation)
end

#on_type_formatting{ dynamicRegistration?: boolean; }

Capabilities specific to the textDocument/onTypeFormatting

Returns:



108
109
110
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 108

def on_type_formatting
  attributes.fetch(:onTypeFormatting)
end

#publish_diagnostics{ relatedInformation?: boolean; }

Capabilities specific to textDocument/publishDiagnostics.

Returns:



187
188
189
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 187

def publish_diagnostics
  attributes.fetch(:publishDiagnostics)
end

#range_formatting{ dynamicRegistration?: boolean; }

Capabilities specific to the textDocument/rangeFormatting

Returns:



100
101
102
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 100

def range_formatting
  attributes.fetch(:rangeFormatting)
end

#references{ dynamicRegistration?: boolean; }

Capabilities specific to the textDocument/references

Returns:



68
69
70
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 68

def references
  attributes.fetch(:references)
end

#rename{ dynamicRegistration?: boolean; prepareSupport?: boolean; }

Capabilities specific to the textDocument/rename

Returns:



179
180
181
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 179

def rename
  attributes.fetch(:rename)
end

#signature_help{ dynamicRegistration?: boolean; signatureInformation?: { documentationFormat?: MarkupKind[]; }; }

Capabilities specific to the textDocument/signatureHelp

Returns:



60
61
62
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 60

def signature_help
  attributes.fetch(:signatureHelp)
end

#synchronization{ dynamicRegistration?: boolean; willSave?: boolean; willSaveWaitUntil?: boolean; didSave?: boole...]

Returns { dynamicRegistration?: boolean; willSave?: boolean; willSaveWaitUntil?: boolean; didSave?: boole…].

Returns:

  • { dynamicRegistration?: boolean; willSave?: boolean; willSaveWaitUntil?: boolean; didSave?: boole…]



36
37
38
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 36

def synchronization
  attributes.fetch(:synchronization)
end

#to_hashObject



203
204
205
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 203

def to_hash
  attributes
end

#to_json(*args) ⇒ Object



207
208
209
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 207

def to_json(*args)
  to_hash.to_json(*args)
end

#type_definition{ dynamicRegistration?: boolean; }

Capabilities specific to the textDocument/typeDefinition

Since 3.6.0

Returns:



126
127
128
# File 'lib/language_server/protocol/interface/text_document_client_capabilities.rb', line 126

def type_definition
  attributes.fetch(:typeDefinition)
end