diff options
| author | DanielGavin <danielgavin5@hotmail.com> | 2023-03-10 19:51:49 +0100 |
|---|---|---|
| committer | DanielGavin <danielgavin5@hotmail.com> | 2023-03-10 19:51:49 +0100 |
| commit | 998ac324d217b6b7ca32fb7c6bd31af830148f5a (patch) | |
| tree | c95d37111d5ae853adca01dc30646396149adb9a /src/server/types.odin | |
| parent | d0a4169a4eb2a2a703af41ae1c221d449030516b (diff) | |
Start working on labeldetails
Diffstat (limited to 'src/server/types.odin')
| -rw-r--r-- | src/server/types.odin | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/src/server/types.odin b/src/server/types.odin index cbb168f..73f3938 100644 --- a/src/server/types.odin +++ b/src/server/types.odin @@ -94,7 +94,7 @@ ServerCapabilities :: struct { documentSymbolProvider: bool, hoverProvider: bool, documentFormattingProvider: bool, - inlayHintsProvider: bool, + inlayHintProvider: bool, renameProvider: bool, referencesProvider: bool, documentLinkProvider: DocumentLinkOptions, @@ -103,6 +103,9 @@ ServerCapabilities :: struct { CompletionOptions :: struct { resolveProvider: bool, triggerCharacters: []string, + completionItem: struct { + labelDetailsSupport: bool, + }, } CompletionContext :: struct { @@ -141,7 +144,8 @@ GeneralClientCapabilities :: struct { } CompletionItemCapabilities :: struct { - snippetSupport: bool, + snippetSupport: bool, + labelDetailsSupport: bool, } CompletionClientCapabilities :: struct { @@ -299,7 +303,13 @@ CompletionItem :: struct { additionalTextEdits: []TextEdit, tags: []CompletionItemTag, deprecated: bool, - command: Command, + command: Maybe(Command), + labelDetails: Maybe(CompletionItemLabelDetails), +} + +CompletionItemLabelDetails :: struct { + detail: string, + description: string, } CompletionItemTag :: enum { @@ -384,6 +394,7 @@ HoverParams :: struct { InlayParams :: struct { textDocument: TextDocumentIdentifier, + range: common.Range, } Hover :: struct { @@ -397,10 +408,15 @@ Command :: struct { arguments: []string, } +InlayHintKind :: enum { + Type = 1, + Parameter = 2, +} + InlayHint :: struct { - range: common.Range, - kind: string, - label: string, + position: common.Position, + kind: InlayHintKind, + label: string, } DocumentLinkClientCapabilities :: struct { |