public override bool Walk(FunctionExpression node) { if (WalkFunction(node.Function, true)) { node.Function.Body.Walk(this); EnvironmentRecord funcScope; VariableDef funcVarDef; if (node.Function.Name != null && _scope.GlobalEnvironment.TryGetNodeEnvironment(node.Function, out funcScope) && !funcScope.TryGetVariable(node.Function.Name, out funcVarDef)) { // the function variable gets added if it's not // already declared. var funcDef = funcScope.AddLocatedVariable( node.Function.Name, node.Function, _curUnit ); funcDef.AddTypes( _curUnit, ((FunctionEnvironmentRecord)funcScope).Function.Proxy ); } PostWalk(node.Function); } return false; }
public override bool Walk(FunctionExpression functionExpression) { return(true); }
public override bool Walk(FunctionExpression functionExpression) { AddNode(functionExpression); return true; }
public override bool Walk(FunctionExpression functionExpression) { return true; }