org.kohsuke.rngom.ast.builder
Interface GrammarSection<P extends ParsedPattern,E extends ParsedElementAnnotation,L extends Location,A extends Annotations<E,L,CL>,CL extends CommentList<L>>

All Known Subinterfaces:
Div<P,E,L,A,CL>, Grammar<P,E,L,A,CL>, Include<P,E,L,A,CL>, IncludedGrammar<P,E,L,A,CL>, Scope<P,E,L,A,CL>
All Known Implementing Classes:
DivHost, GrammarHost, GrammarSectionHost, IncludeHost, ScopeHost

public interface GrammarSection<P extends ParsedPattern,E extends ParsedElementAnnotation,L extends Location,A extends Annotations<E,L,CL>,CL extends CommentList<L>>

The container that can have <define> elements.

Div, Grammar, Include, or IncludedGrammar.


Nested Class Summary
static class GrammarSection.Combine
           
 
Field Summary
static GrammarSection.Combine COMBINE_CHOICE
           
static GrammarSection.Combine COMBINE_INTERLEAVE
           
static java.lang.String START
           
 
Method Summary
 void define(java.lang.String name, GrammarSection.Combine combine, P pattern, L loc, A anno)
          Called when a pattern is defined.
 Div<P,E,L,A,CL> makeDiv()
          Called when <div> is found.
 Include<P,E,L,A,CL> makeInclude()
          Returns null if already in an include.
 void topLevelAnnotation(E ea)
          Called when an annotation is found.
 void topLevelComment(CL comments)
          Called when a comment is found.
 

Field Detail

COMBINE_CHOICE

static final GrammarSection.Combine COMBINE_CHOICE

COMBINE_INTERLEAVE

static final GrammarSection.Combine COMBINE_INTERLEAVE

START

static final java.lang.String START
See Also:
Constant Field Values
Method Detail

define

void define(java.lang.String name,
            GrammarSection.Combine combine,
            P pattern,
            L loc,
            A anno)
            throws BuildException
Called when a pattern is defined.

Parameters:
name - Name of the pattern. For the definition by a <start/> element, this parameter is the same as START. to test if it's a named pattern definition or the start pattern definition.
combine - null or COMBINE_CHOICE or COMBINE_INTERLEAVE depending on the value of the combine attribute.
pattern - The pattern to be defined.
Throws:
BuildException

topLevelAnnotation

void topLevelAnnotation(E ea)
                        throws BuildException
Called when an annotation is found.

Throws:
BuildException

topLevelComment

void topLevelComment(CL comments)
                     throws BuildException
Called when a comment is found.

Throws:
BuildException

makeDiv

Div<P,E,L,A,CL> makeDiv()
Called when <div> is found.

Returns:
the returned Div object will receive callbacks for structures inside the <div> element.

makeInclude

Include<P,E,L,A,CL> makeInclude()
Returns null if already in an include.