Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## 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.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD