Implementation of CompletionItem
interface from Language Server Protocol
DO NOT add new properties or methods to this class that are specific to Moonshine IDE or to a particular language. Create a subclass for new properties or create a utility function for methods.
See also:
Static methods
Constructor
Variables
additionalTextEdits:Array<TextEdit>
An optional array of additional text edits that are applied when selecting this completion. Edits must not overlap (including the same insert position) with the main edit nor with themselves.
Additional text edits should be used to change text unrelated to the current cursor position (for example adding an import statement at the top of the file if the completion item will insert an unqualified type).
command:Command
An optional command that is executed after inserting this completion.
Note that additional modifications to the current document should be
described with the additionalTextEdits
property.
data:Any
An data entry field that is preserved on a completion item between a completion and a completion resolve request.
detail:String
A human-readable string with additional information about this item, like type or symbol information.
filterText:String
A string that should be used when filtering a set of
completion items. When falsy
the label is used as the
filter text for this item.
insertText:String = null
A string that should be inserted into a document when selecting
this completion. When falsy
the label is used as the insert text
for this item.
The insertText
is subject to interpretation by the client side.
Some tools might not take the string literally. For example
VS Code when code complete is requested in this example
con<cursor position>
and a completion item with an insertText
of
console
is provided it will only insert sole
. Therefore it is
recommended to use textEdit
instead since it avoids additional client
side interpretation.
insertTextFormat:InsertTextFormat = PlainText
The format of the insert text. The format applies to both the
insertText
property and the newText
property of a provided
textEdit
. If omitted defaults to InsertTextFormat.PlainText
.
Please note that the insertTextFormat doesn't apply to
additionalTextEdits
.
kind:CompletionItemKind
The kind of this completion item. Based of the kind
an icon is chosen by the editor. The standardized set
of available values is defined in CompletionItemKind
.
label:String
The label of this completion item.
The label property is also by default the text that is inserted when selecting this completion.
If label details are provided the label itself should be an unqualified name of the completion item.
sortText:String
A string that should be used when comparing this item
with other items. When falsy
the label is used
as the sort text for this item.