Ejemplo n.º 1
0
        public ASTVisitor(StatementList ast)
        {
            this.linkNodes   = new List <Node>();
            this._cfg        = new CFGEntry();
            this.currentNode = this._cfg;
            ast.accept(this);

            CFGExit exit = new CFGExit();

            if (this.linkNodes.Count > 0)
            {
                this.currentNode = new CFGExit();
                linkParentNodes();
            }
            else
            {
                this.currentNode.add(exit);
            }
        }
Ejemplo n.º 2
0
 public DDGVisitor(StatementList ast)
 {
     _errors = new List <ParseException>();
     ast.accept(this);
 }
Ejemplo n.º 3
0
 public CFGVisitor(StatementList ast)
 {
     _previousStatements = new Queue <Statement>();
     _errors             = new List <ParseException>();
     ast.accept(this);
 }