package com.thaiopensource.relaxng.parse;
public interface GrammarSection<P, L, EA, CL extends CommentList<L>, A extends Annotations<L, EA, CL>> {
static final class Combine {
private final String name;
private Combine(String name) {
this.name = name;
}
final public String toString() {
return name;
}
}
static final Combine COMBINE_CHOICE = new Combine("choice");
static final Combine COMBINE_INTERLEAVE = new Combine("interleave");
static final String START = "#start";
void define(String name, Combine combine, P pattern, L loc, A anno)
throws BuildException;
void topLevelAnnotation(EA ea) throws BuildException;
void topLevelComment(CL comments) throws BuildException;
Div<P, L, EA, CL, A> makeDiv();
/*
* Returns null if already in an include.
*/
Include<P, L, EA, CL, A> makeInclude();
}