package com.google.code.joto.ast.beanstmt; import com.google.code.joto.ast.beanstmt.BeanAST.AssignExpr; import com.google.code.joto.ast.beanstmt.BeanAST.BlockStmt; import com.google.code.joto.ast.beanstmt.BeanAST.ClassExpr; import com.google.code.joto.ast.beanstmt.BeanAST.ExprStmt; import com.google.code.joto.ast.beanstmt.BeanAST.FieldExpr; import com.google.code.joto.ast.beanstmt.BeanAST.IndexedArrayExpr; import com.google.code.joto.ast.beanstmt.BeanAST.LiteralExpr; import com.google.code.joto.ast.beanstmt.BeanAST.MethodApplyExpr; import com.google.code.joto.ast.beanstmt.BeanAST.NewArrayExpr; import com.google.code.joto.ast.beanstmt.BeanAST.NewObjectExpr; import com.google.code.joto.ast.beanstmt.BeanAST.VarDeclStmt; import com.google.code.joto.ast.beanstmt.BeanAST.SimpleNameExpr; /** * Visitor design pattern, for BeanAST class hierarchy * * See also BeanASTVisitor2 with arg/return. */ public interface BeanASTVisitor { void caseExprStmt(ExprStmt p); void caseAssign(AssignExpr p); void caseMethodApplyExpr(MethodApplyExpr p); void caseLitteralExpr(LiteralExpr p); void caseNewObject(NewObjectExpr p); void caseNewArray(NewArrayExpr p); void caseIndexedArray(IndexedArrayExpr p); void caseClassExpr(ClassExpr p); void caseFieldExpr(FieldExpr p); void caseSimpleName(SimpleNameExpr p); void caseVarDecl(VarDeclStmt stmt); void caseBlock(BlockStmt stmt); }