package server func varGet(r *request) { r.expect(1) if v, ok := r.c.s.env.Find(r.args[0]); ok { r.Print(v) } else { r.Fatal("no such variable") } } func varSet(r *request) { r.expect(2) if err := r.c.s.env.Set(r.args[0], r.args[1]); err != nil { r.Fatal(err) } } func varDel(r *request) { r.expect(1) if !r.c.s.env.Del(r.args[0]) { r.Fatal("no such variable") } } func varShow(r *request) { r.c.s.env.Each(func (k string, v string) bool { r.Println(k, v) return true }) } func varClear(r *request) { r.c.s.env.Clear() } func init() { newCmd(varGet, "var get") newCmd(varSet, "var set") newCmd(varDel, "var del") newCmd(varShow, "var show") newCmd(varClear, "var clear") }