summaryrefslogtreecommitdiff
path: root/source/slang/slang-language-server-inlay-hints.cpp
diff options
context:
space:
mode:
authorEllie Hermaszewska <ellieh@nvidia.com>2024-10-29 14:49:26 +0800
committerGitHub <noreply@github.com>2024-10-29 14:49:26 +0800
commitf65d756bff8d4c5cbc15bd0322a2ae8e6b896a21 (patch)
treeea1d61342cd29368e19135000ec2948813096205 /source/slang/slang-language-server-inlay-hints.cpp
parenta729c15e9dce9f5116a38afc66329ab2ca4cea54 (diff)
format
* format * Minor test fixes * enable checking cpp format in ci
Diffstat (limited to 'source/slang/slang-language-server-inlay-hints.cpp')
-rw-r--r--source/slang/slang-language-server-inlay-hints.cpp34
1 files changed, 24 insertions, 10 deletions
diff --git a/source/slang/slang-language-server-inlay-hints.cpp b/source/slang/slang-language-server-inlay-hints.cpp
index 0eee347d1..982b9f910 100644
--- a/source/slang/slang-language-server-inlay-hints.cpp
+++ b/source/slang/slang-language-server-inlay-hints.cpp
@@ -1,9 +1,10 @@
#include "slang-language-server-inlay-hints.h"
-#include "slang-visitor.h"
-#include "slang-ast-support-types.h"
+
+#include "../core/slang-char-util.h"
#include "slang-ast-iterator.h"
+#include "slang-ast-support-types.h"
#include "slang-language-server.h"
-#include "../core/slang-char-util.h"
+#include "slang-visitor.h"
namespace Slang
{
@@ -18,7 +19,11 @@ List<LanguageServerProtocol::InlayHint> getInlayHints(
List<LanguageServerProtocol::InlayHint> result;
auto manager = linkage->getSourceManager();
auto docText = doc->getText().getUnownedSlice();
- iterateASTWithLanguageServerFilter(fileName, manager, module->getModuleDecl(), [&](SyntaxNode* node)
+ iterateASTWithLanguageServerFilter(
+ fileName,
+ manager,
+ module->getModuleDecl(),
+ [&](SyntaxNode* node)
{
if (auto invokeExpr = as<InvokeExpr>(node))
{
@@ -49,21 +54,30 @@ List<LanguageServerProtocol::InlayHint> getInlayHints(
auto loc = manager->getHumaneLoc(invokeExpr->argumentDelimeterLocs[i]);
auto offset = doc->getOffset(loc.line, loc.column);
offset++;
- while (offset < docText.getLength() && CharUtil::isWhitespace(docText[offset]))
+ while (offset < docText.getLength() &&
+ CharUtil::isWhitespace(docText[offset]))
offset++;
Index posLine, posCol;
doc->offsetToLineCol(offset, posLine, posCol);
Index utf16line, utf16col;
- doc->oneBasedUTF8LocToZeroBasedUTF16Loc(posLine, posCol, utf16line, utf16col);
+ doc->oneBasedUTF8LocToZeroBasedUTF16Loc(
+ posLine,
+ posCol,
+ utf16line,
+ utf16col);
hint.position.line = (int)utf16line;
hint.position.character = (int)utf16col;
hint.paddingLeft = false;
hint.kind = LanguageServerProtocol::kInlayHintKindParameter;
StringBuilder lblSb;
- if (param->hasModifier<OutModifier>()) lblSb << "out ";
- else if (param->hasModifier<InOutModifier>()) lblSb << "inout ";
- else if (param->hasModifier<RefModifier>()) lblSb << "ref ";
- else if (param->hasModifier<ConstRefModifier>()) lblSb << "constref ";
+ if (param->hasModifier<OutModifier>())
+ lblSb << "out ";
+ else if (param->hasModifier<InOutModifier>())
+ lblSb << "inout ";
+ else if (param->hasModifier<RefModifier>())
+ lblSb << "ref ";
+ else if (param->hasModifier<ConstRefModifier>())
+ lblSb << "constref ";
lblSb << name->text;
lblSb << ":";
hint.label = lblSb.produceString();