if ($hasSelfRef && !
$forConstructor && !
$forConstructor = !
$this->circularReferences
[$id][$targetId]) { $code =
$this->
addInlineService($id,
$definition,
$definition);
} else { $code = '';
} if (isset($this->referenceVariables
[$targetId]) || (2 >
$callCount && (!
$hasSelfRef || !
$forConstructor))) { return $code;
} $name =
$this->
getNextVariableName();
$this->referenceVariables
[$targetId] =
new Variable($name);
$reference = ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE >=
$behavior ?
new Reference($targetId,
$behavior) : null;
$code .=
sprintf(" \$%s = %s;\n",
$name,
$this->
getServiceCall($targetId,
$reference));
if (!
$hasSelfRef || !
$forConstructor) { return $code;
} $code .=
sprintf(<<<'EOTXT'
if (isset($container->%s[%s])) {
return $container->%1$s[%2$s];
}