示例#1
0
void SoyFunc::accept(ASTVisitor& visitor)
{
	visitor.visit(*this);
	for(auto it = children.begin() ; it != children.end() ; ++it)
		(*it)->accept(visitor);

}
示例#2
0
文件: main.cpp 项目: andy9775/rcc
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();

}
示例#3
0
 void VariableNode::accept(ASTVisitor& visitor) {
     visitor.visit(*this);
 }
示例#4
0
void ASTRevokePriv::accept(ASTVisitor &v)
{
    v.addToPath(this);
    v.visit(*this);
    v.removeFromPath(this);
}
示例#5
0
void ReturnNode::accept( ASTVisitor& visitor ) {
  visitor.visit( (*this) );
}
示例#6
0
void BlockStatementNode::accept( ASTVisitor& visitor ) {
  visitor.visit( (*this) );
}
示例#7
0
void UnaryNode::accept( ASTVisitor& visitor ) {
  visitor.visit( (*this) );
}
示例#8
0
void IntegerNode::accept( ASTVisitor& visitor ) {
  visitor.visit( (*this) );
}
示例#9
0
void FuncallNode::accept( ASTVisitor& visitor ) {
  visitor.visit( (*this) );
}
示例#10
0
void Declaration::accept(ASTVisitor &v) { v.visit(*this); }
示例#11
0
void LoopStatement::accept(ASTVisitor &v) { v.visit(*this); }
 void TernaryOperatorNode::accept(ASTVisitor& visitor) {
     visitor.visit(*this);
 }
示例#13
0
 void UnionNode::accept(ASTVisitor& visitor) {
     visitor.visit(*this);
 }
示例#14
0
void ASTElementTest::accept(ASTVisitor &v)
{
    v.addToPath(this);
    v.visit(*this);
    v.removeFromPath(this);
}
 void ParamAnnotationNode::accept(ASTVisitor& visitor) {
     visitor.visit(*this);
 }
示例#16
0
void ASTDropIndex::accept(ASTVisitor &v)
{
    v.addToPath(this);
    v.visit(*this);
    v.removeFromPath(this);
}
void VarInferTypeDeclarationNode::accept(ASTVisitor& visitor) { visitor.visit(this); }
示例#18
0
void ExpressionStatement::accept(ASTVisitor &v) { v.visit(*this); }
示例#19
0
void BooleanNode::accept( ASTVisitor& visitor ) {
  visitor.visit( (*this) );
}
示例#20
0
void ReturnStatement::accept(ASTVisitor &v) { v.visit(*this); }
示例#21
0
void AssignmentNode::accept( ASTVisitor& visitor ) {
  visitor.visit( (*this) );
}
示例#22
0
void ScopeStatement::accept(ASTVisitor &v) { v.visit(*this); }
示例#23
0
void FunctionDefNode::accept( ASTVisitor& visitor ) {
  visitor.visit( (*this) );
}
示例#24
0
void ASTDefNamespaceDecl::accept(ASTVisitor &v)
{
    v.addToPath(this);
    v.visit(*this);
    v.removeFromPath(this);
}
示例#25
0
void DoWhileStatementNode::accept( ASTVisitor& visitor ) {
  visitor.visit( (*this) );
}
示例#26
0
		void ReturnStatement::accept(ASTVisitor& visitor) const
		{
			visitor.visit(std::static_pointer_cast<ReturnStatement const>(shared_from_this()));
		}
示例#27
0
void VarNode::accept( ASTVisitor& visitor ) {
  visitor.visit( (*this) );
}
示例#28
0
void ForInitializer::accept(ASTVisitor& visitor)
{
	visitor.visit(*this);
	for(auto it = children.begin() ; it != children.end() ; ++it)
		(*it)->accept(visitor);
}
示例#29
0
void StringNode::accept(ASTVisitor& visitor) { visitor.visit(this); }
void TemplateFunctionNode::accept(ASTVisitor& visitor) { visitor.visit(this); }