<?php declare(strict_types=1);
namespace Invoker\ParameterResolver;
use ReflectionFunctionAbstract;
/**
* Resolves the parameters to use to call the callable.
*/
interface ParameterResolver
{
/**
* Resolves the parameters to use to call the callable.
*
* `$resolvedParameters` contains parameters that have already been resolved.
*
* Each ParameterResolver must resolve parameters that are not already
* in `$resolvedParameters`. That allows to chain multiple ParameterResolver.
*
* @param ReflectionFunctionAbstract $reflection Reflection object for the callable.
* @param array $providedParameters Parameters provided by the caller.
* @param array $resolvedParameters Parameters resolved (indexed by parameter position).
* @return array
*/
public function getParameters(
ReflectionFunctionAbstract $reflection,
array $providedParameters,
array $resolvedParameters
);
}
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| Container | Folder | 0755 |
|
|
| AssociativeArrayResolver.php | File | 1.08 KB | 0644 |
|
| DefaultValueResolver.php | File | 1.34 KB | 0644 |
|
| NumericArrayResolver.php | File | 1.04 KB | 0644 |
|
| ParameterResolver.php | File | 972 B | 0644 |
|
| ResolverChain.php | File | 1.58 KB | 0644 |
|
| TypeHintResolver.php | File | 1.58 KB | 0644 |
|