//
// Generated by JTB 1.3.2
//
package org.jboss.seam.remoting.annotationparser.visitor;
import org.jboss.seam.remoting.annotationparser.syntaxtree.*;
import java.util.*;
/**
* Provides default methods which visit each node in the tree in depth-first
* order. Your visitors may extend this class.
*/
public class DepthFirstVisitor implements Visitor {
//
// Auto class visitors--probably don't need to be overridden.
//
public void visit(NodeList n) {
for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); )
e.nextElement().accept(this);
}
public void visit(NodeListOptional n) {
if ( n.present() )
for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); )
e.nextElement().accept(this);
}
public void visit(NodeOptional n) {
if ( n.present() )
n.node.accept(this);
}
public void visit(NodeSequence n) {
for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); )
e.nextElement().accept(this);
}
public void visit(NodeToken n) { }
//
// User-generated visitor methods below
//
/**
* f0 -> [ Annotation() ( "," Annotation() )* ]
*/
public void visit(AnnotationsUnit n) {
n.f0.accept(this);
}
/**
* f0 -> "boolean"
* | "char"
* | "byte"
* | "short"
* | "int"
* | "long"
* | "float"
* | "double"
*/
public void visit(PrimitiveType n) {
n.f0.accept(this);
}
/**
* f0 -> <IDENTIFIER>
* f1 -> ( "." <IDENTIFIER> )*
*/
public void visit(Name n) {
n.f0.accept(this);
n.f1.accept(this);
}
/**
* f0 -> <INTEGER_LITERAL>
* | <FLOATING_POINT_LITERAL>
* | <CHARACTER_LITERAL>
* | <STRING_LITERAL>
* | BooleanLiteral()
* | NullLiteral()
*/
public void visit(Literal n) {
n.f0.accept(this);
}
/**
* f0 -> "true"
* | "false"
*/
public void visit(BooleanLiteral n) {
n.f0.accept(this);
}
/**
* f0 -> "null"
*/
public void visit(NullLiteral n) {
n.f0.accept(this);
}
/**
* f0 -> NormalAnnotation()
* | SingleMemberAnnotation()
* | MarkerAnnotation()
*/
public void visit(Annotation n) {
n.f0.accept(this);
}
/**
* f0 -> "@"
* f1 -> Name()
* f2 -> "("
* f3 -> [ MemberValuePairs() ]
* f4 -> ")"
*/
public void visit(NormalAnnotation n) {
n.f0.accept(this);
n.f1.accept(this);
n.f2.accept(this);
n.f3.accept(this);
n.f4.accept(this);
}
/**
* f0 -> "@"
* f1 -> Name()
*/
public void visit(MarkerAnnotation n) {
n.f0.accept(this);
n.f1.accept(this);
}
/**
* f0 -> "@"
* f1 -> Name()
* f2 -> "("
* f3 -> MemberValue()
* f4 -> ")"
*/
public void visit(SingleMemberAnnotation n) {
n.f0.accept(this);
n.f1.accept(this);
n.f2.accept(this);
n.f3.accept(this);
n.f4.accept(this);
}
/**
* f0 -> MemberValuePair()
* f1 -> ( "," MemberValuePair() )*
*/
public void visit(MemberValuePairs n) {
n.f0.accept(this);
n.f1.accept(this);
}
/**
* f0 -> <IDENTIFIER>
* f1 -> "="
* f2 -> MemberValue()
*/
public void visit(MemberValuePair n) {
n.f0.accept(this);
n.f1.accept(this);
n.f2.accept(this);
}
/**
* f0 -> Annotation()
* | MemberValueArrayInitializer()
* | Literal()
* | ClassOrInterfaceType()
*/
public void visit(MemberValue n) {
n.f0.accept(this);
}
/**
* f0 -> <IDENTIFIER>
* f1 -> ( "." <IDENTIFIER> )*
* f2 -> [ "." "class" ]
*/
public void visit(ClassOrInterfaceType n) {
n.f0.accept(this);
n.f1.accept(this);
n.f2.accept(this);
}
/**
* f0 -> "{"
* f1 -> MemberValue()
* f2 -> ( "," MemberValue() )*
* f3 -> [ "," ]
* f4 -> "}"
*/
public void visit(MemberValueArrayInitializer n) {
n.f0.accept(this);
n.f1.accept(this);
n.f2.accept(this);
n.f3.accept(this);
n.f4.accept(this);
}
}