public VB6NodeTree(ParseTree pnode) { var visitorCallback = Init(); var visitor = new VB6ASTTreeViewGeneratorVisitor(visitorCallback); visitor.visit(pnode); }
public static void Visit(CompileResult compileResult, VisitorCallback callback) { if (compileResult == null) { throw new ArgumentNullException(nameof(compileResult)); } var program = compileResult.Program; if (compileResult.Program == null) { throw new ArgumentNullException(nameof(compileResult)); } var modules = program.getModules(); var visitor = new VB6ASTTreeViewGeneratorVisitor(callback); for (int i = 0; i < modules.size(); i++) { var module = (ModuleImpl)modules.get(i); var ctx = module.getCtx(); visitor.visit(ctx); } }
public static List <ImmutableList <IndexedPath> > GetExtendedPathList(ParseTree pnode) { var paths = new List <ImmutableList <IndexedPath> >(); ParseTree root = null; VB6NodeTree nodeTree = new VB6NodeTree(pnode); var visitorCallback = new VisitorCallback() { Callback = (node, parent) => { if (root == null) { root = node; } paths.Add(nodeTree.GetPath(node)); } }; var visitor = new VB6ASTTreeViewGeneratorVisitor(visitorCallback); visitor.visit(pnode); return(paths); }