summaryrefslogtreecommitdiffstats
path: root/tools/slangd/main.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2022-06-07 14:10:49 -0700
committerGitHub <noreply@github.com>2022-06-07 14:10:49 -0700
commit0c64995ea28febcc7d38e1519da8d93391ce2e7d (patch)
tree8696ab86b29caf80c3ebbd205c700e24b8c20bf3 /tools/slangd/main.cpp
parent8c4a15c522861d2f30eacc9cd2b03ad793018639 (diff)
Major language server features. (#2264)
* Major language server features. * Include slangd in binary release. * Fix compiler issues. * Fix compiler error. * Completion resolve. * Various improvements. * Update diagnostic test expected output. * Bug fix for source locations. * Adjust diagnostic update frequency. * Update github actions to store artifacts. * Fix infinite parser loop. * Fix parser recovery. * Fix parser recovery. * Update test. * Fix test. * Disable IR gen for language server. * Allow commit characters in auto completion. * Fix lookup for invoke exprs. * More parser robustness fixes. * update solution file Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'tools/slangd/main.cpp')
-rw-r--r--tools/slangd/main.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/tools/slangd/main.cpp b/tools/slangd/main.cpp
new file mode 100644
index 000000000..4e3bfd029
--- /dev/null
+++ b/tools/slangd/main.cpp
@@ -0,0 +1,25 @@
+// main.cpp
+
+// This file implements the entry point for `slangd`, the daemon process of Slang's language server.
+
+#include <thread>
+
+#include "../../source/core/slang-basic.h"
+#include "../../source/slang/slang-language-server.h"
+
+int main(int argc, const char* const* argv)
+{
+ bool isDebug = false;
+ for (auto i = 1; i < argc; i++)
+ {
+ if (Slang::UnownedStringSlice(argv[i]) == "--debug")
+ {
+ isDebug = true;
+ }
+ }
+ if (isDebug)
+ {
+ std::this_thread::sleep_for(std::chrono::seconds(10));
+ }
+ return Slang::runLanguageServer();
+}