GJDepthFirst.java
//
// Generated by JTB 1.3.2
//
package net.metanotion.contentstore.markup.parser.visitor;
import net.metanotion.contentstore.markup.parser.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 GJDepthFirst<R,A> implements GJVisitor<R,A> {
//
// Auto class visitors--probably don't need to be overridden.
//
public R visit(NodeList n, A argu) {
R _ret=null;
int _count=0;
for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
e.nextElement().accept(this,argu);
_count++;
}
return _ret;
}
public R visit(NodeListOptional n, A argu) {
if ( n.present() ) {
R _ret=null;
int _count=0;
for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
e.nextElement().accept(this,argu);
_count++;
}
return _ret;
}
else
return null;
}
public R visit(NodeOptional n, A argu) {
if ( n.present() )
return n.node.accept(this,argu);
else
return null;
}
public R visit(NodeSequence n, A argu) {
R _ret=null;
int _count=0;
for ( Enumeration<Node> e = n.elements(); e.hasMoreElements(); ) {
e.nextElement().accept(this,argu);
_count++;
}
return _ret;
}
public R visit(NodeToken n, A argu) { return null; }
//
// User-generated visitor methods below
//
/**
* f0 -> ( Raw() | Tag() )*
* f1 -> <EOF>
*/
public R visit(Content n, A argu) {
R _ret=null;
n.f0.accept(this, argu);
n.f1.accept(this, argu);
return _ret;
}
/**
* f0 -> <BR>
* | <PLAIN>
*/
public R visit(Raw n, A argu) {
R _ret=null;
n.f0.accept(this, argu);
return _ret;
}
/**
* f0 -> Anchor()
* | Div()
* | Img()
*/
public R visit(Tag n, A argu) {
R _ret=null;
n.f0.accept(this, argu);
return _ret;
}
/**
* f0 -> <A>
* f1 -> ( <ATAG> )*
* f2 -> <END_A>
*/
public R visit(Anchor n, A argu) {
R _ret=null;
n.f0.accept(this, argu);
n.f1.accept(this, argu);
n.f2.accept(this, argu);
return _ret;
}
/**
* f0 -> <RAW>
* f1 -> ( <TAGSOUP> )*
* f2 -> <END_RAW>
*/
public R visit(Div n, A argu) {
R _ret=null;
n.f0.accept(this, argu);
n.f1.accept(this, argu);
n.f2.accept(this, argu);
return _ret;
}
/**
* f0 -> <IMG>
* f1 -> ( <IMGTAG> )*
* f2 -> <END_IMG>
*/
public R visit(Img n, A argu) {
R _ret=null;
n.f0.accept(this, argu);
n.f1.accept(this, argu);
n.f2.accept(this, argu);
return _ret;
}
}