dk.brics.servletvalidator.grammar
Interface GrammarEntityVisitor
- All Known Implementing Classes:
- AbstractAnnotationVisitor, AbstractBalancingVisitor, AbstractGrammarEntityVisitor, AbstractPrettyPrinter, AbstractSplitVisitor, AbstractTagformVisitor, AnnotatedPrettyPrinter, AttributeVisitor, BalanceChecker, CharRangeSplitter, ContentCutVisitor, CycleReducer, DecoratingAnnotationVisitor, DecoratingBalancingVisitor, DGraphConstructor, DGraphPrettyPrinter, EpsilonRemovalVisitor, FlowGraphPrettyPrinter, FreshTerminalVisitor, FullyQualifiedGrammarVisitor, Grammar2XMLGraph, GrammarAnnotater, GrammarBalancer, GrammarPrettyPrinter, NonTerminalReducingVisitor, ParenthesisSplitIndicesFinder, ParenthesisVisitor, ProductionInliner, SamplingVisitor, SequencialContentVisitor, SetCalculatorVisitor, SingleProductionNonTerminalRemovalVisitor, TagInlineVisitor, TagVisitor, ThetaVarConstructor, TrailingLeadingContentVisitor, Transformation1Visitor, UnboundedAssociateRemover, UniqueProductionVisitor, UnitProductionRemovalVisitor, UselessProductionRemovalVisitor, UsesVisitor, WellFormednessChecker, XMLPrettyPrinter
public interface GrammarEntityVisitor
The alphabet symbol visitor contains three methods for each kind of GrammarEntity class. One in that is
supposed to be called when first seeing the node, one apply that can traverse contained GrammarEntity nodes.
After this the out method should be called.
The visitor can be though of as visiting all grammar entities in the grammar graph by traversing a spanning
tree of this graph. Hence only weak invariants about the order of traversal of the graph can be asserted.
apply
void apply(Grammar g)
apply
void apply(NonTerminal nonTerminal)
apply
void apply(Production production)
apply
void apply(Terminal terminal)
in
void in(NonTerminal nonTerminal)
in
void in(Production production)
in
void in(Terminal terminal)
out
void out(NonTerminal nonTerminal)
out
void out(Production production)
out
void out(Terminal terminal)
print
void print(Grammar g)
shouldPrettyPrint
boolean shouldPrettyPrint()
Copyright © 2008 Mathias Schwarz.