From 56c1798ede9eedfffc8d1f7646084db63ca97466 Mon Sep 17 00:00:00 2001 From: wmin0 Date: Thu, 17 Jan 2019 15:51:56 +0800 Subject: 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 --- core/vm/sqlvm/cmd/ast-printer/main.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 core/vm/sqlvm/cmd/ast-printer/main.go (limited to 'core/vm/sqlvm/cmd') 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, "") + } +} -- cgit v1.2.3