public void RemoveClosures(Node_FunctionDecl root) { AC_FunctionDeclTree acFunctionDeclTree = new AC_FunctionDeclTree(); var fillFunctionDeclarationsInfoVisiter = new FillFunctionDeclarationsInfoVisitor(acFunctionDeclTree); fillFunctionDeclarationsInfoVisiter.Visit(root); var fillFunctionCallsInfoVisiter = new FillFunctionCallsInfoVisitor(acFunctionDeclTree); fillFunctionCallsInfoVisiter.Visit(root); RemoveClosures(acFunctionDeclTree.FunctionsTable[root]); UpFunctions(root, acFunctionDeclTree.FunctionsTable.Values); }
public FillFunctionDeclarationsInfoVisitor(AC_FunctionDeclTree functionDeclTree) { this.AC_FunctionDeclTree = functionDeclTree; }