summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/slang-test/slang-test-main.cpp7
-rw-r--r--tools/slangd/main.cpp8
2 files changed, 14 insertions, 1 deletions
diff --git a/tools/slang-test/slang-test-main.cpp b/tools/slang-test/slang-test-main.cpp
index c22b6dbf6..5e17513d5 100644
--- a/tools/slang-test/slang-test-main.cpp
+++ b/tools/slang-test/slang-test-main.cpp
@@ -2141,8 +2141,13 @@ TestResult runLanguageServerTest(TestContext* context, TestInput& input)
{
actualOutputSB << "activeParameter: " << sigInfo.activeParameter << "\n";
actualOutputSB << "activeSignature: " << sigInfo.activeSignature << "\n";
- for (auto item : sigInfo.signatures)
+ for (Index i = 0; i < sigInfo.signatures.getCount(); ++i)
{
+ auto& item = sigInfo.signatures[i];
+ if (i == sigInfo.activeSignature)
+ {
+ actualOutputSB << "(selected) ";
+ }
actualOutputSB << item.label << ":";
for (auto param : item.parameters)
{
diff --git a/tools/slangd/main.cpp b/tools/slangd/main.cpp
index 240992273..f2b962253 100644
--- a/tools/slangd/main.cpp
+++ b/tools/slangd/main.cpp
@@ -16,6 +16,14 @@ int main(int argc, const char* const* argv)
{
isDebug = true;
}
+ else if (Slang::UnownedStringSlice(argv[i]) == "--print-builtin-module" && i < argc - 1)
+ {
+ Slang::UnownedStringSlice moduleName = Slang::UnownedStringSlice(argv[++i]);
+ Slang::ComPtr<slang::IBlob> code;
+ Slang::getBuiltinModuleSource(moduleName, code.writeRef());
+ printf("%s\n", (const char*)code->getBufferPointer());
+ return 0;
+ }
}
if (isDebug)
{