public void VisitNode(JSFunctionExpression fn) { // Create a new visitor for nested function expressions if (Stack.OfType<JSFunctionExpression>().Skip(1).FirstOrDefault() != null) { var nested = new EmulateStructAssignment(TypeSystem, FunctionSource, CLR, OptimizeCopies); nested.Visit(fn); return; } var countRefs = new CountVariableReferences(ReferenceCounts); countRefs.Visit(fn.Body); SecondPass = FunctionSource.GetSecondPass(fn.Method); VisitChildren(fn); }
public void VisitNode(JSFunctionExpression fn) { // Create a new visitor for nested function expressions if (Stack.OfType <JSFunctionExpression>().Skip(1).FirstOrDefault() != null) { var nested = new EmulateStructAssignment(TypeSystem, FunctionSource, CLR, OptimizeCopies); nested.Visit(fn); return; } var countRefs = new CountVariableReferences(ReferenceCounts); countRefs.Visit(fn.Body); SecondPass = FunctionSource.GetSecondPass(fn.Method); VisitChildren(fn); }
public void VisitNode(JSFunctionExpression fn) { // Create a new visitor for nested function expressions if (Stack.OfType<JSFunctionExpression>().Skip(1).FirstOrDefault() != null) { var nested = new EmulateStructAssignment(TypeSystem, CLR); nested.Visit(fn); return; } var countRefs = new CountVariableReferences(ReferenceCounts); countRefs.Visit(fn); VisitChildren(fn); }