EDU.purdue.jtb.visitor
Class Annotator

java.lang.Object
  extended by EDU.purdue.jtb.visitor.DepthFirstVisitor
      extended by EDU.purdue.jtb.visitor.Printer
          extended by EDU.purdue.jtb.visitor.Annotator
All Implemented Interfaces:
Visitor

public class Annotator
extends Printer

Class Annotator generates the annotated .jj file containing tree-building code. Annotator and ClassGenerator depend on each other to create classes compatible with each other so any change in how classes are generated might break the other.


Field Summary
 
Fields inherited from class EDU.purdue.jtb.visitor.Printer
javaStringMaker, nestLevel, out, spc
 
Constructor Summary
Annotator()
           
Annotator(java.io.OutputStream o)
           
Annotator(java.lang.String filename)
           
Annotator(java.io.Writer w)
           
 
Method Summary
 void visit(BNFProduction n)
          old Grammar production: f0 -> ResultType() f1 -> f2 -> FormalParameters() f3 -> f4 -> Block() f5 -> f6 -> ExpansionChoices() f7 ->
 void visit(Expansion n)
          f0 -> ( ExpansionUnit() )*
 void visit(ExpansionChoices n)
          f0 -> Expansion() f1 -> ( Expansion() )*
 void visit(ExpansionUnit n)
          f0 -> LocalLookahead() | Block() | ExpansionChoices() [ | | ] | ExpansionChoices() | [ PrimaryExpression() ] ExpansionUnitTerm()
 void visit(ExpansionUnitTerm n)
          f0 -> RegularExpression() | Arguments()
 void visit(JavaCCInput n)
          f0 -> JavaCCOptions() f1 -> f2 -> f3 -> f4 -> f5 -> CompilationUnit() f6 -> f7 -> f8 -> f9 -> f10 -> ( Production() )* f11 ->
 void visit(JavaCodeProduction n)
          f0 -> f1 -> ResultType() f2 -> f3 -> FormalParameters() f4 -> Block()
 void visit(LocalLookahead n)
          f0 -> f1 -> f2 -> [ ] f3 -> [ ] f4 -> ExpansionChoices() f5 -> [ ] f6 -> [ Expression() ] f7 ->
 void visit(RegularExpression n)
          f0 -> | [ [ ] ] ComplexRegularExpressionChoices() | |
 void visit(RegularExprProduction n)
          f0 -> [ LexicalStateList() ] f1 -> RegExprKind() f2 -> [ ] f3 -> f4 -> f5 -> RegExprSpec() f6 -> ( RegExprSpec() )* f7 ->
 
Methods inherited from class EDU.purdue.jtb.visitor.Printer
flushWriter, javaString, setOut, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
 
Methods inherited from class EDU.purdue.jtb.visitor.DepthFirstVisitor
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Annotator

public Annotator()
          throws FileExistsException
Throws:
FileExistsException

Annotator

public Annotator(java.lang.String filename)
          throws FileExistsException
Throws:
FileExistsException

Annotator

public Annotator(java.io.Writer w)

Annotator

public Annotator(java.io.OutputStream o)
Method Detail

visit

public void visit(JavaCCInput n)
Description copied from class: DepthFirstVisitor
f0 -> JavaCCOptions() f1 -> f2 -> f3 -> f4 -> f5 -> CompilationUnit() f6 -> f7 -> f8 -> f9 -> f10 -> ( Production() )* f11 ->

Specified by:
visit in interface Visitor
Overrides:
visit in class Printer

visit

public void visit(JavaCodeProduction n)
Description copied from class: DepthFirstVisitor
f0 -> f1 -> ResultType() f2 -> f3 -> FormalParameters() f4 -> Block()

Specified by:
visit in interface Visitor
Overrides:
visit in class Printer

visit

public void visit(BNFProduction n)
old Grammar production: f0 -> ResultType() f1 -> f2 -> FormalParameters() f3 -> f4 -> Block() f5 -> f6 -> ExpansionChoices() f7 ->

Specified by:
visit in interface Visitor
Overrides:
visit in class Printer

visit

public void visit(RegularExprProduction n)
Description copied from class: DepthFirstVisitor
f0 -> [ LexicalStateList() ] f1 -> RegExprKind() f2 -> [ ] f3 -> f4 -> f5 -> RegExprSpec() f6 -> ( RegExprSpec() )* f7 ->

Specified by:
visit in interface Visitor
Overrides:
visit in class Printer

visit

public void visit(ExpansionChoices n)
Description copied from class: DepthFirstVisitor
f0 -> Expansion() f1 -> ( Expansion() )*

Specified by:
visit in interface Visitor
Overrides:
visit in class Printer

visit

public void visit(Expansion n)
Description copied from class: DepthFirstVisitor
f0 -> ( ExpansionUnit() )*

Specified by:
visit in interface Visitor
Overrides:
visit in class Printer

visit

public void visit(ExpansionUnit n)
Description copied from class: DepthFirstVisitor
f0 -> LocalLookahead() | Block() | ExpansionChoices() [ | | ] | ExpansionChoices() | [ PrimaryExpression() ] ExpansionUnitTerm()

Specified by:
visit in interface Visitor
Overrides:
visit in class Printer

visit

public void visit(ExpansionUnitTerm n)
Description copied from class: DepthFirstVisitor
f0 -> RegularExpression() | Arguments()

Specified by:
visit in interface Visitor
Overrides:
visit in class Printer

visit

public void visit(LocalLookahead n)
Description copied from class: DepthFirstVisitor
f0 -> f1 -> f2 -> [ ] f3 -> [ ] f4 -> ExpansionChoices() f5 -> [ ] f6 -> [ Expression() ] f7 ->

Specified by:
visit in interface Visitor
Overrides:
visit in class Printer

visit

public void visit(RegularExpression n)
Description copied from class: DepthFirstVisitor
f0 -> | [ [ ] ] ComplexRegularExpressionChoices() | |

Specified by:
visit in interface Visitor
Overrides:
visit in class Printer