package dbdialer import ( "git.nobla.cn/golang/aeus/pkg/logger" "gorm.io/gorm" ) type ( options struct { log logger.Logger cfg *gorm.Config } Option func(o *options) ) func WithConfig(cfg *gorm.Config) Option { return func(o *options) { o.cfg = cfg } } func WithLogger(log logger.Logger) Option { return func(o *options) { o.log = log } } func newOptions(opts ...Option) *options { o := &options{ cfg: &gorm.Config{}, log: logger.Default(), } for _, opt := range opts { opt(o) } return o }