package memstore import ( "git.frostfs.info/TrueCloudLab/frostfs-node/pkg/local_object_storage/blobstor/compression" "git.frostfs.info/TrueCloudLab/frostfs-node/pkg/util/logger" "go.uber.org/zap" ) type cfg struct { log *logger.Logger rootPath string readOnly bool compression *compression.Config reportError func(string, error) } func defaultConfig() *cfg { return &cfg{ log: &logger.Logger{Logger: zap.L()}, reportError: func(string, error) {}, } } type Option func(*cfg) func WithLogger(l *logger.Logger) Option { return func(c *cfg) { c.log = l } } func WithRootPath(p string) Option { return func(c *cfg) { c.rootPath = p } } func WithReadOnly(ro bool) Option { return func(c *cfg) { c.readOnly = ro } }