public static function closure($returnsReference, array $parameterExpressions, array $scopedVariableNames) { return new self(self::TYPE_CLOSURE, $returnsReference, null, null, null, null, $parameterExpressions, $scopedVariableNames); }
private function getClosureNodeSignature(Node\Expr\Closure $node) { $scopedVariableNames = []; foreach ($node->uses as $use) { $scopedVariableNames[] = $use->var; } return FunctionSignature::closure($node->byRef, $this->getParameterExpressions($node->params), $scopedVariableNames); }