*/ class ValueResolver implements DefinitionResolver { /** * Resolve a value definition to a value. * * A value definition is simple, so this will just return the value of the ValueDefinition. * * @param ValueDefinition $definition * * {@inheritdoc} */ public function resolve(Definition $definition, array $parameters = []) { $this->assertIsValueDefinition($definition); return $definition->getValue(); } /** * {@inheritdoc} */ public function isResolvable(Definition $definition, array $parameters = []) { $this->assertIsValueDefinition($definition); return true; } private function assertIsValueDefinition(Definition $definition) { if (!$definition instanceof ValueDefinition) { throw new \InvalidArgumentException(sprintf( 'This definition resolver is only compatible with ValueDefinition objects, %s given', get_class($definition) )); } } }