visitFunctionNode method

Null visitFunctionNode(
  1. FunctionNode node
)
override

Implementation

visitFunctionNode(FunctionNode node) {
  //if( checkProperty(node) ) return;
  ScopeArea area = ScopeArea(node, scope: node, parent: scopeArea);
  scopeArea.children.add(area);
  node.environment = new Set<String>();
  Scope oldScope = currentScope;
  ScopeArea oldArea = scopeArea;
  currentScope = node;
  scopeArea = area;
  node.environment.add('arguments');
  if (node.isExpression && node.name != null) {
    addVar(node.name!);
  }
  node.params.forEach(addVar);
  visit(node.body);
  currentScope = oldScope;
  scopeArea = oldArea;
}