summaryrefslogtreecommitdiff
path: root/vendor/github.com/mitjafelicijan/go-tree-sitter/test_grammar_generate.sh
diff options
context:
space:
mode:
authorMitja Felicijan <mitja.felicijan@gmail.com>2026-01-21 20:22:09 +0100
committerMitja Felicijan <mitja.felicijan@gmail.com>2026-01-21 20:22:09 +0100
commit5a8dbc6347b3541e84fe669b22c17ad3b715e258 (patch)
treeb148c450939688caaaeb4adac6f2faa1eaffe649 /vendor/github.com/mitjafelicijan/go-tree-sitter/test_grammar_generate.sh
downloadqwe-editor-5a8dbc6347b3541e84fe669b22c17ad3b715e258.tar.gz
Engage!
Diffstat (limited to 'vendor/github.com/mitjafelicijan/go-tree-sitter/test_grammar_generate.sh')
-rw-r--r--vendor/github.com/mitjafelicijan/go-tree-sitter/test_grammar_generate.sh29
1 files changed, 29 insertions, 0 deletions
diff --git a/vendor/github.com/mitjafelicijan/go-tree-sitter/test_grammar_generate.sh b/vendor/github.com/mitjafelicijan/go-tree-sitter/test_grammar_generate.sh
new file mode 100644
index 0000000..bf15d1a
--- /dev/null
+++ b/vendor/github.com/mitjafelicijan/go-tree-sitter/test_grammar_generate.sh
@@ -0,0 +1,29 @@
+# transforms grammar js file into go
+# cgo can't be used in tests
+out=test_grammar.go
+
+npm install tree-sitter-cli@0.20.0
+export PATH=$PATH:./node_modules/.bin
+
+tree-sitter generate $(pwd)/test_grammar.js
+
+echo "//Code generated by test_grammar_generate.sh; DO NOT EDIT." > $out
+echo "package sitter" >> $out
+sed -e 's/^/\/\//' src/tree_sitter/parser.h >> $out
+sed -e 's/^/\/\//' src/parser.c | grep -v "#include <tree_sitter/parser.h>" >> $out
+echo "import \"C\"
+import \"unsafe\"
+
+func getTestGrammar() *Language {
+ ptr := unsafe.Pointer(C.tree_sitter_test_grammar())
+ return NewLanguage(ptr)
+}" >> $out
+
+# cleanup
+rm binding.gyp
+rm -rf node_modules/
+rm -rf src/
+rm package-lock.json
+rm Cargo.toml
+rm -rf bindings/
+rm package.json