fix: state clear

This commit is contained in:
abelith committed 2026-10-08 16:22:46 +03:00
1 parent ec12f29fdb
commit cb1ed91e05
2 files changed
+12 -10

No files matched your search

+7 -3
View File
@@ -11,8 +11,6 @@ var (
ErrKeyNotFound = fmt.Errorf("state: key not found")
)
const ClearState State = "clear"
type State string
type Codec interface {
@@ -41,6 +39,7 @@ type Context struct {
state State
data map[string][]byte
codec Codec
clear bool
}
type Option func(*Context)
@@ -83,10 +82,15 @@ func (sc *Context) Set(state State) {
func (sc *Context) State() State { return sc.state }
func (sc *Context) Clear() {
sc.state = ClearState
sc.state = ""
sc.clear = true
sc.data = make(map[string][]byte)
}
func (sc *Context) IsEmpty() bool {
return sc.state == "" && sc.clear
}
func (sc *Context) Store(key string, val any) error {
b, err := sc.codec.Marshal(val)
if err != nil {