package server import ( "git.ctrlz.es/mgdelacroix/birthdaybot/model" "git.ctrlz.es/mgdelacroix/birthdaybot/notification" "github.com/charmbracelet/log" ) type Option func(*Server) *Server func WithConfig(config *model.Config) Option { return func(server *Server) *Server { server.Config = config return server } } func WithLogger(logger *log.Logger) Option { return func(server *Server) *Server { server.Logger = logger return server } } func WithBirthdays(birthdays []*model.Birthday) Option { return func(server *Server) *Server { server.birthdays = birthdays return server } } func WithNotificationServices(notificationServices []notification.NotificationService) Option { return func(server *Server) *Server { server.notificationServices = notificationServices return server } } func WithWorkers(workers []Worker) Option { return func(server *Server) *Server { server.workers = workers return server } }