ucl/cmd/cmsh/main.go

31 lines
444 B
Go

package main
import (
"context"
"github.com/chzyer/readline"
"github.com/lmika/cmdlang-proto/cmdlang"
"log"
)
func main() {
rl, err := readline.New("> ")
if err != nil {
panic(err)
}
defer rl.Close()
inst := cmdlang.New()
ctx := context.Background()
for {
line, err := rl.Readline()
if err != nil { // io.EOF
break
}
if err := inst.EvalAndDisplay(ctx, line); err != nil {
log.Printf("%T: %v", err, err)
}
}
}