org.kohsuke.rngom.binary.Alphabet Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jaxb-xjc Show documentation
Show all versions of jaxb-xjc Show documentation
Old JAXB Binding Compiler. Contains source code needed for binding customization files into java sources.
In other words: the *tool* to generate java classes for the given xml representation.
package org.kohsuke.rngom.binary;
import org.kohsuke.rngom.nc.ChoiceNameClass;
import org.kohsuke.rngom.nc.NameClass;
class Alphabet {
private NameClass nameClass;
boolean isEmpty() {
return nameClass == null;
}
void addElement(NameClass nc) {
if (nameClass == null)
nameClass = nc;
else if (nc != null)
nameClass = new ChoiceNameClass(nameClass, nc);
}
void addAlphabet(Alphabet a) {
addElement(a.nameClass);
}
void checkOverlap(Alphabet a) throws RestrictionViolationException {
if (nameClass != null
&& a.nameClass != null
&& nameClass.hasOverlapWith(a.nameClass))
throw new RestrictionViolationException("interleave_element_overlap");
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy