trait ParentTrait
Hierarchy
- trait \Symfony\Component\DependencyInjection\Loader\Configurator\Traits\ParentTrait
File
-
vendor/
symfony/ dependency-injection/ Loader/ Configurator/ Traits/ ParentTrait.php, line 17
Namespace
Symfony\Component\DependencyInjection\Loader\Configurator\TraitsView source
trait ParentTrait {
/**
* Sets the Definition to inherit from.
*
* @return $this
*
* @throws InvalidArgumentException when parent cannot be set
*/
public final function parent(string $parent) : static {
if (!$this->allowParent) {
throw new InvalidArgumentException(\sprintf('A parent cannot be defined when either "_instanceof" or "_defaults" are also defined for service prototype "%s".', $this->id));
}
if ($this->definition instanceof ChildDefinition) {
$this->definition
->setParent($parent);
}
else {
// cast Definition to ChildDefinition
$definition = serialize($this->definition);
$definition = substr_replace($definition, '53', 2, 2);
$definition = substr_replace($definition, 'Child', 44, 0);
$definition = unserialize($definition);
$this->definition = $definition->setParent($parent);
}
return $this;
}
}
Members
Title Sort descending | Modifiers | Object type | Summary |
---|---|---|---|
ParentTrait::parent | final public | function | Sets the Definition to inherit from. |