in jackrabbit-spi-commons/src/main/java/org/apache/jackrabbit/spi/commons/query/xpath/XPath.java [5800:5996]
final public void DirElemConstructor() throws ParseException {
/*@bgen(jjtree) DirElemConstructor */
SimpleNode jjtn000 = new SimpleNode(this, JJTDIRELEMCONSTRUCTOR);
boolean jjtc000 = true;
jjtree.openNodeScope(jjtn000);
try {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case StartTagOpenRoot:
jj_consume_token(StartTagOpenRoot);
SimpleNode jjtn001 = new SimpleNode(this, JJTSTARTTAGOPENROOT);
boolean jjtc001 = true;
jjtree.openNodeScope(jjtn001);
try {
jjtree.closeNodeScope(jjtn001, true);
jjtc001 = false;
jjtn001.processToken(token);
} finally {
if (jjtc001) {
jjtree.closeNodeScope(jjtn001, true);
}
}
break;
case StartTagOpen:
jj_consume_token(StartTagOpen);
SimpleNode jjtn002 = new SimpleNode(this, JJTSTARTTAGOPEN);
boolean jjtc002 = true;
jjtree.openNodeScope(jjtn002);
try {
jjtree.closeNodeScope(jjtn002, true);
jjtc002 = false;
jjtn002.processToken(token);
} finally {
if (jjtc002) {
jjtree.closeNodeScope(jjtn002, true);
}
}
break;
default:
jj_la1[107] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
jj_consume_token(TagQName);
SimpleNode jjtn003 = new SimpleNode(this, JJTTAGQNAME);
boolean jjtc003 = true;
jjtree.openNodeScope(jjtn003);
try {
jjtree.closeNodeScope(jjtn003, true);
jjtc003 = false;
jjtn003.processToken(token);
} finally {
if (jjtc003) {
jjtree.closeNodeScope(jjtn003, true);
}
}
DirAttributeList();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case EmptyTagClose:
jj_consume_token(EmptyTagClose);
SimpleNode jjtn004 = new SimpleNode(this, JJTEMPTYTAGCLOSE);
boolean jjtc004 = true;
jjtree.openNodeScope(jjtn004);
try {
jjtree.closeNodeScope(jjtn004, true);
jjtc004 = false;
jjtn004.processToken(token);
} finally {
if (jjtc004) {
jjtree.closeNodeScope(jjtn004, true);
}
}
break;
case StartTagClose:
jj_consume_token(StartTagClose);
SimpleNode jjtn005 = new SimpleNode(this, JJTSTARTTAGCLOSE);
boolean jjtc005 = true;
jjtree.openNodeScope(jjtn005);
try {
jjtree.closeNodeScope(jjtn005, true);
jjtc005 = false;
jjtn005.processToken(token);
} finally {
if (jjtc005) {
jjtree.closeNodeScope(jjtn005, true);
}
}
label_25:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ProcessingInstructionStart:
case ProcessingInstructionStartForElementContent:
case CdataSectionStart:
case CdataSectionStartForElementContent:
case PredefinedEntityRef:
case CharRef:
case StartTagOpen:
case StartTagOpenRoot:
case Lbrace:
case LbraceExprEnclosure:
case LCurlyBraceEscape:
case RCurlyBraceEscape:
case ElementContentChar:
case XmlCommentStart:
case XmlCommentStartForElementContent:
;
break;
default:
jj_la1[108] = jj_gen;
break label_25;
}
DirElemContent();
}
jj_consume_token(EndTagOpen);
SimpleNode jjtn006 = new SimpleNode(this, JJTENDTAGOPEN);
boolean jjtc006 = true;
jjtree.openNodeScope(jjtn006);
try {
jjtree.closeNodeScope(jjtn006, true);
jjtc006 = false;
jjtn006.processToken(token);
} finally {
if (jjtc006) {
jjtree.closeNodeScope(jjtn006, true);
}
}
jj_consume_token(TagQName);
SimpleNode jjtn007 = new SimpleNode(this, JJTTAGQNAME);
boolean jjtc007 = true;
jjtree.openNodeScope(jjtn007);
try {
jjtree.closeNodeScope(jjtn007, true);
jjtc007 = false;
jjtn007.processToken(token);
} finally {
if (jjtc007) {
jjtree.closeNodeScope(jjtn007, true);
}
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case S:
jj_consume_token(S);
SimpleNode jjtn008 = new SimpleNode(this, JJTS);
boolean jjtc008 = true;
jjtree.openNodeScope(jjtn008);
try {
jjtree.closeNodeScope(jjtn008, true);
jjtc008 = false;
jjtn008.processToken(token);
} finally {
if (jjtc008) {
jjtree.closeNodeScope(jjtn008, true);
}
}
break;
default:
jj_la1[109] = jj_gen;
;
}
jj_consume_token(EndTagClose);
SimpleNode jjtn009 = new SimpleNode(this, JJTENDTAGCLOSE);
boolean jjtc009 = true;
jjtree.openNodeScope(jjtn009);
try {
jjtree.closeNodeScope(jjtn009, true);
jjtc009 = false;
jjtn009.processToken(token);
} finally {
if (jjtc009) {
jjtree.closeNodeScope(jjtn009, true);
}
}
break;
default:
jj_la1[110] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
} catch (Throwable jjte000) {
if (jjtc000) {
jjtree.clearNodeScope(jjtn000);
jjtc000 = false;
} else {
jjtree.popNode();
}
if (jjte000 instanceof RuntimeException) {
{if (true) throw (RuntimeException)jjte000;}
}
if (jjte000 instanceof ParseException) {
{if (true) throw (ParseException)jjte000;}
}
{if (true) throw (Error)jjte000;}
} finally {
if (jjtc000) {
jjtree.closeNodeScope(jjtn000, true);
}
}
}