e071084ebe
govulncheck / govulncheck (push) Waiting to run
Harness (E2E) / Harnesses (mock LLM) (push) Waiting to run
Harness (E2E) / Provider harnesses (live LLM conformance) (push) Waiting to run
Lint / golangci-lint (push) Waiting to run
Run Tests / Unit Tests (push) Waiting to run
Run Tests / Etcd Integration Tests (push) Waiting to run
31 lines
578 B
Go
31 lines
578 B
Go
package model
|
|
|
|
// Options holds configuration for a Model.
|
|
type Options struct {
|
|
// DSN is the data source name / connection string.
|
|
DSN string
|
|
}
|
|
|
|
// WithDSN sets the data source name.
|
|
func WithDSN(dsn string) Option {
|
|
return func(o *Options) {
|
|
o.DSN = dsn
|
|
}
|
|
}
|
|
|
|
// NewOptions creates Options with defaults applied.
|
|
func NewOptions(opts ...Option) Options {
|
|
o := Options{}
|
|
for _, opt := range opts {
|
|
opt(&o)
|
|
}
|
|
return o
|
|
}
|
|
|
|
// WithTable overrides the auto-derived table name.
|
|
func WithTable(name string) RegisterOption {
|
|
return func(s *Schema) {
|
|
s.Table = name
|
|
}
|
|
}
|