void SoyFunc::accept(ASTVisitor& visitor) { visitor.visit(*this); for(auto it = children.begin() ; it != children.end() ; ++it) (*it)->accept(visitor); }
void testparse(char *file) { if(!newfile(file)) return; //symbolTable.pushScope(); yyparse(); ASTVisitor visitor; visitor.visit(astRoot); //ASTCGen cgen; //cout << cgen.visit(astRoot) << endl; TypeChecker typecheck; typecheck.visit(astRoot); //delete symbolTable.popScope(); }
void VariableNode::accept(ASTVisitor& visitor) { visitor.visit(*this); }
void ASTRevokePriv::accept(ASTVisitor &v) { v.addToPath(this); v.visit(*this); v.removeFromPath(this); }
void ReturnNode::accept( ASTVisitor& visitor ) { visitor.visit( (*this) ); }
void BlockStatementNode::accept( ASTVisitor& visitor ) { visitor.visit( (*this) ); }
void UnaryNode::accept( ASTVisitor& visitor ) { visitor.visit( (*this) ); }
void IntegerNode::accept( ASTVisitor& visitor ) { visitor.visit( (*this) ); }
void FuncallNode::accept( ASTVisitor& visitor ) { visitor.visit( (*this) ); }
void Declaration::accept(ASTVisitor &v) { v.visit(*this); }
void LoopStatement::accept(ASTVisitor &v) { v.visit(*this); }
void TernaryOperatorNode::accept(ASTVisitor& visitor) { visitor.visit(*this); }
void UnionNode::accept(ASTVisitor& visitor) { visitor.visit(*this); }
void ASTElementTest::accept(ASTVisitor &v) { v.addToPath(this); v.visit(*this); v.removeFromPath(this); }
void ParamAnnotationNode::accept(ASTVisitor& visitor) { visitor.visit(*this); }
void ASTDropIndex::accept(ASTVisitor &v) { v.addToPath(this); v.visit(*this); v.removeFromPath(this); }
void VarInferTypeDeclarationNode::accept(ASTVisitor& visitor) { visitor.visit(this); }
void ExpressionStatement::accept(ASTVisitor &v) { v.visit(*this); }
void BooleanNode::accept( ASTVisitor& visitor ) { visitor.visit( (*this) ); }
void ReturnStatement::accept(ASTVisitor &v) { v.visit(*this); }
void AssignmentNode::accept( ASTVisitor& visitor ) { visitor.visit( (*this) ); }
void ScopeStatement::accept(ASTVisitor &v) { v.visit(*this); }
void FunctionDefNode::accept( ASTVisitor& visitor ) { visitor.visit( (*this) ); }
void ASTDefNamespaceDecl::accept(ASTVisitor &v) { v.addToPath(this); v.visit(*this); v.removeFromPath(this); }
void DoWhileStatementNode::accept( ASTVisitor& visitor ) { visitor.visit( (*this) ); }
void ReturnStatement::accept(ASTVisitor& visitor) const { visitor.visit(std::static_pointer_cast<ReturnStatement const>(shared_from_this())); }
void VarNode::accept( ASTVisitor& visitor ) { visitor.visit( (*this) ); }
void ForInitializer::accept(ASTVisitor& visitor) { visitor.visit(*this); for(auto it = children.begin() ; it != children.end() ; ++it) (*it)->accept(visitor); }
void StringNode::accept(ASTVisitor& visitor) { visitor.visit(this); }
void TemplateFunctionNode::accept(ASTVisitor& visitor) { visitor.visit(this); }