Function/Method Reflection

Decorates a ReflectionFunction. Allows setting and retrieving an alternate 'service' name (i.e., the name to be used when calling via a service), setting and retrieving the description (originally set using the docblock contents), retrieving the callback and callback type, retrieving additional method invocation arguments, and retrieving the method prototypes.

 Methods

Proxy reflection calls

__call(string $method, array $args) : mixed

Parameters

$method

string

$args

array

Exceptions

\Zend\Server\Reflection\Exception\BadMethodCallException

Returns

mixed

Constructor

__construct(\ReflectionFunctionAbstract $r, null | string $namespace, null | array $argv) 

Retrieve configuration parameters

__get(string $key) : mixed

Values are retrieved by key from $config. Returns null if no value found.

Parameters

$key

string

Returns

mixed

Set configuration parameters

__set(string $key, mixed $value) : void

Values are stored by $key in $config.

Parameters

$key

string

$value

mixed

Wakeup from serialization

__wakeup() : void

Reflection needs explicit instantiation to work correctly. Re-instantiate reflection object on wakeup.

Retrieve the description

getDescription() : string

Returns

string

Retrieve additional invocation arguments

getInvokeArguments() : array

Returns

array

Return method's namespace

getNamespace() : string

Returns

string

Retrieve all prototypes as array of {@link \Zend\Server\Reflection\Prototype}s

getPrototypes() : \Zend\Server\Reflection\Prototype[]

Set the description

setDescription(string $string) : void

Parameters

$string

string

Exceptions

\Zend\Server\Reflection\Exception\InvalidArgumentException

Set method's namespace

setNamespace(string $namespace) : void

Parameters

$namespace

string

Exceptions

\Zend\Server\Reflection\Exception\InvalidArgumentException

Create signature node tree

addTree(\Zend\Server\Reflection\Node $parent, int $level) : void

Recursive method to build the signature node tree. Increments through each array in $sigParams, adding every value of the next level to the current value (unless the current value is null).

Parameters

$level

int

Build method signatures

buildSignatures(array $return, string $returnDesc, array $paramTypes, array $paramDesc) : array

Builds method signatures using the array of return types and the array of parameters types

Parameters

$return

array

Array of return types

$returnDesc

string

Return value description

$paramTypes

array

Array of arguments (each an array of types)

$paramDesc

array

Array of parameter descriptions

Returns

array

Build the signature tree

buildTree() : array

Builds a signature tree starting at the return values and descending through each method argument. Returns an array of \Zend\Server\Reflection\Nodes.

Returns

array

Use code reflection to create method signatures

reflect() : array

Determines the method help/description text from the function DocBlock comment. Determines method signatures using a combination of ReflectionFunction and parsing of DocBlock @param and @return values.

Exceptions

\Zend\Server\Reflection\Exception\RuntimeException

Returns

array

 Properties

 

Additional arguments to pass to method on invocation

$argv : array

 

Declaring class (needed for when serialization occurs)

$class : string

 

Used to store extra configuration for the method (typically done by the server class, e.g., to indicate whether or not to instantiate a class).

$config : array

Associative array; access is as properties via __get() and __set()

 

Function/method description

$description : string

 

Namespace with which to prefix function/method name

$namespace : string

 

Prototypes

$prototypes : array

 

$reflection

$reflection : \ReflectionFunctionAbstract

 

$paramDesc

$paramDesc 

 

$return

$return 

 

$returnDesc

$returnDesc 

 

$sigParams

$sigParams 

 

$sigParamsDepth

$sigParamsDepth