summaryrefslogtreecommitdiffstats
path: root/source/slang/slang-language-server-completion.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/slang/slang-language-server-completion.cpp')
-rw-r--r--source/slang/slang-language-server-completion.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/source/slang/slang-language-server-completion.cpp b/source/slang/slang-language-server-completion.cpp
index 0c7f10ad7..14613d08b 100644
--- a/source/slang/slang-language-server-completion.cpp
+++ b/source/slang/slang-language-server-completion.cpp
@@ -23,7 +23,7 @@ static const char* kDeclKeywords[] = {
"protected", "typedef", "typealias", "uniform", "export", "groupshared",
"extension", "associatedtype", "namespace", "This", "using",
"__generic", "__exported", "import", "enum", "cbuffer", "tbuffer", "func",
- "functype", "typename", "each", "expand" };
+ "functype", "typename", "each", "expand", "where" };
static const char* kStmtKeywords[] = {
"if", "else", "switch", "case", "default", "return",
"try", "throw", "throws", "catch", "while", "for",
@@ -74,6 +74,16 @@ static const char* hlslSemanticNames[] = {
"SV_ShadingRate",
};
+bool isDeclKeyword(const UnownedStringSlice& slice)
+{
+ for (auto keyword : kDeclKeywords)
+ {
+ if (slice == keyword)
+ return true;
+ }
+ return false;
+}
+
SlangResult CompletionContext::tryCompleteHLSLSemantic()
{
if (version->linkage->contentAssistInfo.completionSuggestions.scopeKind !=