/** * Invocation overloading * * @param var $context * @return var */ public function __invoke($context) { $r = $context->lookup($this->name); if ($context->isCallable($r)) { // Subexpressions are called with their options as arguments, // which in turn may be subexpressions or values to be looked up. $pass = []; foreach ($this->options as $key => $option) { $pass[$key] = $option($context); } return $r(null, $context, $pass); } else { return $r; } }
/** * Invocation overloading * * @param var $context * @return var */ public function __invoke($context) { return $context->lookup($this->name); }