01: package org.kohsuke.rngom.ast.builder;
02:
03: import org.kohsuke.rngom.ast.om.Location;
04: import org.kohsuke.rngom.ast.om.ParsedElementAnnotation;
05: import org.kohsuke.rngom.ast.om.ParsedPattern;
06:
07: /**
08: * Used to build foreign element annotations.
09: */
10: public interface ElementAnnotationBuilder<P extends ParsedPattern, E extends ParsedElementAnnotation, L extends Location, A extends Annotations<E, L, CL>, CL extends CommentList<L>>
11: extends Annotations<E, L, CL> {
12:
13: /**
14: * Called when a child text is found.
15: */
16: void addText(String value, L loc, CL comments)
17: throws BuildException;
18:
19: /**
20: * Called at the end to build an application data structure.
21: */
22: E makeElementAnnotation() throws BuildException;
23: }
|