class DefaultsConfigurator
@author Nicolas Grekas <p@tchwork.com>
Hierarchy
- class \Symfony\Component\DependencyInjection\Loader\Configurator\AbstractConfigurator
- class \Symfony\Component\DependencyInjection\Loader\Configurator\AbstractServiceConfigurator extends \Symfony\Component\DependencyInjection\Loader\Configurator\AbstractConfigurator
- class \Symfony\Component\DependencyInjection\Loader\Configurator\DefaultsConfigurator extends \Symfony\Component\DependencyInjection\Loader\Configurator\AbstractServiceConfigurator uses \Traits\AutoconfigureTrait, \Traits\AutowireTrait, \Traits\BindTrait, \Traits\PublicTrait
- class \Symfony\Component\DependencyInjection\Loader\Configurator\AbstractServiceConfigurator extends \Symfony\Component\DependencyInjection\Loader\Configurator\AbstractConfigurator
Expanded class hierarchy of DefaultsConfigurator
1 file declares its use of DefaultsConfigurator
- BindTrait.php in vendor/
symfony/ dependency-injection/ Loader/ Configurator/ Traits/ BindTrait.php
File
-
vendor/
symfony/ dependency-injection/ Loader/ Configurator/ DefaultsConfigurator.php, line 20
Namespace
Symfony\Component\DependencyInjection\Loader\ConfiguratorView source
class DefaultsConfigurator extends AbstractServiceConfigurator {
use Traits\AutoconfigureTrait;
use Traits\AutowireTrait;
use Traits\BindTrait;
use Traits\PublicTrait;
public const FACTORY = 'defaults';
public function __construct(ServicesConfigurator $parent, Definition $definition, ?string $path = null) {
parent::__construct($parent, $definition, null, []);
}
/**
* Adds a tag for this definition.
*
* @return $this
*
* @throws InvalidArgumentException when an invalid tag name or attribute is provided
*/
public final function tag(string $name, array $attributes = []) : static {
if ('' === $name) {
throw new InvalidArgumentException('The tag name in "_defaults" must be a non-empty string.');
}
$this->validateAttributes($name, $attributes);
$this->definition
->addTag($name, $attributes);
return $this;
}
/**
* Defines an instanceof-conditional to be applied to following service definitions.
*/
public final function instanceof(string $fqcn) : InstanceofConfigurator {
return $this->parent
->instanceof($fqcn);
}
private function validateAttributes(string $tag, array $attributes, array $path = []) : void {
foreach ($attributes as $name => $value) {
if (\is_array($value)) {
$this->validateAttributes($tag, $value, [
$path,
$name,
]);
}
elseif (!\is_scalar($value ?? '')) {
$name = implode('.', [
$path,
$name,
]);
throw new InvalidArgumentException(\sprintf('Tag "%s", attribute "%s" in "_defaults" must be of a scalar-type or an array of scalar-type.', $tag, $name));
}
}
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
AbstractConfigurator::$definition | protected | property | @internal | ||
AbstractConfigurator::$valuePreProcessor | public static | property | |||
AbstractConfigurator::processValue | public static | function | Checks that a value is valid, optionally replacing Definition and Reference configurators by their configure value. | ||
AbstractConfigurator::__call | public | function | |||
AbstractConfigurator::__sleep | public | function | |||
AbstractConfigurator::__wakeup | public | function | |||
AbstractServiceConfigurator::$defaultTags | private | property | |||
AbstractServiceConfigurator::alias | final public | function | Creates an alias. | ||
AbstractServiceConfigurator::get | final public | function | Gets an already defined service definition. | ||
AbstractServiceConfigurator::load | final public | function | Registers a PSR-4 namespace using a glob pattern. | ||
AbstractServiceConfigurator::remove | final public | function | Removes an already defined service definition or alias. | ||
AbstractServiceConfigurator::set | final public | function | Registers a service. | ||
AbstractServiceConfigurator::stack | final public | function | Registers a stack of decorator services. | ||
AbstractServiceConfigurator::__destruct | public | function | 3 | ||
AbstractServiceConfigurator::__invoke | final public | function | Registers a service. | ||
DefaultsConfigurator::FACTORY | public | constant | Overrides AbstractConfigurator::FACTORY | ||
DefaultsConfigurator::instanceof | final public | function | Defines an instanceof-conditional to be applied to following service definitions. | ||
DefaultsConfigurator::tag | final public | function | Adds a tag for this definition. | ||
DefaultsConfigurator::validateAttributes | private | function | |||
DefaultsConfigurator::__construct | public | function | Overrides AbstractServiceConfigurator::__construct |