Class: LanguageServer::Protocol::Interface::CompletionClientCapabilities
- Inherits:
-
Object
- Object
- LanguageServer::Protocol::Interface::CompletionClientCapabilities
- Defined in:
- lib/language_server/protocol/interface/completion_client_capabilities.rb
Overview
Completion client capabilities
Instance Attribute Summary collapse
-
#attributes ⇒ Object
readonly
Returns the value of attribute attributes.
Instance Method Summary collapse
-
#completion_item ⇒ { snippetSupport:boolean, commitCharactersSupport:boolean, documentationFormat:MarkupKind[], deprecatedSupport:boolean, preselectSupport:boolean, tagSupport:{ valueSet:CompletionItemTag[] }, insertReplaceSupport:boolean, resolveSupport:{ properties:string[] }, insertTextModeSupport:{ valueSet:InsertTextMode[] }, labelDetailsSupport:boolean } | nil
The client supports the following
CompletionItemspecific capabilities. - #completion_item_kind ⇒ { valueSet:CompletionItemKind[] } | nil
-
#completion_list ⇒ { itemDefaults:string[] } | nil
The client supports the following
CompletionListspecific capabilities. -
#context_support ⇒ boolean | nil
The client supports to send additional context information for a
textDocument/completionrequest. -
#dynamic_registration ⇒ boolean | nil
Whether completion supports dynamic registration.
-
#initialize(dynamic_registration: nil, completion_item: nil, completion_item_kind: nil, insert_text_mode: nil, context_support: nil, completion_list: nil) ⇒ CompletionClientCapabilities
constructor
A new instance of CompletionClientCapabilities.
-
#insert_text_mode ⇒ InsertTextMode | nil
Defines how the client handles whitespace and indentation when accepting a completion item that uses multi line text in either
insertTextortextEdit. - #to_hash ⇒ Object
- #to_json(*args) ⇒ Object
Constructor Details
#initialize(dynamic_registration: nil, completion_item: nil, completion_item_kind: nil, insert_text_mode: nil, context_support: nil, completion_list: nil) ⇒ CompletionClientCapabilities
Returns a new instance of CompletionClientCapabilities.
8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/language_server/protocol/interface/completion_client_capabilities.rb', line 8 def initialize(dynamic_registration: nil, completion_item: nil, completion_item_kind: nil, insert_text_mode: nil, context_support: nil, completion_list: nil) @attributes = {} @attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration @attributes[:completionItem] = completion_item if completion_item @attributes[:completionItemKind] = completion_item_kind if completion_item_kind @attributes[:insertTextMode] = insert_text_mode if insert_text_mode @attributes[:contextSupport] = context_support if context_support @attributes[:completionList] = completion_list if completion_list @attributes.freeze end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
75 76 77 |
# File 'lib/language_server/protocol/interface/completion_client_capabilities.rb', line 75 def attributes @attributes end |
Instance Method Details
#completion_item ⇒ { snippetSupport:boolean, commitCharactersSupport:boolean, documentationFormat:MarkupKind[], deprecatedSupport:boolean, preselectSupport:boolean, tagSupport:{ valueSet:CompletionItemTag[] }, insertReplaceSupport:boolean, resolveSupport:{ properties:string[] }, insertTextModeSupport:{ valueSet:InsertTextMode[] }, labelDetailsSupport:boolean } | nil
The client supports the following CompletionItem specific capabilities.
34 35 36 |
# File 'lib/language_server/protocol/interface/completion_client_capabilities.rb', line 34 def completion_item attributes.fetch(:completionItem) end |
#completion_item_kind ⇒ { valueSet:CompletionItemKind[] } | nil
39 40 41 |
# File 'lib/language_server/protocol/interface/completion_client_capabilities.rb', line 39 def completion_item_kind attributes.fetch(:completionItemKind) end |
#completion_list ⇒ { itemDefaults:string[] } | nil
The client supports the following CompletionList specific capabilities.
71 72 73 |
# File 'lib/language_server/protocol/interface/completion_client_capabilities.rb', line 71 def completion_list attributes.fetch(:completionList) end |
#context_support ⇒ boolean | nil
The client supports to send additional context information for a textDocument/completion request.
60 61 62 |
# File 'lib/language_server/protocol/interface/completion_client_capabilities.rb', line 60 def context_support attributes.fetch(:contextSupport) end |
#dynamic_registration ⇒ boolean | nil
Whether completion supports dynamic registration.
25 26 27 |
# File 'lib/language_server/protocol/interface/completion_client_capabilities.rb', line 25 def dynamic_registration attributes.fetch(:dynamicRegistration) end |
#insert_text_mode ⇒ InsertTextMode | nil
Defines how the client handles whitespace and indentation when accepting a completion item that uses multi line text in either insertText or textEdit.
51 52 53 |
# File 'lib/language_server/protocol/interface/completion_client_capabilities.rb', line 51 def insert_text_mode attributes.fetch(:insertTextMode) end |
#to_hash ⇒ Object
77 78 79 |
# File 'lib/language_server/protocol/interface/completion_client_capabilities.rb', line 77 def to_hash attributes end |
#to_json(*args) ⇒ Object
81 82 83 |
# File 'lib/language_server/protocol/interface/completion_client_capabilities.rb', line 81 def to_json(*args) to_hash.to_json(*args) end |