From 80c277773a1e73267832641574654361b85e6028 Mon Sep 17 00:00:00 2001 From: Marc Vertes Date: Mon, 10 Jul 2023 15:54:13 +0200 Subject: first commit --- cmd/gint/main.go | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 cmd/gint/main.go (limited to 'cmd/gint/main.go') diff --git a/cmd/gint/main.go b/cmd/gint/main.go new file mode 100644 index 0000000..44f59ac --- /dev/null +++ b/cmd/gint/main.go @@ -0,0 +1,35 @@ +package main + +import ( + "log" + "os" + + "github.com/gnolang/parscan/lang/golang" + "github.com/gnolang/parscan/vm0" +) + +func main() { + log.SetFlags(log.Lshortfile) + buf, err := os.ReadFile("/dev/stdin") + if err != nil { + log.Fatal(err) + } + if err := runSrc(string(buf)); err != nil { + log.Fatal(err) + } +} + +func runSrc(src string) error { + i := vm0.New(golang.GoParser) + nodes, err := i.Parse(src) + if err != nil { + return err + } + i.Adot(nodes, os.Getenv("DOT")) + for _, n := range nodes { + if _, err := i.Run(n, ""); err != nil { + return err + } + } + return nil +} -- cgit v1.2.3