Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
<?php declare(strict_types=1);
2
 
3
namespace Invoker\ParameterResolver;
4
 
5
use ReflectionFunctionAbstract;
6
 
7
/**
8
 * Resolves the parameters to use to call the callable.
9
 */
10
interface ParameterResolver
11
{
12
    /**
13
     * Resolves the parameters to use to call the callable.
14
     *
15
     * `$resolvedParameters` contains parameters that have already been resolved.
16
     *
17
     * Each ParameterResolver must resolve parameters that are not already
18
     * in `$resolvedParameters`. That allows to chain multiple ParameterResolver.
19
     *
20
     * @param ReflectionFunctionAbstract $reflection Reflection object for the callable.
21
     * @param array $providedParameters Parameters provided by the caller.
22
     * @param array $resolvedParameters Parameters resolved (indexed by parameter position).
23
     * @return array
24
     */
25
    public function getParameters(
26
        ReflectionFunctionAbstract $reflection,
27
        array $providedParameters,
28
        array $resolvedParameters
29
    );
30
}