Class: LanguageServer::Protocol::Interface::CompletionOptions
- Inherits:
-
Object
- Object
- LanguageServer::Protocol::Interface::CompletionOptions
- Defined in:
- lib/language_server/protocol/interface/completion_options.rb
Overview
Completion options.
Instance Attribute Summary collapse
-
#attributes ⇒ Object
readonly
Returns the value of attribute attributes.
Instance Method Summary collapse
-
#all_commit_characters ⇒ string[]
The list of all possible characters that commit a completion.
-
#completion_item ⇒ { labelDetailsSupport?: boolean; }
The server supports the following ‘CompletionItem` specific capabilities.
-
#initialize(work_done_progress: nil, trigger_characters: nil, all_commit_characters: nil, resolve_provider: nil, completion_item: nil) ⇒ CompletionOptions
constructor
A new instance of CompletionOptions.
-
#resolve_provider ⇒ boolean
The server provides support to resolve additional information for a completion item.
- #to_hash ⇒ Object
- #to_json(*args) ⇒ Object
-
#trigger_characters ⇒ string[]
Most tools trigger completion request automatically without explicitly requesting it using a keyboard shortcut (e.g. Ctrl+Space).
- #work_done_progress ⇒ boolean
Constructor Details
#initialize(work_done_progress: nil, trigger_characters: nil, all_commit_characters: nil, resolve_provider: nil, completion_item: nil) ⇒ CompletionOptions
Returns a new instance of CompletionOptions.
8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/language_server/protocol/interface/completion_options.rb', line 8 def initialize(work_done_progress: nil, trigger_characters: nil, all_commit_characters: nil, resolve_provider: nil, completion_item: nil) @attributes = {} @attributes[:workDoneProgress] = work_done_progress if work_done_progress @attributes[:triggerCharacters] = trigger_characters if trigger_characters @attributes[:allCommitCharacters] = all_commit_characters if all_commit_characters @attributes[:resolveProvider] = resolve_provider if resolve_provider @attributes[:completionItem] = completion_item if completion_item @attributes.freeze end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
74 75 76 |
# File 'lib/language_server/protocol/interface/completion_options.rb', line 74 def attributes @attributes end |
Instance Method Details
#all_commit_characters ⇒ string[]
The list of all possible characters that commit a completion. This field can be used if clients don’t support individual commit characters per completion item. See client capability ‘completion.completionItem.commitCharactersSupport`.
If a server provides both ‘allCommitCharacters` and commit characters on an individual completion item the ones on the completion item win.
52 53 54 |
# File 'lib/language_server/protocol/interface/completion_options.rb', line 52 def all_commit_characters attributes.fetch(:allCommitCharacters) end |
#completion_item ⇒ { labelDetailsSupport?: boolean; }
The server supports the following ‘CompletionItem` specific capabilities.
70 71 72 |
# File 'lib/language_server/protocol/interface/completion_options.rb', line 70 def completion_item attributes.fetch(:completionItem) end |
#resolve_provider ⇒ boolean
The server provides support to resolve additional information for a completion item.
61 62 63 |
# File 'lib/language_server/protocol/interface/completion_options.rb', line 61 def resolve_provider attributes.fetch(:resolveProvider) end |
#to_hash ⇒ Object
76 77 78 |
# File 'lib/language_server/protocol/interface/completion_options.rb', line 76 def to_hash attributes end |
#to_json(*args) ⇒ Object
80 81 82 |
# File 'lib/language_server/protocol/interface/completion_options.rb', line 80 def to_json(*args) to_hash.to_json(*args) end |
#trigger_characters ⇒ string[]
Most tools trigger completion request automatically without explicitly requesting it using a keyboard shortcut (e.g. Ctrl+Space). Typically they do so when the user starts to type an identifier. For example if the user types ‘c` in a JavaScript file code complete will automatically pop up present `console` besides others as a completion item. Characters that make up identifiers don’t need to be listed here.
If code complete should automatically be trigger on characters not being valid inside an identifier (for example ‘.` in JavaScript) list them in `triggerCharacters`.
38 39 40 |
# File 'lib/language_server/protocol/interface/completion_options.rb', line 38 def trigger_characters attributes.fetch(:triggerCharacters) end |
#work_done_progress ⇒ boolean
21 22 23 |
# File 'lib/language_server/protocol/interface/completion_options.rb', line 21 def work_done_progress attributes.fetch(:workDoneProgress) end |