const ModePeriodic … const ModeRevision … type Compactor … type Compactable … type RevGetter … // New returns a new Compactor based on given "mode". func New( lg *zap.Logger, mode string, retention time.Duration, rg RevGetter, c Compactable, ) (Compactor, error) { … }