Documentation

ServiceLocatorTagPass extends AbstractRecursivePass
in package
Uses PriorityTaggedServiceTrait

Applies the "container.service_locator" tag by wrapping references into ServiceClosureArgument instances.

Tags
author

Nicolas Grekas p@tchwork.com

Table of Contents

$container  : ContainerBuilder
$currentId  : mixed
$expressionLanguage  : mixed
$inExpression  : mixed
$processExpressions  : mixed
process()  : mixed
You can modify the container here before it is dumped to PHP code.
register()  : Reference
enableExpressionProcessing()  : mixed
getConstructor()  : ReflectionFunctionAbstract|null
getReflectionMethod()  : ReflectionFunctionAbstract
inExpression()  : bool
processValue()  : mixed
Processes a value found in a definition tree.
findAndSortTaggedServices()  : array<string|int, Reference>
Finds all services with the given tag name and order them by their priority.
getExpressionLanguage()  : ExpressionLanguage

Properties

Methods

enableExpressionProcessing()

protected enableExpressionProcessing() : mixed
Return values
mixed

inExpression()

protected inExpression([bool $reset = true ]) : bool
Parameters
$reset : bool = true
Return values
bool

processValue()

Processes a value found in a definition tree.

protected processValue(mixed $value[, bool $isRoot = false ]) : mixed
Parameters
$value : mixed
$isRoot : bool = false
Return values
mixed

findAndSortTaggedServices()

Finds all services with the given tag name and order them by their priority.

private findAndSortTaggedServices(string|TaggedIteratorArgument $tagName, ContainerBuilder $container) : array<string|int, Reference>

The order of additions must be respected for services having the same priority, and knowing that the \SplPriorityQueue class does not respect the FIFO method, we should not use that class.

Parameters
$tagName : string|TaggedIteratorArgument
$container : ContainerBuilder
Tags
see
https://bugs.php.net/53710
see
https://bugs.php.net/60926
Return values
array<string|int, Reference>

Search results