File tree Expand file tree Collapse file tree 4 files changed +30
-1
lines changed Expand file tree Collapse file tree 4 files changed +30
-1
lines changed Original file line number Diff line number Diff line change @@ -63,6 +63,24 @@ package body LSP.Ada_Client_Capabilities is
6363 else False);
6464 end Code_ActionLiteralSupport ;
6565
66+ -- -----------------------------
67+ -- Completion_SnippetSupport --
68+ -- -----------------------------
69+
70+ function Completion_SnippetSupport
71+ (Self : Client_Capability'Class) return Boolean
72+ is
73+ use LSP.Structures.Unwrap;
74+
75+ Result : constant LSP.Structures.Boolean_Optional :=
76+ snippetSupport
77+ (completionItem
78+ (completion
79+ (Self.Value.capabilities.textDocument)));
80+ begin
81+ return (if Result.Is_Set then Result.Value else False);
82+ end Completion_SnippetSupport ;
83+
6684 -- ---------------------------------------------
6785 -- didChangeWatchedFiles_dynamicRegistration --
6886 -- ---------------------------------------------
Original file line number Diff line number Diff line change @@ -75,6 +75,10 @@ package LSP.Ada_Client_Capabilities is
7575 (Self : Client_Capability'Class) return Boolean;
7676 -- Returns textDocument.documentSymbol.hierarchicalDocumentSymbolSupport
7777
78+ function Completion_SnippetSupport
79+ (Self : Client_Capability'Class) return Boolean;
80+ -- Returns textDocument.completion.completionItem.snippetSupport
81+
7882 function didChangeWatchedFiles_dynamicRegistration
7983 (Self : Client_Capability'Class) return Boolean;
8084 -- Returns capabilities.workspace.didChangeWatchedFiles.dynamicRegistration
Original file line number Diff line number Diff line change @@ -1633,7 +1633,9 @@ package body LSP.Ada_Handlers is
16331633 LSP.Ada_Completions.Attributes.Attributes_Completion_Provider;
16341634
16351635 P5 : aliased LSP.Ada_Completions.Names.Name_Completion_Provider
1636- (Self.Configuration.Use_Completion_Snippets);
1636+ (Self.Configuration.Use_Completion_Snippets
1637+ and then Self.Client.Completion_SnippetSupport);
1638+
16371639 P6 : aliased LSP.Ada_Handlers.Invisibles.Invisible_Completion_Provider
16381640 (Self'Access , Context);
16391641 P7 : aliased
Original file line number Diff line number Diff line change @@ -44,6 +44,11 @@ package LSP.Structures.Unwrap is
4444 return resolveSupport_OfWorkspaceSymbolClientCapabilities_Optional is
4545 (if X.Is_Set then X.Value.resolveSupport else (Is_Set => False));
4646
47+ function snippetSupport
48+ (X : completionItem_OfCompletionClientCapabilities_Optional)
49+ return Boolean_Optional is
50+ (if X.Is_Set then X.Value.snippetSupport else (Is_Set => False));
51+
4752 function properties
4853 (X : resolveSupport_OfWorkspaceSymbolClientCapabilities_Optional)
4954 return LSP.Structures.Virtual_String_Vector is
You can’t perform that action at this time.
0 commit comments