Nelmio\Alice\Generator\Resolver\ResolvingContext::createFrom PHP Method

createFrom() public static method

Returns the existing instance if is an object or create a new one otherwise. It also ensure that the key will be added also it won't increment the counter if already present.
public static createFrom ( self $resolving = null, string $key ) : self
$resolving self
$key string
return self
    public static function createFrom(self $resolving = null, string $key) : self
    {
        $instance = null === $resolving ? new self() : $resolving;
        if (false === $instance->has($key)) {
            $instance->add($key);
        }
        return $instance;
    }

Usage Example

Example #1
0
 /**
  * {@inheritdoc}
  *
  * @param Parameter $parameter
  *
  * @throws ParameterNotFoundException
  */
 public function resolve(Parameter $parameter, ParameterBag $unresolvedParameters, ParameterBag $resolvedParameters, ResolvingContext $context = null) : ParameterBag
 {
     $context = ResolvingContext::createFrom($context, $parameter->getKey());
     $self = $this;
     $value = preg_replace_callback(self::PATTERN, function ($match) use($self, $context, $unresolvedParameters, &$resolvedParameters, $parameter) {
         $key = $match['parameter'];
         $resolvedParameters = $self->resolveStringKey($self->resolver, $parameter, $key, $unresolvedParameters, $resolvedParameters, $context);
         return $resolvedParameters->get($key);
     }, $parameter->getValue());
     return $resolvedParameters->with($parameter->withValue($value));
 }
All Usage Examples Of Nelmio\Alice\Generator\Resolver\ResolvingContext::createFrom