aboutsummaryrefslogtreecommitdiffstats
path: root/core/vm/sqlvm/cmd
diff options
context:
space:
mode:
authorwmin0 <wmin0@cobinhood.com>2019-01-17 15:51:56 +0800
committerJhih-Ming Huang <jm.huang@cobinhood.com>2019-03-26 17:48:21 +0800
commit56c1798ede9eedfffc8d1f7646084db63ca97466 (patch)
treec9d7eda4be7ecbf7af9484e628d493f705f1a721 /core/vm/sqlvm/cmd
parent1ea57eed7e9e37b40d27b11fe316cfe3569fade6 (diff)
downloaddexon-56c1798ede9eedfffc8d1f7646084db63ca97466.tar
dexon-56c1798ede9eedfffc8d1f7646084db63ca97466.tar.gz
dexon-56c1798ede9eedfffc8d1f7646084db63ca97466.tar.bz2
dexon-56c1798ede9eedfffc8d1f7646084db63ca97466.tar.lz
dexon-56c1798ede9eedfffc8d1f7646084db63ca97466.tar.xz
dexon-56c1798ede9eedfffc8d1f7646084db63ca97466.tar.zst
dexon-56c1798ede9eedfffc8d1f7646084db63ca97466.zip
core: vm: sqlvm: add sql language parser prototyping
Add sql language parser prototyping along with 1. grammar file implemented with github.com/mna/pigeon 2. ast node struct definition 3. simple parser test which only test if error existed 4. ast printer utility for visualizing parsing result
Diffstat (limited to 'core/vm/sqlvm/cmd')
-rw-r--r--core/vm/sqlvm/cmd/ast-printer/main.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/core/vm/sqlvm/cmd/ast-printer/main.go b/core/vm/sqlvm/cmd/ast-printer/main.go
new file mode 100644
index 000000000..ad10a54ce
--- /dev/null
+++ b/core/vm/sqlvm/cmd/ast-printer/main.go
@@ -0,0 +1,16 @@
+package main
+
+import (
+ "fmt"
+ "os"
+
+ "github.com/dexon-foundation/dexon/core/vm/sqlvm"
+)
+
+func main() {
+ n, err := sqlvm.ParseString(os.Args[1])
+ fmt.Printf("err: %+v\n", err)
+ if err == nil {
+ sqlvm.PrintAST(n, "")
+ }
+}