private function registerProgressLoggers(Container $container) { $container->register('progress_logger.registry', function (Container $container) { $registry = new LoggerRegistry(); foreach ($container->getServiceIdsForTag('progress_logger') as $serviceId => $attributes) { $registry->addProgressLogger($attributes['name'], $container->get($serviceId)); } return $registry; }); $container->register('progress_logger.dots', function (Container $container) { return new DotsLogger($container->get('benchmark.time_unit')); }, ['progress_logger' => ['name' => 'dots']]); $container->register('progress_logger.classdots', function (Container $container) { return new DotsLogger($container->get('benchmark.time_unit'), true); }, ['progress_logger' => ['name' => 'classdots']]); $container->register('progress_logger.verbose', function (Container $container) { return new VerboseLogger($container->get('benchmark.time_unit')); }, ['progress_logger' => ['name' => 'verbose']]); $container->register('progress_logger.travis', function (Container $container) { return new TravisLogger($container->get('benchmark.time_unit')); }, ['progress_logger' => ['name' => 'travis']]); $container->register('progress_logger.null', function (Container $container) { return new NullLogger(); }, ['progress_logger' => ['name' => 'none']]); $container->register('progress_logger.blinken', function (Container $container) { return new BlinkenLogger($container->get('benchmark.time_unit')); }, ['progress_logger' => ['name' => 'blinken']]); $container->register('progress_logger.histogram', function (Container $container) { return new HistogramLogger($container->get('benchmark.time_unit')); }, ['progress_logger' => ['name' => 'histogram']]); }