aboutsummaryrefslogtreecommitdiff
path: root/cmd/planr/main.go
diff options
context:
space:
mode:
authorFurkan Sahin <furkan-dev@proton.me>2021-08-11 23:00:24 -0500
committerFurkan Sahin <furkan-dev@proton.me>2021-08-11 23:00:24 -0500
commit0a2de7cf23dfb7f5d928795bba4d7ea4a073f0f5 (patch)
treefd62ee1cc577a8530f2c998e5cda61fc9969ecf8 /cmd/planr/main.go
parent53c727d6e5eea6a775dda21723f895a96c75e047 (diff)
Prepare for dh-golangv0.0.1upstream/0.0.1
Diffstat (limited to 'cmd/planr/main.go')
-rw-r--r--cmd/planr/main.go50
1 files changed, 50 insertions, 0 deletions
diff --git a/cmd/planr/main.go b/cmd/planr/main.go
new file mode 100644
index 0000000..419dc3b
--- /dev/null
+++ b/cmd/planr/main.go
@@ -0,0 +1,50 @@
+package main
+
+import (
+ "os"
+ "io"
+ "fmt"
+ "golang.furkistan.com/planr/cmd/planr/sub"
+)
+
+const (
+ VERSION = "0.0.1"
+)
+
+func printUsage(w io.Writer) {
+ fmt.Fprintf (w, "usage: %s command args ... \n", os.Args[0])
+ fmt.Fprintln(w, " help ")
+ fmt.Fprintln(w, " version ")
+ fmt.Fprintln(w, " build ")
+ fmt.Fprintln(w, " evaluate ")
+}
+
+func dieUsage() {
+ printUsage(os.Stderr)
+ os.Exit(1)
+}
+
+func main() {
+
+ if len(os.Args) < 2 {
+ dieUsage()
+ }
+
+ subcommand := os.Args[1]
+ subargs := os.Args[2:]
+
+ switch subcommand {
+ case "version":
+ fmt.Printf("%s\n", VERSION)
+ case "build":
+ sub.Build(subargs)
+ case "evaluate":
+ sub.Evaluate(subargs)
+ case "help", "-h", "-help", "--help":
+ printUsage(os.Stdout)
+ default:
+ fmt.Fprintf(os.Stderr, "unrecognized command %s\n", subcommand)
+ dieUsage()
+ }
+
+}