merge stable changes (#61)

This commit was merged in pull request #61.
This commit is contained in:
2021-11-18 15:47:56 +03:00
committed by GitHub
parent 332803d8de
commit b181b32731
4 changed files with 740 additions and 236 deletions

View File

@@ -32,3 +32,23 @@ func SetOption(k, v interface{}) Option {
o.Context = context.WithValue(o.Context, k, v)
}
}
// SetSaveOption returns a function to setup a context with given value
func SetSaveOption(k, v interface{}) SaveOption {
return func(o *SaveOptions) {
if o.Context == nil {
o.Context = context.Background()
}
o.Context = context.WithValue(o.Context, k, v)
}
}
// SetLoadOption returns a function to setup a context with given value
func SetLoadOption(k, v interface{}) LoadOption {
return func(o *LoadOptions) {
if o.Context == nil {
o.Context = context.Background()
}
o.Context = context.WithValue(o.Context, k, v)
}
}

View File

@@ -66,6 +66,7 @@ type LoadOptions struct {
Struct interface{}
Override bool
Append bool
Context context.Context
}
func NewLoadOptions(opts ...LoadOption) LoadOptions {
@@ -102,7 +103,8 @@ type SaveOption func(o *SaveOptions)
// SaveOptions struct
type SaveOptions struct {
Struct interface{}
Struct interface{}
Context context.Context
}
// SaveStruct override struct for save to config