Nelmio\Alice\Generator\Resolver\Parameter\Chainable\ArrayParameterResolver::withResolver PHP Method

withResolver() public method

public withResolver ( Nelmio\Alice\Generator\Resolver\ParameterResolverInterface $resolver ) : self
$resolver Nelmio\Alice\Generator\Resolver\ParameterResolverInterface
return self
    public function withResolver(ParameterResolverInterface $resolver) : self
    {
        return new self($resolver);
    }

Usage Example

 public function testWithersReturnANewModifiedInstance()
 {
     $propertyRefl = (new \ReflectionClass(ArrayParameterResolver::class))->getProperty('resolver');
     $propertyRefl->setAccessible(true);
     $resolver = new ArrayParameterResolver();
     $newResolver = $resolver->withResolver(new FakeParameterResolver());
     $this->assertEquals(new ArrayParameterResolver(), $resolver);
     $this->assertEquals(new ArrayParameterResolver(new FakeParameterResolver()), $newResolver);
 }