1 Star 0 Fork 0

GoAdmin/admin-core

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
options.go 930 Bytes
一键复制 编辑 原始数据 按行查看 历史
GoAdmin 提交于 3年前 . test
package reader
import (
"github.com/go-admin-team/go-admin-core/config/encoder"
"github.com/go-admin-team/go-admin-core/config/encoder/json"
"github.com/go-admin-team/go-admin-core/config/encoder/toml"
"github.com/go-admin-team/go-admin-core/config/encoder/xml"
"github.com/go-admin-team/go-admin-core/config/encoder/yaml"
)
type Options struct {
Encoding map[string]encoder.Encoder
}
type Option func(o *Options)
func NewOptions(opts ...Option) Options {
options := Options{
Encoding: map[string]encoder.Encoder{
"json": json.NewEncoder(),
"yaml": yaml.NewEncoder(),
"toml": toml.NewEncoder(),
"xml": xml.NewEncoder(),
"yml": yaml.NewEncoder(),
},
}
for _, o := range opts {
o(&options)
}
return options
}
func WithEncoder(e encoder.Encoder) Option {
return func(o *Options) {
if o.Encoding == nil {
o.Encoding = make(map[string]encoder.Encoder)
}
o.Encoding[e.String()] = e
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/GoAdminCore/admin-core.git
git@gitee.com:GoAdminCore/admin-core.git
GoAdminCore
admin-core
admin-core
v1.0.0

搜索帮助