From 6c2a7473843b49ede46a5e2f2800493b445a2ef2 Mon Sep 17 00:00:00 2001 From: cdle <798731886@qq.com> Date: Wed, 15 Sep 2021 17:53:52 +0800 Subject: [PATCH] update --- core/test.go | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/core/test.go b/core/test.go index 2181073..a096440 100644 --- a/core/test.go +++ b/core/test.go @@ -6,26 +6,40 @@ import ( "github.com/cdle/sillyGirl/im" ) +var Buckets []Bucket + func init() { AddCommand("", []Function{ { Rules: []string{"set ? ? ?"}, Handle: func(s im.Sender) interface{} { - Bucket(s.Get(0)).Set(s.Get(1), s.Get(2)) + b := Bucket(s.Get(0)) + if !IsBucket(b) { + return errors.New("不存在的存储桶") + } + b.Set(s.Get(1), s.Get(2)) return "设置成功" }, }, { Rules: []string{"delete ? ?"}, Handle: func(s im.Sender) interface{} { - Bucket(s.Get(0)).Set(s.Get(1), "") + b := Bucket(s.Get(0)) + if !IsBucket(b) { + return errors.New("不存在的存储桶") + } + b.Set(s.Get(1), "") return "删除成功" }, }, { Rules: []string{"get ? ? ?"}, Handle: func(s im.Sender) interface{} { - v := Bucket(s.Get(0)).Get(s.Get(1)) + b := Bucket(s.Get(0)) + if !IsBucket(b) { + return errors.New("不存在的存储桶") + } + v := b.Get(s.Get(1)) if v == "" { return errors.New("空值") } @@ -34,3 +48,12 @@ func init() { }, }) } + +func IsBucket(b Bucket) bool { + for i := range Buckets { + if Buckets[i] == b { + return true + } + } + return false +}