This might be either direct output (e.g. to the console, streaming markup) or to a file. Example implementors might be XsltRenderer, ConsoleRenderer, etc
Наследование: extends PhpBench\Registry\RegistrableInterface
Пример #1
0
 /**
  * Add a renderer.
  *
  * @param string $name
  * @param RendererInterface $renderer
  */
 public function addRenderer($name, RendererInterface $renderer)
 {
     if (isset($this->renderers[$name])) {
         throw new \InvalidArgumentException(sprintf('Report renderer with name "%s" has already been registered', $name));
     }
     $this->renderers[$name] = $renderer;
     $defaultOutputs = $renderer->getDefaultOutputs();
     if (!is_array($defaultOutputs)) {
         throw new \RuntimeException(sprintf('Method getDefaultOutputs on output renderer "%s" must return an array, it is returning: "%s"', get_class($renderer), is_object($defaultOutputs) ? get_class($defaultOutputs) : gettype($defaultOutputs)));
     }
     foreach ($defaultOutputs as $outputName => $outputConfig) {
         $outputConfig['renderer'] = $name;
         $this->addOutput($outputName, $outputConfig);
     }
 }