29 lines
370 B
Go
29 lines
370 B
Go
|
|
package ginx
|
||
|
|
|
||
|
|
type Options struct {
|
||
|
|
Logger Logger
|
||
|
|
}
|
||
|
|
|
||
|
|
func defaultOptions() Options {
|
||
|
|
return Options{
|
||
|
|
Logger: NewLogger(),
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
// 常量
|
||
|
|
var Op Options = defaultOptions()
|
||
|
|
|
||
|
|
type Option func(*Options)
|
||
|
|
|
||
|
|
func InitOptions(opts ...Option) {
|
||
|
|
for _, opt := range opts {
|
||
|
|
opt(&Op)
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
func SetLogger(log Logger) Option {
|
||
|
|
return func(o *Options) {
|
||
|
|
o.Logger = log
|
||
|
|
}
|
||
|
|
}
|