org.tromer.jie.visitor
Class CallingDepthFirst

java.lang.Object
  |
  +--org.tromer.jie.visitor.CallingDepthFirst
Direct Known Subclasses:
ContextualVisitor

public class CallingDepthFirst
extends java.lang.Object
implements ObjectVisitor

The CallingDepthFirst class is similar to ObjectDepthFirst but adds a call to another ObjectVisitor (specified as a constructor argument) at the beginning of every visit() method. The callee visitor normally should not perform recursive visitation, since this is already handled by CallingDepthFirst. If the return value of the callee is the static object visitStopper, the visit process will not be done for the current node (a "tree cut").

Autogenerated from ObjectDepthFirst.java by makeVisitors.pl. Original description:

Provides default methods which visit each node in the tree in depth-first order. Your visitors may extend this class.


Field Summary
protected  ObjectVisitor _callee
           
static java.lang.Object visitStopper
           
 
Constructor Summary
CallingDepthFirst(ObjectVisitor callee)
           
 
Method Summary
 java.lang.Object visit(AdditiveExpression n, java.lang.Object argu)
           multiplicativeExpression -> MultiplicativeExpression() nodeListOptional -> ( ( "+" | "-" ) MultiplicativeExpression() )*
 java.lang.Object visit(AllocationExpression n, java.lang.Object argu)
           nodeChoice -> "new" PrimitiveType() ArrayDimsAndInits() | "new" Name() ( ArrayDimsAndInits() | Arguments() [ ClassBody() ] )
 java.lang.Object visit(AndExpression n, java.lang.Object argu)
           equalityExpression -> EqualityExpression() nodeListOptional -> ( "&" EqualityExpression() )*
 java.lang.Object visit(ArgumentList n, java.lang.Object argu)
           expression -> Expression() nodeListOptional -> ( "," Expression() )*
 java.lang.Object visit(Arguments n, java.lang.Object argu)
           nodeToken -> "(" nodeOptional -> [ ArgumentList() ] nodeToken1 -> ")"
 java.lang.Object visit(ArrayDimsAndInits n, java.lang.Object argu)
           nodeChoice -> ( "[" Expression() "]" )+ ( "[" "]" )* | ( "[" "]" )+ ArrayInitializer()
 java.lang.Object visit(ArrayInitializer n, java.lang.Object argu)
           nodeToken -> "{" nodeOptional -> [ VariableInitializer() ( "," VariableInitializer() )* ] nodeOptional1 -> [ "," ] nodeToken1 -> "}"
 java.lang.Object visit(AssignmentOperator n, java.lang.Object argu)
           nodeChoice -> "=" | "*=" | "/=" | "%=" | "+=" | "-=" | "<<=" | ">>=" | ">>>=" | "&=" | "^=" | "|="
 java.lang.Object visit(Block n, java.lang.Object argu)
           nodeToken -> "{" nodeListOptional -> ( BlockStatement() )* nodeToken1 -> "}"
 java.lang.Object visit(BlockStatement n, java.lang.Object argu)
           nodeChoice -> LocalVariableDeclaration() ";" | Statement() | UnmodifiedClassDeclaration() | UnmodifiedInterfaceDeclaration()
 java.lang.Object visit(BooleanLiteral n, java.lang.Object argu)
           nodeChoice -> "true" | "false"
 java.lang.Object visit(BreakStatement n, java.lang.Object argu)
           nodeToken -> "break" nodeOptional -> [ <IDENTIFIER> ] nodeToken1 -> ";"
 java.lang.Object visit(CastExpression n, java.lang.Object argu)
           nodeChoice -> "(" Type() ")" UnaryExpression() | "(" Type() ")" UnaryExpressionNotPlusMinus()
 java.lang.Object visit(CastLookahead n, java.lang.Object argu)
           nodeChoice -> "(" PrimitiveType() | "(" Name() "[" "]" | "(" Name() ")" ( "~" | "!" | "(" | <IDENTIFIER> | "this" | "super" | "new" | Literal() )
 java.lang.Object visit(ClassBodyDeclaration n, java.lang.Object argu)
           nodeChoice -> Initializer() | NestedClassDeclaration() | NestedInterfaceDeclaration() | ConstructorDeclaration() | MethodDeclaration() | FieldDeclaration() | ";"
 java.lang.Object visit(ClassBody n, java.lang.Object argu)
           nodeToken -> "{" nodeListOptional -> ( ClassBodyDeclaration() )* nodeToken1 -> "}"
 java.lang.Object visit(ClassDeclaration n, java.lang.Object argu)
           nodeListOptional -> ( "abstract" | "final" | "public" | "strictfp" )* unmodifiedClassDeclaration -> UnmodifiedClassDeclaration()
 java.lang.Object visit(CompilationUnit n, java.lang.Object argu)
           nodeOptional -> [ PackageDeclaration() ] nodeListOptional -> ( ImportDeclaration() )* nodeListOptional1 -> ( TypeDeclaration() )* nodeToken -> <EOF>
 java.lang.Object visit(ConditionalAndExpression n, java.lang.Object argu)
           inclusiveOrExpression -> InclusiveOrExpression() nodeListOptional -> ( "&&" InclusiveOrExpression() )*
 java.lang.Object visit(ConditionalAndExpressionWrapper n, java.lang.Object argu)
           conditionalAndExpression -> ConditionalAndExpression()
 java.lang.Object visit(ConditionalExpression n, java.lang.Object argu)
           conditionalOrExpression -> ConditionalOrExpression() nodeOptional -> [ "?" Expression() ":" ConditionalExpression() ]
 java.lang.Object visit(ConditionalOrExpression n, java.lang.Object argu)
           conditionalAndExpressionWrapper -> ConditionalAndExpressionWrapper() nodeListOptional -> ( "||" ConditionalAndExpressionWrapper() )*
 java.lang.Object visit(ConstructorDeclaration n, java.lang.Object argu)
           nodeOptional -> [ "public" | "protected" | "private" ] nodeToken -> <IDENTIFIER> formalParameters -> FormalParameters() nodeOptional1 -> [ "throws" NameList() ] nodeToken1 -> "{" nodeOptional2 -> [ ExplicitConstructorInvocation() ] topBlockStatements -> TopBlockStatements() nodeToken2 -> "}"
 java.lang.Object visit(ContinueStatement n, java.lang.Object argu)
           nodeToken -> "continue" nodeOptional -> [ <IDENTIFIER> ] nodeToken1 -> ";"
 java.lang.Object visit(DoStatement n, java.lang.Object argu)
           nodeToken -> "do" statement -> Statement() nodeToken1 -> "while" nodeToken2 -> "(" expression -> Expression() nodeToken3 -> ")" nodeToken4 -> ";"
 java.lang.Object visit(EmptyStatement n, java.lang.Object argu)
           nodeToken -> ";"
 java.lang.Object visit(EqualityExpression n, java.lang.Object argu)
           instanceOfExpression -> InstanceOfExpression() nodeListOptional -> ( ( "==" | "!=" ) InstanceOfExpression() )*
 java.lang.Object visit(ExclusiveOrExpression n, java.lang.Object argu)
           andExpression -> AndExpression() nodeListOptional -> ( "^" AndExpression() )*
 java.lang.Object visit(ExplicitConstructorInvocation n, java.lang.Object argu)
           nodeChoice -> "this" Arguments() ";" | [ PrimaryExpression() "." ] "super" Arguments() ";"
 java.lang.Object visit(Expression n, java.lang.Object argu)
           conditionalExpression -> ConditionalExpression() nodeOptional -> [ AssignmentOperator() Expression() ]
 java.lang.Object visit(FieldDeclaration n, java.lang.Object argu)
           nodeListOptional -> ( "public" | "protected" | "private" | "static" | "final" | "transient" | "volatile" )* type -> Type() variableDeclarator -> VariableDeclarator() nodeListOptional1 -> ( "," VariableDeclarator() )* nodeToken -> ";"
 java.lang.Object visit(ForInit n, java.lang.Object argu)
           nodeChoice -> LocalVariableDeclaration() | StatementExpressionList()
 java.lang.Object visit(FormalParameter n, java.lang.Object argu)
           nodeOptional -> [ "final" ] type -> Type() variableDeclaratorId -> VariableDeclaratorId()
 java.lang.Object visit(FormalParameters n, java.lang.Object argu)
           nodeToken -> "(" nodeOptional -> [ FormalParameter() ( "," FormalParameter() )* ] nodeToken1 -> ")"
 java.lang.Object visit(ForStatement n, java.lang.Object argu)
           nodeToken -> "for" nodeToken1 -> "(" nodeOptional -> [ ForInit() ] nodeToken2 -> ";" nodeOptional1 -> [ Expression() ] nodeToken3 -> ";" nodeOptional2 -> [ ForUpdate() ] nodeToken4 -> ")" statement -> Statement()
 java.lang.Object visit(ForUpdate n, java.lang.Object argu)
           statementExpressionList -> StatementExpressionList()
 java.lang.Object visit(IfStatement n, java.lang.Object argu)
           nodeToken -> "if" nodeToken1 -> "(" expression -> Expression() nodeToken2 -> ")" statement -> Statement() nodeOptional -> [ "else" Statement() ]
 java.lang.Object visit(ImportDeclaration n, java.lang.Object argu)
           nodeToken -> "import" name -> Name() nodeOptional -> [ "." "*" ] nodeToken1 -> ";"
 java.lang.Object visit(InclusiveOrExpression n, java.lang.Object argu)
           exclusiveOrExpression -> ExclusiveOrExpression() nodeListOptional -> ( "|" ExclusiveOrExpression() )*
 java.lang.Object visit(Initializer n, java.lang.Object argu)
           nodeOptional -> [ "static" ] topBlock -> TopBlock()
 java.lang.Object visit(InstanceOfExpression n, java.lang.Object argu)
           relationalExpression -> RelationalExpression() nodeOptional -> [ "instanceof" Type() ]
 java.lang.Object visit(InterfaceDeclaration n, java.lang.Object argu)
           nodeListOptional -> ( "abstract" | "public" | "strictfp" )* unmodifiedInterfaceDeclaration -> UnmodifiedInterfaceDeclaration()
 java.lang.Object visit(InterfaceMemberDeclaration n, java.lang.Object argu)
           nodeChoice -> NestedClassDeclaration() | NestedInterfaceDeclaration() | MethodDeclaration() | FieldDeclaration() | ";"
 java.lang.Object visit(LabeledStatement n, java.lang.Object argu)
           nodeToken -> <IDENTIFIER> nodeToken1 -> ":" statement -> Statement()
 java.lang.Object visit(Literal n, java.lang.Object argu)
           nodeChoice -> <INTEGER_LITERAL> | <FLOATING_POINT_LITERAL> | <CHARACTER_LITERAL> | <STRING_LITERAL> | BooleanLiteral() | NullLiteral()
 java.lang.Object visit(LocalVariableDeclaration n, java.lang.Object argu)
           nodeOptional -> [ "final" ] type -> Type() variableDeclarator -> VariableDeclarator() nodeListOptional -> ( "," VariableDeclarator() )*
 java.lang.Object visit(MethodDeclarationLookahead n, java.lang.Object argu)
           nodeListOptional -> ( "public" | "protected" | "private" | "static" | "abstract" | "final" | "native" | "synchronized" | "strictfp" )* resultType -> ResultType() nodeToken -> <IDENTIFIER> nodeToken1 -> "("
 java.lang.Object visit(MethodDeclaration n, java.lang.Object argu)
           nodeListOptional -> ( "public" | "protected" | "private" | "static" | "abstract" | "final" | "native" | "synchronized" | "strictfp" )* resultType -> ResultType() methodDeclarator -> MethodDeclarator() nodeOptional -> [ "throws" NameList() ] nodeChoice -> ( TopBlock() | ";" )
 java.lang.Object visit(MethodDeclarator n, java.lang.Object argu)
           nodeToken -> <IDENTIFIER> formalParameters -> FormalParameters() nodeListOptional -> ( "[" "]" )*
 java.lang.Object visit(MultiplicativeExpression n, java.lang.Object argu)
           unaryExpression -> UnaryExpression() nodeListOptional -> ( ( "*" | "/" | "%" ) UnaryExpression() )*
 java.lang.Object visit(NameList n, java.lang.Object argu)
           name -> Name() nodeListOptional -> ( "," Name() )*
 java.lang.Object visit(Name n, java.lang.Object argu)
           nodeToken -> <IDENTIFIER> nodeListOptional -> ( "." <IDENTIFIER> )*
 java.lang.Object visit(NestedClassDeclaration n, java.lang.Object argu)
           nodeListOptional -> ( "static" | "abstract" | "final" | "public" | "protected" | "private" | "strictfp" )* unmodifiedClassDeclaration -> UnmodifiedClassDeclaration()
 java.lang.Object visit(NestedInterfaceDeclaration n, java.lang.Object argu)
           nodeListOptional -> ( "static" | "abstract" | "final" | "public" | "protected" | "private" | "strictfp" )* unmodifiedInterfaceDeclaration -> UnmodifiedInterfaceDeclaration()
 java.lang.Object visit(NodeList n, java.lang.Object argu)
           
 java.lang.Object visit(NodeListOptional n, java.lang.Object argu)
           
 java.lang.Object visit(NodeOptional n, java.lang.Object argu)
           
 java.lang.Object visit(NodeSequence n, java.lang.Object argu)
           
 java.lang.Object visit(NodeToken n, java.lang.Object argu)
           
 java.lang.Object visit(NullLiteral n, java.lang.Object argu)
           nodeToken -> "null"
 java.lang.Object visit(PackageDeclaration n, java.lang.Object argu)
           nodeToken -> "package" name -> Name() nodeToken1 -> ";"
 java.lang.Object visit(PostfixExpression n, java.lang.Object argu)
           primaryExpression -> PrimaryExpression() nodeOptional -> [ "++" | "--" ]
 java.lang.Object visit(PreDecrementExpression n, java.lang.Object argu)
           nodeToken -> "--" primaryExpression -> PrimaryExpression()
 java.lang.Object visit(PreIncrementExpression n, java.lang.Object argu)
           nodeToken -> "++" primaryExpression -> PrimaryExpression()
 java.lang.Object visit(PrimaryExpression n, java.lang.Object argu)
           primaryPrefix -> PrimaryPrefix() nodeListOptional -> ( PrimarySuffix() )*
 java.lang.Object visit(PrimaryPrefix n, java.lang.Object argu)
           nodeChoice -> Literal() | "this" | "super" "." <IDENTIFIER> | "(" Expression() ")" | AllocationExpression() | ResultType() "." "class" | Name()
 java.lang.Object visit(PrimarySuffix n, java.lang.Object argu)
           nodeChoice -> "." "this" | "." AllocationExpression() | "[" Expression() "]" | "." <IDENTIFIER> | Arguments()
 java.lang.Object visit(PrimitiveType n, java.lang.Object argu)
           nodeChoice -> "boolean" | "char" | "byte" | "short" | "int" | "long" | "float" | "double"
 java.lang.Object visit(RelationalExpression n, java.lang.Object argu)
           shiftExpression -> ShiftExpression() nodeListOptional -> ( ( "<" | ">" | "<=" | ">=" ) ShiftExpression() )*
 java.lang.Object visit(ResultType n, java.lang.Object argu)
           nodeChoice -> "void" | Type()
 java.lang.Object visit(ReturnStatement n, java.lang.Object argu)
           nodeToken -> "return" nodeOptional -> [ Expression() ] nodeToken1 -> ";"
 java.lang.Object visit(ShiftExpression n, java.lang.Object argu)
           additiveExpression -> AdditiveExpression() nodeListOptional -> ( ( "<<" | ">>" | ">>>" ) AdditiveExpression() )*
 java.lang.Object visit(StatementExpressionList n, java.lang.Object argu)
           statementExpression -> StatementExpression() nodeListOptional -> ( "," StatementExpression() )*
 java.lang.Object visit(StatementExpression n, java.lang.Object argu)
           nodeChoice -> PreIncrementExpression() | PreDecrementExpression() | PrimaryExpression() [ "++" | "--" | AssignmentOperator() Expression() ]
 java.lang.Object visit(Statement n, java.lang.Object argu)
           nodeChoice -> LabeledStatement() | Block() | EmptyStatement() | StatementExpression() ";" | SwitchStatement() | IfStatement() | WhileStatement() | DoStatement() | ForStatement() | BreakStatement() | ContinueStatement() | ReturnStatement() | ThrowStatement() | SynchronizedStatement() | TryStatement()
 java.lang.Object visit(SwitchLabel n, java.lang.Object argu)
           nodeChoice -> "case" Expression() ":" | "default" ":"
 java.lang.Object visit(SwitchStatement n, java.lang.Object argu)
           nodeToken -> "switch" nodeToken1 -> "(" expression -> Expression() nodeToken2 -> ")" nodeToken3 -> "{" nodeListOptional -> ( SwitchLabel() ( BlockStatement() )* )* nodeToken4 -> "}"
 java.lang.Object visit(SynchronizedStatement n, java.lang.Object argu)
           nodeToken -> "synchronized" nodeToken1 -> "(" expression -> Expression() nodeToken2 -> ")" block -> Block()
 java.lang.Object visit(ThrowStatement n, java.lang.Object argu)
           nodeToken -> "throw" expression -> Expression() nodeToken1 -> ";"
 java.lang.Object visit(TopBlock n, java.lang.Object argu)
           nodeToken -> "{" topBlockStatements -> TopBlockStatements() nodeToken1 -> "}"
 java.lang.Object visit(TopBlockStatements n, java.lang.Object argu)
           nodeListOptional -> ( BlockStatement() )*
 java.lang.Object visit(TryStatement n, java.lang.Object argu)
           nodeToken -> "try" block -> Block() nodeListOptional -> ( "catch" "(" FormalParameter() ")" Block() )* nodeOptional -> [ "finally" Block() ]
 java.lang.Object visit(TypeDeclaration n, java.lang.Object argu)
           nodeChoice -> ClassDeclaration() | InterfaceDeclaration() | ";"
 java.lang.Object visit(Type n, java.lang.Object argu)
           nodeChoice -> ( PrimitiveType() | Name() ) nodeListOptional -> ( "[" "]" )*
 java.lang.Object visit(UnaryExpressionNotPlusMinus n, java.lang.Object argu)
           nodeChoice -> ( "~" | "!" ) UnaryExpression() | CastExpression() | PostfixExpression()
 java.lang.Object visit(UnaryExpression n, java.lang.Object argu)
           nodeChoice -> ( "+" | "-" ) UnaryExpression() | PreIncrementExpression() | PreDecrementExpression() | UnaryExpressionNotPlusMinus()
 java.lang.Object visit(UnmodifiedClassDeclaration n, java.lang.Object argu)
           nodeToken -> "class" nodeToken1 -> <IDENTIFIER> nodeOptional -> [ "extends" Name() ] nodeOptional1 -> [ "implements" NameList() ] classBody -> ClassBody()
 java.lang.Object visit(UnmodifiedInterfaceDeclaration n, java.lang.Object argu)
           nodeToken -> "interface" nodeToken1 -> <IDENTIFIER> nodeOptional -> [ "extends" NameList() ] nodeToken2 -> "{" nodeListOptional -> ( InterfaceMemberDeclaration() )* nodeToken3 -> "}"
 java.lang.Object visit(VariableDeclaratorId n, java.lang.Object argu)
           nodeToken -> <IDENTIFIER> nodeListOptional -> ( "[" "]" )*
 java.lang.Object visit(VariableDeclarator n, java.lang.Object argu)
           variableDeclaratorId -> VariableDeclaratorId() nodeOptional -> [ "=" VariableInitializer() ]
 java.lang.Object visit(VariableInitializer n, java.lang.Object argu)
           nodeChoice -> ArrayInitializer() | Expression()
 java.lang.Object visit(WhileStatement n, java.lang.Object argu)
           nodeToken -> "while" nodeToken1 -> "(" expression -> Expression() nodeToken2 -> ")" statement -> Statement()
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_callee

protected ObjectVisitor _callee

visitStopper

public static final java.lang.Object visitStopper
Constructor Detail

CallingDepthFirst

public CallingDepthFirst(ObjectVisitor callee)
Method Detail

visit

public java.lang.Object visit(NodeList n,
                              java.lang.Object argu)
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(NodeListOptional n,
                              java.lang.Object argu)
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(NodeOptional n,
                              java.lang.Object argu)
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(NodeSequence n,
                              java.lang.Object argu)
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(NodeToken n,
                              java.lang.Object argu)
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(CompilationUnit n,
                              java.lang.Object argu)
 nodeOptional -> [ PackageDeclaration() ]
 nodeListOptional -> ( ImportDeclaration() )*
 nodeListOptional1 -> ( TypeDeclaration() )*
 nodeToken -> <EOF>
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(PackageDeclaration n,
                              java.lang.Object argu)
 nodeToken -> "package"
 name -> Name()
 nodeToken1 -> ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ImportDeclaration n,
                              java.lang.Object argu)
 nodeToken -> "import"
 name -> Name()
 nodeOptional -> [ "." "*" ]
 nodeToken1 -> ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(TypeDeclaration n,
                              java.lang.Object argu)
 nodeChoice -> ClassDeclaration()
       | InterfaceDeclaration()
       | ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ClassDeclaration n,
                              java.lang.Object argu)
 nodeListOptional -> ( "abstract" | "final" | "public" | "strictfp" )*
 unmodifiedClassDeclaration -> UnmodifiedClassDeclaration()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(UnmodifiedClassDeclaration n,
                              java.lang.Object argu)
 nodeToken -> "class"
 nodeToken1 -> <IDENTIFIER>
 nodeOptional -> [ "extends" Name() ]
 nodeOptional1 -> [ "implements" NameList() ]
 classBody -> ClassBody()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ClassBody n,
                              java.lang.Object argu)
 nodeToken -> "{"
 nodeListOptional -> ( ClassBodyDeclaration() )*
 nodeToken1 -> "}"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(NestedClassDeclaration n,
                              java.lang.Object argu)
 nodeListOptional -> ( "static" | "abstract" | "final" | "public" | "protected" | "private" | "strictfp" )*
 unmodifiedClassDeclaration -> UnmodifiedClassDeclaration()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ClassBodyDeclaration n,
                              java.lang.Object argu)
 nodeChoice -> Initializer()
       | NestedClassDeclaration()
       | NestedInterfaceDeclaration()
       | ConstructorDeclaration()
       | MethodDeclaration()
       | FieldDeclaration()
       | ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(MethodDeclarationLookahead n,
                              java.lang.Object argu)
 nodeListOptional -> ( "public" | "protected" | "private" | "static" | "abstract" | "final" | "native" | "synchronized" | "strictfp" )*
 resultType -> ResultType()
 nodeToken -> <IDENTIFIER>
 nodeToken1 -> "("
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(InterfaceDeclaration n,
                              java.lang.Object argu)
 nodeListOptional -> ( "abstract" | "public" | "strictfp" )*
 unmodifiedInterfaceDeclaration -> UnmodifiedInterfaceDeclaration()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(NestedInterfaceDeclaration n,
                              java.lang.Object argu)
 nodeListOptional -> ( "static" | "abstract" | "final" | "public" | "protected" | "private" | "strictfp" )*
 unmodifiedInterfaceDeclaration -> UnmodifiedInterfaceDeclaration()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(UnmodifiedInterfaceDeclaration n,
                              java.lang.Object argu)
 nodeToken -> "interface"
 nodeToken1 -> <IDENTIFIER>
 nodeOptional -> [ "extends" NameList() ]
 nodeToken2 -> "{"
 nodeListOptional -> ( InterfaceMemberDeclaration() )*
 nodeToken3 -> "}"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(InterfaceMemberDeclaration n,
                              java.lang.Object argu)
 nodeChoice -> NestedClassDeclaration()
       | NestedInterfaceDeclaration()
       | MethodDeclaration()
       | FieldDeclaration()
       | ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(FieldDeclaration n,
                              java.lang.Object argu)
 nodeListOptional -> ( "public" | "protected" | "private" | "static" | "final" | "transient" | "volatile" )*
 type -> Type()
 variableDeclarator -> VariableDeclarator()
 nodeListOptional1 -> ( "," VariableDeclarator() )*
 nodeToken -> ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(VariableDeclarator n,
                              java.lang.Object argu)
 variableDeclaratorId -> VariableDeclaratorId()
 nodeOptional -> [ "=" VariableInitializer() ]
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(VariableDeclaratorId n,
                              java.lang.Object argu)
 nodeToken -> <IDENTIFIER>
 nodeListOptional -> ( "[" "]" )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(VariableInitializer n,
                              java.lang.Object argu)
 nodeChoice -> ArrayInitializer()
       | Expression()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ArrayInitializer n,
                              java.lang.Object argu)
 nodeToken -> "{"
 nodeOptional -> [ VariableInitializer() ( "," VariableInitializer() )* ]
 nodeOptional1 -> [ "," ]
 nodeToken1 -> "}"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(MethodDeclaration n,
                              java.lang.Object argu)
 nodeListOptional -> ( "public" | "protected" | "private" | "static" | "abstract" | "final" | "native" | "synchronized" | "strictfp" )*
 resultType -> ResultType()
 methodDeclarator -> MethodDeclarator()
 nodeOptional -> [ "throws" NameList() ]
 nodeChoice -> ( TopBlock() | ";" )
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(MethodDeclarator n,
                              java.lang.Object argu)
 nodeToken -> <IDENTIFIER>
 formalParameters -> FormalParameters()
 nodeListOptional -> ( "[" "]" )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(FormalParameters n,
                              java.lang.Object argu)
 nodeToken -> "("
 nodeOptional -> [ FormalParameter() ( "," FormalParameter() )* ]
 nodeToken1 -> ")"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(FormalParameter n,
                              java.lang.Object argu)
 nodeOptional -> [ "final" ]
 type -> Type()
 variableDeclaratorId -> VariableDeclaratorId()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ConstructorDeclaration n,
                              java.lang.Object argu)
 nodeOptional -> [ "public" | "protected" | "private" ]
 nodeToken -> <IDENTIFIER>
 formalParameters -> FormalParameters()
 nodeOptional1 -> [ "throws" NameList() ]
 nodeToken1 -> "{"
 nodeOptional2 -> [ ExplicitConstructorInvocation() ]
 topBlockStatements -> TopBlockStatements()
 nodeToken2 -> "}"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ExplicitConstructorInvocation n,
                              java.lang.Object argu)
 nodeChoice -> "this" Arguments() ";"
       | [ PrimaryExpression() "." ] "super" Arguments() ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(Initializer n,
                              java.lang.Object argu)
 nodeOptional -> [ "static" ]
 topBlock -> TopBlock()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(Type n,
                              java.lang.Object argu)
 nodeChoice -> ( PrimitiveType() | Name() )
 nodeListOptional -> ( "[" "]" )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(PrimitiveType n,
                              java.lang.Object argu)
 nodeChoice -> "boolean"
       | "char"
       | "byte"
       | "short"
       | "int"
       | "long"
       | "float"
       | "double"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ResultType n,
                              java.lang.Object argu)
 nodeChoice -> "void"
       | Type()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(Name n,
                              java.lang.Object argu)
 nodeToken -> <IDENTIFIER>
 nodeListOptional -> ( "." <IDENTIFIER> )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(NameList n,
                              java.lang.Object argu)
 name -> Name()
 nodeListOptional -> ( "," Name() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(Expression n,
                              java.lang.Object argu)
 conditionalExpression -> ConditionalExpression()
 nodeOptional -> [ AssignmentOperator() Expression() ]
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(AssignmentOperator n,
                              java.lang.Object argu)
 nodeChoice -> "="
       | "*="
       | "/="
       | "%="
       | "+="
       | "-="
       | "<<="
       | ">>="
       | ">>>="
       | "&="
       | "^="
       | "|="
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ConditionalExpression n,
                              java.lang.Object argu)
 conditionalOrExpression -> ConditionalOrExpression()
 nodeOptional -> [ "?" Expression() ":" ConditionalExpression() ]
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ConditionalOrExpression n,
                              java.lang.Object argu)
 conditionalAndExpressionWrapper -> ConditionalAndExpressionWrapper()
 nodeListOptional -> ( "||" ConditionalAndExpressionWrapper() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ConditionalAndExpressionWrapper n,
                              java.lang.Object argu)
 conditionalAndExpression -> ConditionalAndExpression()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ConditionalAndExpression n,
                              java.lang.Object argu)
 inclusiveOrExpression -> InclusiveOrExpression()
 nodeListOptional -> ( "&&" InclusiveOrExpression() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(InclusiveOrExpression n,
                              java.lang.Object argu)
 exclusiveOrExpression -> ExclusiveOrExpression()
 nodeListOptional -> ( "|" ExclusiveOrExpression() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ExclusiveOrExpression n,
                              java.lang.Object argu)
 andExpression -> AndExpression()
 nodeListOptional -> ( "^" AndExpression() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(AndExpression n,
                              java.lang.Object argu)
 equalityExpression -> EqualityExpression()
 nodeListOptional -> ( "&" EqualityExpression() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(EqualityExpression n,
                              java.lang.Object argu)
 instanceOfExpression -> InstanceOfExpression()
 nodeListOptional -> ( ( "==" | "!=" ) InstanceOfExpression() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(InstanceOfExpression n,
                              java.lang.Object argu)
 relationalExpression -> RelationalExpression()
 nodeOptional -> [ "instanceof" Type() ]
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(RelationalExpression n,
                              java.lang.Object argu)
 shiftExpression -> ShiftExpression()
 nodeListOptional -> ( ( "<" | ">" | "<=" | ">=" ) ShiftExpression() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ShiftExpression n,
                              java.lang.Object argu)
 additiveExpression -> AdditiveExpression()
 nodeListOptional -> ( ( "<<" | ">>" | ">>>" ) AdditiveExpression() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(AdditiveExpression n,
                              java.lang.Object argu)
 multiplicativeExpression -> MultiplicativeExpression()
 nodeListOptional -> ( ( "+" | "-" ) MultiplicativeExpression() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(MultiplicativeExpression n,
                              java.lang.Object argu)
 unaryExpression -> UnaryExpression()
 nodeListOptional -> ( ( "*" | "/" | "%" ) UnaryExpression() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(UnaryExpression n,
                              java.lang.Object argu)
 nodeChoice -> ( "+" | "-" ) UnaryExpression()
       | PreIncrementExpression()
       | PreDecrementExpression()
       | UnaryExpressionNotPlusMinus()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(PreIncrementExpression n,
                              java.lang.Object argu)
 nodeToken -> "++"
 primaryExpression -> PrimaryExpression()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(PreDecrementExpression n,
                              java.lang.Object argu)
 nodeToken -> "--"
 primaryExpression -> PrimaryExpression()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(UnaryExpressionNotPlusMinus n,
                              java.lang.Object argu)
 nodeChoice -> ( "~" | "!" ) UnaryExpression()
       | CastExpression()
       | PostfixExpression()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(CastLookahead n,
                              java.lang.Object argu)
 nodeChoice -> "(" PrimitiveType()
       | "(" Name() "[" "]"
       | "(" Name() ")" ( "~" | "!" | "(" | <IDENTIFIER> | "this" | "super" | "new" | Literal() )
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(PostfixExpression n,
                              java.lang.Object argu)
 primaryExpression -> PrimaryExpression()
 nodeOptional -> [ "++" | "--" ]
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(CastExpression n,
                              java.lang.Object argu)
 nodeChoice -> "(" Type() ")" UnaryExpression()
       | "(" Type() ")" UnaryExpressionNotPlusMinus()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(PrimaryExpression n,
                              java.lang.Object argu)
 primaryPrefix -> PrimaryPrefix()
 nodeListOptional -> ( PrimarySuffix() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(PrimaryPrefix n,
                              java.lang.Object argu)
 nodeChoice -> Literal()
       | "this"
       | "super" "." <IDENTIFIER>
       | "(" Expression() ")"
       | AllocationExpression()
       | ResultType() "." "class"
       | Name()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(PrimarySuffix n,
                              java.lang.Object argu)
 nodeChoice -> "." "this"
       | "." AllocationExpression()
       | "[" Expression() "]"
       | "." <IDENTIFIER>
       | Arguments()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(Literal n,
                              java.lang.Object argu)
 nodeChoice -> <INTEGER_LITERAL>
       | <FLOATING_POINT_LITERAL>
       | <CHARACTER_LITERAL>
       | <STRING_LITERAL>
       | BooleanLiteral()
       | NullLiteral()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(BooleanLiteral n,
                              java.lang.Object argu)
 nodeChoice -> "true"
       | "false"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(NullLiteral n,
                              java.lang.Object argu)
 nodeToken -> "null"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(Arguments n,
                              java.lang.Object argu)
 nodeToken -> "("
 nodeOptional -> [ ArgumentList() ]
 nodeToken1 -> ")"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ArgumentList n,
                              java.lang.Object argu)
 expression -> Expression()
 nodeListOptional -> ( "," Expression() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(AllocationExpression n,
                              java.lang.Object argu)
 nodeChoice -> "new" PrimitiveType() ArrayDimsAndInits()
       | "new" Name() ( ArrayDimsAndInits() | Arguments() [ ClassBody() ] )
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ArrayDimsAndInits n,
                              java.lang.Object argu)
 nodeChoice -> ( "[" Expression() "]" )+ ( "[" "]" )*
       | ( "[" "]" )+ ArrayInitializer()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(Statement n,
                              java.lang.Object argu)
 nodeChoice -> LabeledStatement()
       | Block()
       | EmptyStatement()
       | StatementExpression() ";"
       | SwitchStatement()
       | IfStatement()
       | WhileStatement()
       | DoStatement()
       | ForStatement()
       | BreakStatement()
       | ContinueStatement()
       | ReturnStatement()
       | ThrowStatement()
       | SynchronizedStatement()
       | TryStatement()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(LabeledStatement n,
                              java.lang.Object argu)
 nodeToken -> <IDENTIFIER>
 nodeToken1 -> ":"
 statement -> Statement()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(Block n,
                              java.lang.Object argu)
 nodeToken -> "{"
 nodeListOptional -> ( BlockStatement() )*
 nodeToken1 -> "}"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(BlockStatement n,
                              java.lang.Object argu)
 nodeChoice -> LocalVariableDeclaration() ";"
       | Statement()
       | UnmodifiedClassDeclaration()
       | UnmodifiedInterfaceDeclaration()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(LocalVariableDeclaration n,
                              java.lang.Object argu)
 nodeOptional -> [ "final" ]
 type -> Type()
 variableDeclarator -> VariableDeclarator()
 nodeListOptional -> ( "," VariableDeclarator() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(EmptyStatement n,
                              java.lang.Object argu)
 nodeToken -> ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(StatementExpression n,
                              java.lang.Object argu)
 nodeChoice -> PreIncrementExpression()
       | PreDecrementExpression()
       | PrimaryExpression() [ "++" | "--" | AssignmentOperator() Expression() ]
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(SwitchStatement n,
                              java.lang.Object argu)
 nodeToken -> "switch"
 nodeToken1 -> "("
 expression -> Expression()
 nodeToken2 -> ")"
 nodeToken3 -> "{"
 nodeListOptional -> ( SwitchLabel() ( BlockStatement() )* )*
 nodeToken4 -> "}"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(SwitchLabel n,
                              java.lang.Object argu)
 nodeChoice -> "case" Expression() ":"
       | "default" ":"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(IfStatement n,
                              java.lang.Object argu)
 nodeToken -> "if"
 nodeToken1 -> "("
 expression -> Expression()
 nodeToken2 -> ")"
 statement -> Statement()
 nodeOptional -> [ "else" Statement() ]
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(WhileStatement n,
                              java.lang.Object argu)
 nodeToken -> "while"
 nodeToken1 -> "("
 expression -> Expression()
 nodeToken2 -> ")"
 statement -> Statement()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(DoStatement n,
                              java.lang.Object argu)
 nodeToken -> "do"
 statement -> Statement()
 nodeToken1 -> "while"
 nodeToken2 -> "("
 expression -> Expression()
 nodeToken3 -> ")"
 nodeToken4 -> ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ForStatement n,
                              java.lang.Object argu)
 nodeToken -> "for"
 nodeToken1 -> "("
 nodeOptional -> [ ForInit() ]
 nodeToken2 -> ";"
 nodeOptional1 -> [ Expression() ]
 nodeToken3 -> ";"
 nodeOptional2 -> [ ForUpdate() ]
 nodeToken4 -> ")"
 statement -> Statement()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ForInit n,
                              java.lang.Object argu)
 nodeChoice -> LocalVariableDeclaration()
       | StatementExpressionList()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(StatementExpressionList n,
                              java.lang.Object argu)
 statementExpression -> StatementExpression()
 nodeListOptional -> ( "," StatementExpression() )*
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ForUpdate n,
                              java.lang.Object argu)
 statementExpressionList -> StatementExpressionList()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(BreakStatement n,
                              java.lang.Object argu)
 nodeToken -> "break"
 nodeOptional -> [ <IDENTIFIER> ]
 nodeToken1 -> ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ContinueStatement n,
                              java.lang.Object argu)
 nodeToken -> "continue"
 nodeOptional -> [ <IDENTIFIER> ]
 nodeToken1 -> ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ReturnStatement n,
                              java.lang.Object argu)
 nodeToken -> "return"
 nodeOptional -> [ Expression() ]
 nodeToken1 -> ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(ThrowStatement n,
                              java.lang.Object argu)
 nodeToken -> "throw"
 expression -> Expression()
 nodeToken1 -> ";"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(SynchronizedStatement n,
                              java.lang.Object argu)
 nodeToken -> "synchronized"
 nodeToken1 -> "("
 expression -> Expression()
 nodeToken2 -> ")"
 block -> Block()
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(TryStatement n,
                              java.lang.Object argu)
 nodeToken -> "try"
 block -> Block()
 nodeListOptional -> ( "catch" "(" FormalParameter() ")" Block() )*
 nodeOptional -> [ "finally" Block() ]
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(TopBlock n,
                              java.lang.Object argu)
 nodeToken -> "{"
 topBlockStatements -> TopBlockStatements()
 nodeToken1 -> "}"
 
Specified by:
visit in interface ObjectVisitor

visit

public java.lang.Object visit(TopBlockStatements n,
                              java.lang.Object argu)
 nodeListOptional -> ( BlockStatement() )*
 
Specified by:
visit in interface ObjectVisitor