Automattic\WooCommerce\Vendor\League\Container
ReflectionContainer::call() public WC 1.0
Invoke a callable via the container.
{} It's a method of the class: ReflectionContainer{}
No Hooks.
Return
Mixed.
Usage
$ReflectionContainer = new ReflectionContainer(); $ReflectionContainer->call( $callable, $args );
- $callable(callable) (required)
- -
- $args(array)
- -
Code of ReflectionContainer::call() ReflectionContainer::call WC 5.0.0
public function call(callable $callable, array $args = [])
{
if (is_string($callable) && strpos($callable, '::') !== false) {
$callable = explode('::', $callable);
}
if (is_array($callable)) {
if (is_string($callable[0])) {
$callable[0] = $this->getContainer()->get($callable[0]);
}
$reflection = new ReflectionMethod($callable[0], $callable[1]);
if ($reflection->isStatic()) {
$callable[0] = null;
}
return $reflection->invokeArgs($callable[0], $this->reflectArguments($reflection, $args));
}
if (is_object($callable)) {
$reflection = new ReflectionMethod($callable, '__invoke');
return $reflection->invokeArgs($callable, $this->reflectArguments($reflection, $args));
}
$reflection = new ReflectionFunction(\Closure::fromCallable($callable));
return $reflection->invokeArgs($this->reflectArguments($reflection, $args));
}