aboutsummaryrefslogtreecommitdiff
path: root/cmd/vartan/root.go
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2024-12-02 15:41:30 -0300
committerEuAndreh <eu@euandre.org>2024-12-02 15:41:30 -0300
commitab1ad9eecffed26c4aa3d6fd346d7b06e9eadbb1 (patch)
tree8e15b7188b153d8f85be7120f5370249286b6f17 /cmd/vartan/root.go
parentSetup Makefile project structure with empty src/urubu.go source (diff)
downloadurubu-ab1ad9eecffed26c4aa3d6fd346d7b06e9eadbb1.tar.gz
urubu-ab1ad9eecffed26c4aa3d6fd346d7b06e9eadbb1.tar.xz
Build and test existing code as is
Diffstat (limited to 'cmd/vartan/root.go')
-rw-r--r--cmd/vartan/root.go21
1 files changed, 19 insertions, 2 deletions
diff --git a/cmd/vartan/root.go b/cmd/vartan/root.go
index 8d2219d..32eb3c3 100644
--- a/cmd/vartan/root.go
+++ b/cmd/vartan/root.go
@@ -1,9 +1,10 @@
package main
import (
- "github.com/spf13/cobra"
+ "os"
)
+/*
var rootCmd = &cobra.Command{
Use: "vartan",
Short: "Generate a portable LALR(1) parsing table from grammar you defined",
@@ -13,7 +14,23 @@ var rootCmd = &cobra.Command{
SilenceErrors: true,
SilenceUsage: true,
}
+*/
func Execute() error {
- return rootCmd.Execute()
+ // return rootCmd.Execute()
+
+ cmd := os.Args[1]
+ args := os.Args[2:]
+
+ if cmd == "compile" {
+ return runCompile(args)
+ } else if cmd == "parse" {
+ return runParse(args)
+ } else if cmd == "show" {
+ return runShow(args)
+ } else if cmd == "test" {
+ return runTest(args)
+ }
+
+ return nil // FIXME
}