- /* Generated By:JavaCC: Do not edit this line. XPathParser.java */
- package org.apache.commons.jxpath.ri.parser;
-
- import org.apache.commons.jxpath.ri.Compiler;
- import java.util.ArrayList;
-
- public class XPathParser implements XPathParserConstants {
- private Compiler compiler;
-
- public void setCompiler(Compiler compiler){
- this.compiler = compiler;
- }
-
- private String unescape(String string){
- int index = string.indexOf("'");
- while (index != -1){
- string = string.substring(0, index) + "\'" + string.substring(index + 6);
- index = string.indexOf("'");
- }
- index = string.indexOf(""");
- while (index != -1){
- string = string.substring(0, index) + "\"" + string.substring(index + 6);
- index = string.indexOf(""");
- }
- return string;
- }
-
- // Note: XPath does not have reserved words, so we have to include all these terminals
- final public String NCName() throws ParseException {
- switch (jj_nt.kind) {
- case OR:
- case AND:
- case MOD:
- case DIV:
- case NCName:
- NCName_Without_CoreFunctions();
- break;
- case NODE:
- jj_consume_token(NODE);
- break;
- case TEXT:
- jj_consume_token(TEXT);
- break;
- case COMMENT:
- jj_consume_token(COMMENT);
- break;
- case PI:
- jj_consume_token(PI);
- break;
- case FUNCTION_LAST:
- jj_consume_token(FUNCTION_LAST);
- break;
- case FUNCTION_POSITION:
- jj_consume_token(FUNCTION_POSITION);
- break;
- case FUNCTION_COUNT:
- jj_consume_token(FUNCTION_COUNT);
- break;
- case FUNCTION_ID:
- jj_consume_token(FUNCTION_ID);
- break;
- case FUNCTION_LOCAL_NAME:
- jj_consume_token(FUNCTION_LOCAL_NAME);
- break;
- case FUNCTION_NAMESPACE_URI:
- jj_consume_token(FUNCTION_NAMESPACE_URI);
- break;
- case FUNCTION_NAME:
- jj_consume_token(FUNCTION_NAME);
- break;
- case FUNCTION_STRING:
- jj_consume_token(FUNCTION_STRING);
- break;
- case FUNCTION_CONCAT:
- jj_consume_token(FUNCTION_CONCAT);
- break;
- case FUNCTION_STARTS_WITH:
- jj_consume_token(FUNCTION_STARTS_WITH);
- break;
- case FUNCTION_CONTAINS:
- jj_consume_token(FUNCTION_CONTAINS);
- break;
- case FUNCTION_SUBSTRING_BEFORE:
- jj_consume_token(FUNCTION_SUBSTRING_BEFORE);
- break;
- case FUNCTION_SUBSTRING_AFTER:
- jj_consume_token(FUNCTION_SUBSTRING_AFTER);
- break;
- case FUNCTION_SUBSTRING:
- jj_consume_token(FUNCTION_SUBSTRING);
- break;
- case FUNCTION_STRING_LENGTH:
- jj_consume_token(FUNCTION_STRING_LENGTH);
- break;
- case FUNCTION_NORMALIZE_SPACE:
- jj_consume_token(FUNCTION_NORMALIZE_SPACE);
- break;
- case FUNCTION_TRANSLATE:
- jj_consume_token(FUNCTION_TRANSLATE);
- break;
- case FUNCTION_BOOLEAN:
- jj_consume_token(FUNCTION_BOOLEAN);
- break;
- case FUNCTION_NOT:
- jj_consume_token(FUNCTION_NOT);
- break;
- case FUNCTION_TRUE:
- jj_consume_token(FUNCTION_TRUE);
- break;
- case FUNCTION_FALSE:
- jj_consume_token(FUNCTION_FALSE);
- break;
- case FUNCTION_NULL:
- jj_consume_token(FUNCTION_NULL);
- break;
- case FUNCTION_LANG:
- jj_consume_token(FUNCTION_LANG);
- break;
- case FUNCTION_NUMBER:
- jj_consume_token(FUNCTION_NUMBER);
- break;
- case FUNCTION_SUM:
- jj_consume_token(FUNCTION_SUM);
- break;
- case FUNCTION_FLOOR:
- jj_consume_token(FUNCTION_FLOOR);
- break;
- case FUNCTION_CEILING:
- jj_consume_token(FUNCTION_CEILING);
- break;
- case FUNCTION_ROUND:
- jj_consume_token(FUNCTION_ROUND);
- break;
- case FUNCTION_KEY:
- jj_consume_token(FUNCTION_KEY);
- break;
- case FUNCTION_FORMAT_NUMBER:
- jj_consume_token(FUNCTION_FORMAT_NUMBER);
- break;
- default:
- jj_la1[0] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- {if (true) return token.image;}
- throw new Error("Missing return statement in function");
- }
-
- final public String NCName_Without_CoreFunctions() throws ParseException {
- switch (jj_nt.kind) {
- case NCName:
- jj_consume_token(NCName);
- break;
- case OR:
- jj_consume_token(OR);
- break;
- case AND:
- jj_consume_token(AND);
- break;
- case MOD:
- jj_consume_token(MOD);
- break;
- case DIV:
- jj_consume_token(DIV);
- break;
- default:
- jj_la1[1] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- {if (true) return token.image;}
- throw new Error("Missing return statement in function");
- }
-
- final public int CoreFunctionName() throws ParseException {
- int code;
- switch (jj_nt.kind) {
- case FUNCTION_LAST:
- jj_consume_token(FUNCTION_LAST);
- code = Compiler.FUNCTION_LAST;
- break;
- case FUNCTION_POSITION:
- jj_consume_token(FUNCTION_POSITION);
- code = Compiler.FUNCTION_POSITION;
- break;
- case FUNCTION_COUNT:
- jj_consume_token(FUNCTION_COUNT);
- code = Compiler.FUNCTION_COUNT;
- break;
- case FUNCTION_ID:
- jj_consume_token(FUNCTION_ID);
- code = Compiler.FUNCTION_ID;
- break;
- case FUNCTION_LOCAL_NAME:
- jj_consume_token(FUNCTION_LOCAL_NAME);
- code = Compiler.FUNCTION_LOCAL_NAME;
- break;
- case FUNCTION_NAMESPACE_URI:
- jj_consume_token(FUNCTION_NAMESPACE_URI);
- code = Compiler.FUNCTION_NAMESPACE_URI;
- break;
- case FUNCTION_NAME:
- jj_consume_token(FUNCTION_NAME);
- code = Compiler.FUNCTION_NAME;
- break;
- case FUNCTION_STRING:
- jj_consume_token(FUNCTION_STRING);
- code = Compiler.FUNCTION_STRING;
- break;
- case FUNCTION_CONCAT:
- jj_consume_token(FUNCTION_CONCAT);
- code = Compiler.FUNCTION_CONCAT;
- break;
- case FUNCTION_STARTS_WITH:
- jj_consume_token(FUNCTION_STARTS_WITH);
- code = Compiler.FUNCTION_STARTS_WITH;
- break;
- case FUNCTION_CONTAINS:
- jj_consume_token(FUNCTION_CONTAINS);
- code = Compiler.FUNCTION_CONTAINS;
- break;
- case FUNCTION_SUBSTRING_BEFORE:
- jj_consume_token(FUNCTION_SUBSTRING_BEFORE);
- code = Compiler.FUNCTION_SUBSTRING_BEFORE;
- break;
- case FUNCTION_SUBSTRING_AFTER:
- jj_consume_token(FUNCTION_SUBSTRING_AFTER);
- code = Compiler.FUNCTION_SUBSTRING_AFTER;
- break;
- case FUNCTION_SUBSTRING:
- jj_consume_token(FUNCTION_SUBSTRING);
- code = Compiler.FUNCTION_SUBSTRING;
- break;
- case FUNCTION_STRING_LENGTH:
- jj_consume_token(FUNCTION_STRING_LENGTH);
- code = Compiler.FUNCTION_STRING_LENGTH;
- break;
- case FUNCTION_NORMALIZE_SPACE:
- jj_consume_token(FUNCTION_NORMALIZE_SPACE);
- code = Compiler.FUNCTION_NORMALIZE_SPACE;
- break;
- case FUNCTION_TRANSLATE:
- jj_consume_token(FUNCTION_TRANSLATE);
- code = Compiler.FUNCTION_TRANSLATE;
- break;
- case FUNCTION_BOOLEAN:
- jj_consume_token(FUNCTION_BOOLEAN);
- code = Compiler.FUNCTION_BOOLEAN;
- break;
- case FUNCTION_NOT:
- jj_consume_token(FUNCTION_NOT);
- code = Compiler.FUNCTION_NOT;
- break;
- case FUNCTION_TRUE:
- jj_consume_token(FUNCTION_TRUE);
- code = Compiler.FUNCTION_TRUE;
- break;
- case FUNCTION_FALSE:
- jj_consume_token(FUNCTION_FALSE);
- code = Compiler.FUNCTION_FALSE;
- break;
- case FUNCTION_NULL:
- jj_consume_token(FUNCTION_NULL);
- code = Compiler.FUNCTION_NULL;
- break;
- case FUNCTION_LANG:
- jj_consume_token(FUNCTION_LANG);
- code = Compiler.FUNCTION_LANG;
- break;
- case FUNCTION_NUMBER:
- jj_consume_token(FUNCTION_NUMBER);
- code = Compiler.FUNCTION_NUMBER;
- break;
- case FUNCTION_SUM:
- jj_consume_token(FUNCTION_SUM);
- code = Compiler.FUNCTION_SUM;
- break;
- case FUNCTION_FLOOR:
- jj_consume_token(FUNCTION_FLOOR);
- code = Compiler.FUNCTION_FLOOR;
- break;
- case FUNCTION_CEILING:
- jj_consume_token(FUNCTION_CEILING);
- code = Compiler.FUNCTION_CEILING;
- break;
- case FUNCTION_ROUND:
- jj_consume_token(FUNCTION_ROUND);
- code = Compiler.FUNCTION_ROUND;
- break;
- case FUNCTION_KEY:
- jj_consume_token(FUNCTION_KEY);
- code = Compiler.FUNCTION_KEY;
- break;
- case FUNCTION_FORMAT_NUMBER:
- jj_consume_token(FUNCTION_FORMAT_NUMBER);
- code = Compiler.FUNCTION_FORMAT_NUMBER;
- break;
- default:
- jj_la1[2] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- {if (true) return code;}
- throw new Error("Missing return statement in function");
- }
-
- final public Object QName() throws ParseException {
- String nc1, nc2 = null;
- nc1 = NCName();
- switch (jj_nt.kind) {
- case 79:
- jj_consume_token(79);
- nc2 = NCName();
- break;
- default:
- jj_la1[3] = jj_gen;
- ;
- }
- if (nc2 == null){
- {if (true) return compiler.qname(null, nc1);}
- }
- else {
- {if (true) return compiler.qname(nc1, nc2);}
- }
- throw new Error("Missing return statement in function");
- }
-
- final public Object QName_Without_CoreFunctions() throws ParseException {
- String nc1, nc2 = null;
- if (jj_2_1(2147483647)) {
- nc1 = NCName();
- jj_consume_token(79);
- nc2 = NCName();
- } else {
- switch (jj_nt.kind) {
- case OR:
- case AND:
- case MOD:
- case DIV:
- case NCName:
- nc1 = NCName_Without_CoreFunctions();
- break;
- default:
- jj_la1[4] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- }
- if (nc2 == null){
- {if (true) return compiler.qname(null, nc1);}
- }
- else {
- {if (true) return compiler.qname(nc1, nc2);}
- }
- throw new Error("Missing return statement in function");
- }
-
- final public Object parseExpression() throws ParseException {
- Object ex;
- ex = Expression();
- jj_consume_token(0);
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /* ################################################################################### */
- /* XSLT Patterns (http://www.w3.org/1999/08/WD-xslt-19990813) */
- /* ################################################################################### */
-
- /* [XSLT1] Pattern ::= LocationPathPattern | Pattern '|' LocationPathPattern */
-
- //void Pattern() :
- //{}
- //{
- // LocationPathPattern() ( <UNION> LocationPathPattern() )* <EOF>
- //}
- //
- //
- ///* [XSLT2] LocationPathPattern ::=
- // '/' RelativePathPattern? | IdKeyPattern (('/' | '//' RelativePathPattern)? | '//'? RelativePathPattern
- //*/
- //
- //void LocationPathPattern() :
- //{}
- //{
- // <SLASH> ( RelativePathPattern() )?
- // | (
- // LOOKAHEAD(IdKeyPattern())
- // IdKeyPattern() ( ( <SLASH> | <SLASHSLASH>) RelativePathPattern() )?
- // | ( <SLASHSLASH> )? RelativePathPattern()
- // )
- //}
- //
- //
- //
- ///* [XSLT3] IdKeyPattern ::= 'id' '(' Literal ')' | 'key' '(' Literal ',' Literal ')' */
- //
- //void IdKeyPattern() :
- //{}
- //{
- // <ID> "(" <Literal> ")"
- // | <KEY> "(" <Literal> "," <Literal> ")"
- //}
- //
- //
- ///* [XSLT4] RelativePathPattern ::= StepPattern | RelativePathPattern '/' StepPattern
- // | RelativePathPattern '//' StepPattern
- //*/
- //void RelativePathPattern() :
- //{}
- //{
- // StepPattern() ( ( <SLASH>| <SLASHSLASH> ) StepPattern() )*
- //}
- //
- //
- ///* [XSLT5] StepPattern ::= AbbreviatedAxisSpecifier NodeTest Predicate* */
- //void StepPattern() :
- //{}
- //{
- // AbbreviatedAxisSpecifier() NodeTest() (Predicate())*
- //}
-
-
-
- // See XPath Syntax (http://www.w3.org/TR/xpath )
-
-
- //void XPath() :
- //{}
- //{
- // LocationPath()
- // <EOF>
- //}
-
-
- /* [1] LocationPath ::= RelativeLocationPath | AbsoluteLocationPath */
- final public Object LocationPath() throws ParseException {
- Object ex = null;
- switch (jj_nt.kind) {
- case OR:
- case AND:
- case MOD:
- case DIV:
- case NODE:
- case TEXT:
- case COMMENT:
- case PI:
- case AXIS_SELF:
- case AXIS_CHILD:
- case AXIS_PARENT:
- case AXIS_ANCESTOR:
- case AXIS_ATTRIBUTE:
- case AXIS_NAMESPACE:
- case AXIS_PRECEDING:
- case AXIS_FOLLOWING:
- case AXIS_DESCENDANT:
- case AXIS_ANCESTOR_OR_SELF:
- case AXIS_FOLLOWING_SIBLING:
- case AXIS_PRECEDING_SIBLING:
- case AXIS_DESCENDANT_OR_SELF:
- case FUNCTION_LAST:
- case FUNCTION_POSITION:
- case FUNCTION_COUNT:
- case FUNCTION_ID:
- case FUNCTION_KEY:
- case FUNCTION_LOCAL_NAME:
- case FUNCTION_NAMESPACE_URI:
- case FUNCTION_NAME:
- case FUNCTION_STRING:
- case FUNCTION_CONCAT:
- case FUNCTION_STARTS_WITH:
- case FUNCTION_CONTAINS:
- case FUNCTION_SUBSTRING_BEFORE:
- case FUNCTION_SUBSTRING_AFTER:
- case FUNCTION_SUBSTRING:
- case FUNCTION_STRING_LENGTH:
- case FUNCTION_NORMALIZE_SPACE:
- case FUNCTION_TRANSLATE:
- case FUNCTION_BOOLEAN:
- case FUNCTION_NOT:
- case FUNCTION_TRUE:
- case FUNCTION_FALSE:
- case FUNCTION_NULL:
- case FUNCTION_LANG:
- case FUNCTION_NUMBER:
- case FUNCTION_SUM:
- case FUNCTION_FLOOR:
- case FUNCTION_CEILING:
- case FUNCTION_ROUND:
- case FUNCTION_FORMAT_NUMBER:
- case NCName:
- case 82:
- case 83:
- case 86:
- case 88:
- ex = RelativeLocationPath();
- break;
- case SLASH:
- case SLASHSLASH:
- ex = AbsoluteLocationPath();
- break;
- default:
- jj_la1[5] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /* [2] AbsoluteLocationPath ::= '/' RelativeLocationPath? | AbbreviatedAbsoluteLocationPath */
- /* [10] AbbreviatedAbsoluteLocationPath ::= '//' RelativeLocationPath */
- final public Object AbsoluteLocationPath() throws ParseException {
- ArrayList steps = new ArrayList();
- if (jj_2_2(2147483647)) {
- LocationStep(steps);
- label_1:
- while (true) {
- switch (jj_nt.kind) {
- case SLASH:
- case SLASHSLASH:
- ;
- break;
- default:
- jj_la1[6] = jj_gen;
- break label_1;
- }
- LocationStep(steps);
- }
- } else {
- switch (jj_nt.kind) {
- case SLASH:
- jj_consume_token(SLASH);
- break;
- default:
- jj_la1[7] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- }
- {if (true) return compiler.locationPath(true, steps.toArray());}
- throw new Error("Missing return statement in function");
- }
-
- /* [3] RelativeLocationPath ::= Step | RelativeLocationPath '/' Step | AbbreviatedRelativeLocationPath */
- final public Object RelativeLocationPath() throws ParseException {
- ArrayList steps = new ArrayList();
- NodeTest(steps);
- label_2:
- while (true) {
- switch (jj_nt.kind) {
- case SLASH:
- case SLASHSLASH:
- ;
- break;
- default:
- jj_la1[8] = jj_gen;
- break label_2;
- }
- LocationStep(steps);
- }
- {if (true) return compiler.locationPath(false, steps.toArray());}
- throw new Error("Missing return statement in function");
- }
-
- /* [3] RelativeLocationPath ::= Step | RelativeLocationPath '/' Step | AbbreviatedRelativeLocationPath */
- /* [11] AbbreviatedRelativeLocationPath ::= RelativeLocationPath '//' Step */
-
-
- /*--------------------*/
- /* 2.1 Location Steps */
- /*--------------------*/
-
- /* [4] Step ::= AxisSpecifier NodeTest Predicate* | AbbreviatedStep */
- final public void LocationStep(ArrayList steps) throws ParseException {
- Object t;
- Object s;
- switch (jj_nt.kind) {
- case SLASH:
- jj_consume_token(SLASH);
- break;
- case SLASHSLASH:
- jj_consume_token(SLASHSLASH);
- // Abbreviated step: descendant-or-self::node()
- t = compiler.nodeTypeTest(Compiler.NODE_TYPE_NODE);
- steps.add(compiler.step(Compiler.AXIS_DESCENDANT_OR_SELF, t, null));
- break;
- default:
- jj_la1[9] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- NodeTest(steps);
- }
-
- /* [7] NodeTest ::= WildcardName | NodeType '(' ')' | 'processing-instruction' '(' Literal ')' */
- final public void NodeTest(ArrayList steps) throws ParseException {
- int axis;
- int type = -1;
- String instruction = null;
- Object name = null;
- Object s;
- Object p;
- ArrayList ps = new ArrayList();
- switch (jj_nt.kind) {
- case OR:
- case AND:
- case MOD:
- case DIV:
- case NODE:
- case TEXT:
- case COMMENT:
- case PI:
- case AXIS_SELF:
- case AXIS_CHILD:
- case AXIS_PARENT:
- case AXIS_ANCESTOR:
- case AXIS_ATTRIBUTE:
- case AXIS_NAMESPACE:
- case AXIS_PRECEDING:
- case AXIS_FOLLOWING:
- case AXIS_DESCENDANT:
- case AXIS_ANCESTOR_OR_SELF:
- case AXIS_FOLLOWING_SIBLING:
- case AXIS_PRECEDING_SIBLING:
- case AXIS_DESCENDANT_OR_SELF:
- case FUNCTION_LAST:
- case FUNCTION_POSITION:
- case FUNCTION_COUNT:
- case FUNCTION_ID:
- case FUNCTION_KEY:
- case FUNCTION_LOCAL_NAME:
- case FUNCTION_NAMESPACE_URI:
- case FUNCTION_NAME:
- case FUNCTION_STRING:
- case FUNCTION_CONCAT:
- case FUNCTION_STARTS_WITH:
- case FUNCTION_CONTAINS:
- case FUNCTION_SUBSTRING_BEFORE:
- case FUNCTION_SUBSTRING_AFTER:
- case FUNCTION_SUBSTRING:
- case FUNCTION_STRING_LENGTH:
- case FUNCTION_NORMALIZE_SPACE:
- case FUNCTION_TRANSLATE:
- case FUNCTION_BOOLEAN:
- case FUNCTION_NOT:
- case FUNCTION_TRUE:
- case FUNCTION_FALSE:
- case FUNCTION_NULL:
- case FUNCTION_LANG:
- case FUNCTION_NUMBER:
- case FUNCTION_SUM:
- case FUNCTION_FLOOR:
- case FUNCTION_CEILING:
- case FUNCTION_ROUND:
- case FUNCTION_FORMAT_NUMBER:
- case NCName:
- case 86:
- case 88:
- axis = AxisSpecifier();
- if (jj_2_3(2147483647)) {
- type = NodeType();
- jj_consume_token(80);
- jj_consume_token(81);
- } else if (jj_2_4(2147483647)) {
- jj_consume_token(PI);
- jj_consume_token(80);
- jj_consume_token(Literal);
- instruction = unescape(token.image.substring(1, token.image.length() - 1));
- jj_consume_token(81);
- } else {
- switch (jj_nt.kind) {
- case OR:
- case AND:
- case MOD:
- case DIV:
- case NODE:
- case TEXT:
- case COMMENT:
- case PI:
- case FUNCTION_LAST:
- case FUNCTION_POSITION:
- case FUNCTION_COUNT:
- case FUNCTION_ID:
- case FUNCTION_KEY:
- case FUNCTION_LOCAL_NAME:
- case FUNCTION_NAMESPACE_URI:
- case FUNCTION_NAME:
- case FUNCTION_STRING:
- case FUNCTION_CONCAT:
- case FUNCTION_STARTS_WITH:
- case FUNCTION_CONTAINS:
- case FUNCTION_SUBSTRING_BEFORE:
- case FUNCTION_SUBSTRING_AFTER:
- case FUNCTION_SUBSTRING:
- case FUNCTION_STRING_LENGTH:
- case FUNCTION_NORMALIZE_SPACE:
- case FUNCTION_TRANSLATE:
- case FUNCTION_BOOLEAN:
- case FUNCTION_NOT:
- case FUNCTION_TRUE:
- case FUNCTION_FALSE:
- case FUNCTION_NULL:
- case FUNCTION_LANG:
- case FUNCTION_NUMBER:
- case FUNCTION_SUM:
- case FUNCTION_FLOOR:
- case FUNCTION_CEILING:
- case FUNCTION_ROUND:
- case FUNCTION_FORMAT_NUMBER:
- case NCName:
- case 88:
- name = WildcardName();
- break;
- default:
- jj_la1[10] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- }
- break;
- case 82:
- jj_consume_token(82);
- axis = Compiler.AXIS_SELF;
- type = Compiler.NODE_TYPE_NODE;
- break;
- case 83:
- jj_consume_token(83);
- axis = Compiler.AXIS_PARENT;
- type = Compiler.NODE_TYPE_NODE;
- break;
- default:
- jj_la1[11] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- label_3:
- while (true) {
- switch (jj_nt.kind) {
- case 84:
- ;
- break;
- default:
- jj_la1[12] = jj_gen;
- break label_3;
- }
- p = Predicate();
- ps.add(p);
- }
- if (name != null){
- s = compiler.nodeNameTest(name);
- }
- else if (instruction != null){
- s = compiler.processingInstructionTest(instruction);
- }
- else {
- s = compiler.nodeTypeTest(type);
- }
- steps.add(compiler.step(axis, s, ps.toArray()));
- }
-
- /* [5] AxisSpecifier ::= AxisName '::' | AbbreviatedAxisSpecifier */
- final public int AxisSpecifier() throws ParseException {
- int axis;
- switch (jj_nt.kind) {
- case AXIS_SELF:
- case AXIS_CHILD:
- case AXIS_PARENT:
- case AXIS_ANCESTOR:
- case AXIS_ATTRIBUTE:
- case AXIS_NAMESPACE:
- case AXIS_PRECEDING:
- case AXIS_FOLLOWING:
- case AXIS_DESCENDANT:
- case AXIS_ANCESTOR_OR_SELF:
- case AXIS_FOLLOWING_SIBLING:
- case AXIS_PRECEDING_SIBLING:
- case AXIS_DESCENDANT_OR_SELF:
- axis = AxisName();
- break;
- default:
- jj_la1[13] = jj_gen;
- axis = AbbreviatedAxisSpecifier();
- }
- {if (true) return axis;}
- throw new Error("Missing return statement in function");
- }
-
- /*----------*/
- /* 2.2 Axes */
- /*----------*/
-
- /* [6] AxisName ::= 'ancestor' | 'ancestor-or-self' | 'attribute' | 'child' | 'descendant'
- | 'descendant-or-self' | 'following' | 'following-sibling' | 'namespace'
- | 'parent' | 'preceding' | 'preceding-sibling' | 'self'
- */
- final public int AxisName() throws ParseException {
- int axis = 0;
- switch (jj_nt.kind) {
- case AXIS_SELF:
- jj_consume_token(AXIS_SELF);
- axis = Compiler.AXIS_SELF;
- break;
- case AXIS_CHILD:
- jj_consume_token(AXIS_CHILD);
- axis = Compiler.AXIS_CHILD;
- break;
- case AXIS_PARENT:
- jj_consume_token(AXIS_PARENT);
- axis = Compiler.AXIS_PARENT;
- break;
- case AXIS_ANCESTOR:
- jj_consume_token(AXIS_ANCESTOR);
- axis = Compiler.AXIS_ANCESTOR;
- break;
- case AXIS_ATTRIBUTE:
- jj_consume_token(AXIS_ATTRIBUTE);
- axis = Compiler.AXIS_ATTRIBUTE;
- break;
- case AXIS_NAMESPACE:
- jj_consume_token(AXIS_NAMESPACE);
- axis = Compiler.AXIS_NAMESPACE;
- break;
- case AXIS_PRECEDING:
- jj_consume_token(AXIS_PRECEDING);
- axis = Compiler.AXIS_PRECEDING;
- break;
- case AXIS_FOLLOWING:
- jj_consume_token(AXIS_FOLLOWING);
- axis = Compiler.AXIS_FOLLOWING;
- break;
- case AXIS_DESCENDANT:
- jj_consume_token(AXIS_DESCENDANT);
- axis = Compiler.AXIS_DESCENDANT;
- break;
- case AXIS_ANCESTOR_OR_SELF:
- jj_consume_token(AXIS_ANCESTOR_OR_SELF);
- axis = Compiler.AXIS_ANCESTOR_OR_SELF;
- break;
- case AXIS_FOLLOWING_SIBLING:
- jj_consume_token(AXIS_FOLLOWING_SIBLING);
- axis = Compiler.AXIS_FOLLOWING_SIBLING;
- break;
- case AXIS_PRECEDING_SIBLING:
- jj_consume_token(AXIS_PRECEDING_SIBLING);
- axis = Compiler.AXIS_PRECEDING_SIBLING;
- break;
- case AXIS_DESCENDANT_OR_SELF:
- jj_consume_token(AXIS_DESCENDANT_OR_SELF);
- axis = Compiler.AXIS_DESCENDANT_OR_SELF;
- break;
- default:
- jj_la1[14] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- {if (true) return axis;}
- throw new Error("Missing return statement in function");
- }
-
- /*----------------*/
- /* 2.3 Node Tests */
- /*----------------*/
-
- /*----------------*/
- /* 2.4 Predicates */
- /*----------------*/
-
- /* [8] Predicate ::= '[' PredicateExpr ']' */
- /* [9] PredicateExpr ::= Expr */
- final public Object Predicate() throws ParseException {
- Object ex;
- jj_consume_token(84);
- ex = Expression();
- jj_consume_token(85);
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /* [12] AbbreviatedStep ::= '.' | '..' */
-
- /* [13] AbbreviatedAxisSpecifier ::= '@'? */
- final public int AbbreviatedAxisSpecifier() throws ParseException {
- int axis = Compiler.AXIS_CHILD;
- switch (jj_nt.kind) {
- case 86:
- jj_consume_token(86);
- axis = Compiler.AXIS_ATTRIBUTE;
- break;
- default:
- jj_la1[15] = jj_gen;
- ;
- }
- {if (true) return axis;}
- throw new Error("Missing return statement in function");
- }
-
- /*---------------*/
- /* 3 Expressions */
- /*---------------*/
-
- /*------------*/
- /* 3.1 Basics */
- /*------------*/
-
- /*
- The effect of the grammar is that the order of precedence is (lowest precedence first):
- or
- and
- =, !=
- <=, <, >=, >
- and all operators are left associative.
- For example, 3 > 2 > 1 is equivalent to (3 > 2) > 1, which evaluates to false.
- */
-
- /* [14] Expr ::= OrExpr */
- final public Object Expression() throws ParseException {
- Object ex;
- ex = OrExpr();
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /* [15] PrimaryExpr ::= VariableReference | '(' Expr ')' | Literal | Number | FunctionCall */
- final public Object PrimaryExpr() throws ParseException {
- Object ex = null;
- switch (jj_nt.kind) {
- case VARIABLE:
- ex = VariableReference();
- break;
- case 80:
- jj_consume_token(80);
- ex = Expression();
- jj_consume_token(81);
- break;
- case Literal:
- jj_consume_token(Literal);
- ex = compiler.literal(unescape(token.image.substring(1, token.image.length() - 1)));
- break;
- case Number:
- jj_consume_token(Number);
- ex = compiler.number(token.image);
- break;
- default:
- jj_la1[16] = jj_gen;
- if (jj_2_5(2147483647)) {
- ex = CoreFunctionCall();
- } else {
- switch (jj_nt.kind) {
- case OR:
- case AND:
- case MOD:
- case DIV:
- case NODE:
- case TEXT:
- case COMMENT:
- case PI:
- case FUNCTION_LAST:
- case FUNCTION_POSITION:
- case FUNCTION_COUNT:
- case FUNCTION_ID:
- case FUNCTION_KEY:
- case FUNCTION_LOCAL_NAME:
- case FUNCTION_NAMESPACE_URI:
- case FUNCTION_NAME:
- case FUNCTION_STRING:
- case FUNCTION_CONCAT:
- case FUNCTION_STARTS_WITH:
- case FUNCTION_CONTAINS:
- case FUNCTION_SUBSTRING_BEFORE:
- case FUNCTION_SUBSTRING_AFTER:
- case FUNCTION_SUBSTRING:
- case FUNCTION_STRING_LENGTH:
- case FUNCTION_NORMALIZE_SPACE:
- case FUNCTION_TRANSLATE:
- case FUNCTION_BOOLEAN:
- case FUNCTION_NOT:
- case FUNCTION_TRUE:
- case FUNCTION_FALSE:
- case FUNCTION_NULL:
- case FUNCTION_LANG:
- case FUNCTION_NUMBER:
- case FUNCTION_SUM:
- case FUNCTION_FLOOR:
- case FUNCTION_CEILING:
- case FUNCTION_ROUND:
- case FUNCTION_FORMAT_NUMBER:
- case NCName:
- ex = FunctionCall();
- break;
- default:
- jj_la1[17] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- }
- }
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /*--------------------*/
- /* 3.2 Function Calls */
- /*--------------------*/
-
- /* [16] FunctionCall ::= FunctionName '(' ( Argument ( ',' Argument)*)? ')' */
- final public Object FunctionCall() throws ParseException {
- Object name;
- ArrayList args;
- name = FunctionName();
- args = ArgumentList();
- if (args == null){
- {if (true) return compiler.function(name, null);}
- }
- else {
- {if (true) return compiler.function(name, args.toArray());}
- }
- throw new Error("Missing return statement in function");
- }
-
- final public Object CoreFunctionCall() throws ParseException {
- int code = 0;
- ArrayList args;
- code = CoreFunctionName();
- args = ArgumentList();
- if (args == null){
- {if (true) return compiler.function(code, null);}
- }
- else {
- {if (true) return compiler.function(code, args.toArray());}
- }
- throw new Error("Missing return statement in function");
- }
-
- final public ArrayList ArgumentList() throws ParseException {
- ArrayList args = null;
- Object arg;
- jj_consume_token(80);
- switch (jj_nt.kind) {
- case SLASH:
- case SLASHSLASH:
- case MINUS:
- case VARIABLE:
- case Literal:
- case Number:
- case OR:
- case AND:
- case MOD:
- case DIV:
- case NODE:
- case TEXT:
- case COMMENT:
- case PI:
- case AXIS_SELF:
- case AXIS_CHILD:
- case AXIS_PARENT:
- case AXIS_ANCESTOR:
- case AXIS_ATTRIBUTE:
- case AXIS_NAMESPACE:
- case AXIS_PRECEDING:
- case AXIS_FOLLOWING:
- case AXIS_DESCENDANT:
- case AXIS_ANCESTOR_OR_SELF:
- case AXIS_FOLLOWING_SIBLING:
- case AXIS_PRECEDING_SIBLING:
- case AXIS_DESCENDANT_OR_SELF:
- case FUNCTION_LAST:
- case FUNCTION_POSITION:
- case FUNCTION_COUNT:
- case FUNCTION_ID:
- case FUNCTION_KEY:
- case FUNCTION_LOCAL_NAME:
- case FUNCTION_NAMESPACE_URI:
- case FUNCTION_NAME:
- case FUNCTION_STRING:
- case FUNCTION_CONCAT:
- case FUNCTION_STARTS_WITH:
- case FUNCTION_CONTAINS:
- case FUNCTION_SUBSTRING_BEFORE:
- case FUNCTION_SUBSTRING_AFTER:
- case FUNCTION_SUBSTRING:
- case FUNCTION_STRING_LENGTH:
- case FUNCTION_NORMALIZE_SPACE:
- case FUNCTION_TRANSLATE:
- case FUNCTION_BOOLEAN:
- case FUNCTION_NOT:
- case FUNCTION_TRUE:
- case FUNCTION_FALSE:
- case FUNCTION_NULL:
- case FUNCTION_LANG:
- case FUNCTION_NUMBER:
- case FUNCTION_SUM:
- case FUNCTION_FLOOR:
- case FUNCTION_CEILING:
- case FUNCTION_ROUND:
- case FUNCTION_FORMAT_NUMBER:
- case NCName:
- case 80:
- case 82:
- case 83:
- case 86:
- case 88:
- arg = Argument();
- args = new ArrayList(); args.add(arg);
- label_4:
- while (true) {
- switch (jj_nt.kind) {
- case 87:
- ;
- break;
- default:
- jj_la1[18] = jj_gen;
- break label_4;
- }
- jj_consume_token(87);
- arg = Argument();
- args.add(arg);
- }
- break;
- default:
- jj_la1[19] = jj_gen;
- ;
- }
- jj_consume_token(81);
- {if (true) return args;}
- throw new Error("Missing return statement in function");
- }
-
- /* [17] Argument ::= Expr */
- final public Object Argument() throws ParseException {
- Object ex;
- ex = Expression();
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /*---------------*/
- /* 3.3 Node-sets */
- /*---------------*/
-
- /* [18] UnionExpr ::= PathExpr | UnionExpr '|' PathExpr */
- final public Object UnionExpr() throws ParseException {
- Object ex, r;
- ArrayList list = null;
- ex = PathExpr();
- label_5:
- while (true) {
- switch (jj_nt.kind) {
- case UNION:
- ;
- break;
- default:
- jj_la1[20] = jj_gen;
- break label_5;
- }
- jj_consume_token(UNION);
- r = PathExpr();
- if (list == null){
- list = new ArrayList();
- list.add(ex);
- }
- list.add(r);
- }
- if (list != null){
- ex = compiler.union(list.toArray());
- }
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /* [19] PathExpr ::= LocationPath | FilterExpr | FilterExpr '/' RelativeLocationPath | FilterExpr '//' RelativeLocationPath */
- final public Object PathExpr() throws ParseException {
- Object ex = null;
- Object[] steps;
- if (jj_2_6(2147483647)) {
- ex = FilterExpr();
- } else {
- switch (jj_nt.kind) {
- case SLASH:
- case SLASHSLASH:
- case OR:
- case AND:
- case MOD:
- case DIV:
- case NODE:
- case TEXT:
- case COMMENT:
- case PI:
- case AXIS_SELF:
- case AXIS_CHILD:
- case AXIS_PARENT:
- case AXIS_ANCESTOR:
- case AXIS_ATTRIBUTE:
- case AXIS_NAMESPACE:
- case AXIS_PRECEDING:
- case AXIS_FOLLOWING:
- case AXIS_DESCENDANT:
- case AXIS_ANCESTOR_OR_SELF:
- case AXIS_FOLLOWING_SIBLING:
- case AXIS_PRECEDING_SIBLING:
- case AXIS_DESCENDANT_OR_SELF:
- case FUNCTION_LAST:
- case FUNCTION_POSITION:
- case FUNCTION_COUNT:
- case FUNCTION_ID:
- case FUNCTION_KEY:
- case FUNCTION_LOCAL_NAME:
- case FUNCTION_NAMESPACE_URI:
- case FUNCTION_NAME:
- case FUNCTION_STRING:
- case FUNCTION_CONCAT:
- case FUNCTION_STARTS_WITH:
- case FUNCTION_CONTAINS:
- case FUNCTION_SUBSTRING_BEFORE:
- case FUNCTION_SUBSTRING_AFTER:
- case FUNCTION_SUBSTRING:
- case FUNCTION_STRING_LENGTH:
- case FUNCTION_NORMALIZE_SPACE:
- case FUNCTION_TRANSLATE:
- case FUNCTION_BOOLEAN:
- case FUNCTION_NOT:
- case FUNCTION_TRUE:
- case FUNCTION_FALSE:
- case FUNCTION_NULL:
- case FUNCTION_LANG:
- case FUNCTION_NUMBER:
- case FUNCTION_SUM:
- case FUNCTION_FLOOR:
- case FUNCTION_CEILING:
- case FUNCTION_ROUND:
- case FUNCTION_FORMAT_NUMBER:
- case NCName:
- case 82:
- case 83:
- case 86:
- case 88:
- ex = LocationPath();
- break;
- default:
- jj_la1[21] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- }
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /* [20] FilterExpr ::= PrimaryExpr | FilterExpr Predicate */
- final public Object FilterExpr() throws ParseException {
- Object ex, p;
- ArrayList ps = new ArrayList();
- boolean path = false;
- ArrayList steps = new ArrayList();
- ex = PrimaryExpr();
- label_6:
- while (true) {
- switch (jj_nt.kind) {
- case 84:
- ;
- break;
- default:
- jj_la1[22] = jj_gen;
- break label_6;
- }
- p = Predicate();
- path = true;
- ps.add(p);
- }
- label_7:
- while (true) {
- switch (jj_nt.kind) {
- case SLASH:
- case SLASHSLASH:
- ;
- break;
- default:
- jj_la1[23] = jj_gen;
- break label_7;
- }
- LocationStep(steps);
- path = true;
- }
- if (path){
- {if (true) return compiler.expressionPath(ex, ps.toArray(), steps.toArray());}
- }
- else {
- {if (true) return ex;}
- }
- throw new Error("Missing return statement in function");
- }
-
- /*--------------*/
- /* 3.4 Booleans */
- /*--------------*/
-
- /* [21] OrExpr ::= AndExpr | OrExpr 'or' AndExpr */
- final public Object OrExpr() throws ParseException {
- Object ex, r;
- ArrayList list = null;
- ex = AndExpr();
- label_8:
- while (true) {
- switch (jj_nt.kind) {
- case OR:
- ;
- break;
- default:
- jj_la1[24] = jj_gen;
- break label_8;
- }
- jj_consume_token(OR);
- r = AndExpr();
- if (list == null){
- list = new ArrayList();
- list.add(ex);
- }
- list.add(r);
- }
- if (list != null){
- ex = compiler.or(list.toArray());
- }
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /* [22] AndExpr ::= EqualityExpr | AndExpr 'and' EqualityExpr */
- final public Object AndExpr() throws ParseException {
- Object ex, r;
- ArrayList list = null;
- ex = EqualityExpr();
- label_9:
- while (true) {
- switch (jj_nt.kind) {
- case AND:
- ;
- break;
- default:
- jj_la1[25] = jj_gen;
- break label_9;
- }
- jj_consume_token(AND);
- r = EqualityExpr();
- if (list == null){
- list = new ArrayList();
- list.add(ex);
- }
- list.add(r);
- }
- if (list != null){
- ex = compiler.and(list.toArray());
- }
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /* [23] EqualityExpr ::= RelationalExpr | EqualityExpr '=' RelationalExpr | EqualityExpr '!=' RelationalExpr */
- final public Object EqualityExpr() throws ParseException {
- Object ex, r;
- ex = RelationalExpr();
- label_10:
- while (true) {
- switch (jj_nt.kind) {
- case EQ:
- case NEQ:
- ;
- break;
- default:
- jj_la1[26] = jj_gen;
- break label_10;
- }
- switch (jj_nt.kind) {
- case EQ:
- jj_consume_token(EQ);
- r = RelationalExpr();
- ex = compiler.equal(ex, r);
- break;
- case NEQ:
- jj_consume_token(NEQ);
- r = RelationalExpr();
- ex = compiler.notEqual(ex, r);
- break;
- default:
- jj_la1[27] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- }
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /* [24] RelationalExpr ::= AdditiveExpr | RelationalExpr '<' AdditiveExpr | RelationalExpr '>' AdditiveExpr
- | RelationalExpr '<=' AdditiveExpr | RelationalExpr '>=' AdditiveExpr */
- final public Object RelationalExpr() throws ParseException {
- Object ex, r;
- ex = AdditiveExpr();
- label_11:
- while (true) {
- switch (jj_nt.kind) {
- case LT:
- case LTE:
- case GT:
- case GTE:
- ;
- break;
- default:
- jj_la1[28] = jj_gen;
- break label_11;
- }
- switch (jj_nt.kind) {
- case LT:
- jj_consume_token(LT);
- r = AdditiveExpr();
- ex = compiler.lessThan(ex, r);
- break;
- case GT:
- jj_consume_token(GT);
- r = AdditiveExpr();
- ex = compiler.greaterThan(ex, r);
- break;
- case LTE:
- jj_consume_token(LTE);
- r = AdditiveExpr();
- ex = compiler.lessThanOrEqual(ex, r);
- break;
- case GTE:
- jj_consume_token(GTE);
- r = AdditiveExpr();
- ex = compiler.greaterThanOrEqual(ex, r);
- break;
- default:
- jj_la1[29] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- }
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /*-------------*/
- /* 3.5 Numbers */
- /*-------------*/
-
- /* [25] AdditiveExpr ::= MultiplicativeExpr | AdditiveExpr '+' MultiplicativeExpr | AdditiveExpr '-' MultiplicativeExpr */
- final public Object AdditiveExpr() throws ParseException {
- Object ex, r;
- ArrayList list = null;
- ex = SubtractiveExpr();
- label_12:
- while (true) {
- switch (jj_nt.kind) {
- case PLUS:
- ;
- break;
- default:
- jj_la1[30] = jj_gen;
- break label_12;
- }
- jj_consume_token(PLUS);
- r = SubtractiveExpr();
- if (list == null){
- list = new ArrayList();
- list.add(ex);
- }
- list.add(r);
- }
- if (list != null){
- ex = compiler.sum(list.toArray());
- }
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- final public Object SubtractiveExpr() throws ParseException {
- Object ex, r = null;
- ex = MultiplicativeExpr();
- label_13:
- while (true) {
- switch (jj_nt.kind) {
- case MINUS:
- ;
- break;
- default:
- jj_la1[31] = jj_gen;
- break label_13;
- }
- jj_consume_token(MINUS);
- r = MultiplicativeExpr();
- ex = compiler.minus(ex, r);
- }
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /* [26] MultiplicativeExpr ::= UnaryExpr | MultiplicativeExpr MultiplyOperator UnaryExpr
- | MultiplicativeExpr 'div' UnaryExpr | MultiplicativeExpr 'mod' UnaryExpr */
- final public Object MultiplicativeExpr() throws ParseException {
- Object ex, r;
- ex = UnaryExpr();
- label_14:
- while (true) {
- switch (jj_nt.kind) {
- case MOD:
- case DIV:
- case 88:
- ;
- break;
- default:
- jj_la1[32] = jj_gen;
- break label_14;
- }
- switch (jj_nt.kind) {
- case 88:
- jj_consume_token(88);
- r = UnaryExpr();
- ex = compiler.multiply(ex, r);
- break;
- case DIV:
- jj_consume_token(DIV);
- r = UnaryExpr();
- ex = compiler.divide(ex, r);
- break;
- case MOD:
- jj_consume_token(MOD);
- r = UnaryExpr();
- ex = compiler.mod(ex, r);
- break;
- default:
- jj_la1[33] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- }
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /* [27] UnaryExpr ::= UnionExpr | '-' UnaryExpr */
- final public Object UnaryExpr() throws ParseException {
- Object ex;
- switch (jj_nt.kind) {
- case SLASH:
- case SLASHSLASH:
- case VARIABLE:
- case Literal:
- case Number:
- case OR:
- case AND:
- case MOD:
- case DIV:
- case NODE:
- case TEXT:
- case COMMENT:
- case PI:
- case AXIS_SELF:
- case AXIS_CHILD:
- case AXIS_PARENT:
- case AXIS_ANCESTOR:
- case AXIS_ATTRIBUTE:
- case AXIS_NAMESPACE:
- case AXIS_PRECEDING:
- case AXIS_FOLLOWING:
- case AXIS_DESCENDANT:
- case AXIS_ANCESTOR_OR_SELF:
- case AXIS_FOLLOWING_SIBLING:
- case AXIS_PRECEDING_SIBLING:
- case AXIS_DESCENDANT_OR_SELF:
- case FUNCTION_LAST:
- case FUNCTION_POSITION:
- case FUNCTION_COUNT:
- case FUNCTION_ID:
- case FUNCTION_KEY:
- case FUNCTION_LOCAL_NAME:
- case FUNCTION_NAMESPACE_URI:
- case FUNCTION_NAME:
- case FUNCTION_STRING:
- case FUNCTION_CONCAT:
- case FUNCTION_STARTS_WITH:
- case FUNCTION_CONTAINS:
- case FUNCTION_SUBSTRING_BEFORE:
- case FUNCTION_SUBSTRING_AFTER:
- case FUNCTION_SUBSTRING:
- case FUNCTION_STRING_LENGTH:
- case FUNCTION_NORMALIZE_SPACE:
- case FUNCTION_TRANSLATE:
- case FUNCTION_BOOLEAN:
- case FUNCTION_NOT:
- case FUNCTION_TRUE:
- case FUNCTION_FALSE:
- case FUNCTION_NULL:
- case FUNCTION_LANG:
- case FUNCTION_NUMBER:
- case FUNCTION_SUM:
- case FUNCTION_FLOOR:
- case FUNCTION_CEILING:
- case FUNCTION_ROUND:
- case FUNCTION_FORMAT_NUMBER:
- case NCName:
- case 80:
- case 82:
- case 83:
- case 86:
- case 88:
- ex = UnionExpr();
- break;
- case MINUS:
- jj_consume_token(MINUS);
- ex = UnaryExpr();
- ex = compiler.minus(ex);
- break;
- default:
- jj_la1[34] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- {if (true) return ex;}
- throw new Error("Missing return statement in function");
- }
-
- /*-------------*/
- /* 3.6 Strings */
- /*-------------*/
-
- /*----------------------------------*/
- /* 3.7 Expression Lexical Structure */
- /*----------------------------------*/
- /*
- The following special tokenization rules must be applied in the order
- specified to disambiguate the grammar:
-
- 1. If there is a preceding token and the preceding token is not one of
- @, ::, (, [, , or an Operator,
- then a * must be recognized as a MultiplyOperator and an NCName must
- be recognized as an OperatorName.
-
- 2. If the character following an NCName (possibly after intervening ExprWhitespace)
- is (, then the token must be recognized as a NodeType or a FunctionName.
-
- 3. If the two characters following an NCName (possibly after intervening ExprWhitespace)
- are ::, then the token must be recognized as an AxisName.
-
- 4. Otherwise, the token must not be recognized as a MultiplyOperator, an OperatorName,
- a NodeType, a FunctionName, or an AxisName.
- */
-
- /*
- [28] ExprToken ::= '(' | ')' | '[' | ']' | '.' | '..' | '@' | ',' | '::'
- | WildcardName | NodeType | Operator | FunctionName | AxisName | Literal
- | Number | VariableReference
- */
- /* [34] MultiplyOperator ::= '*' */
-
- /* [35] FunctionName ::= QName - NodeType */
- final public Object FunctionName() throws ParseException {
- Object qname;
- qname = QName_Without_CoreFunctions();
- {if (true) return qname;}
- throw new Error("Missing return statement in function");
- }
-
- /* [36] VariableReference ::= '$' QName */
- final public Object VariableReference() throws ParseException {
- Object ex;
- jj_consume_token(VARIABLE);
- ex = QName();
- {if (true) return compiler.variableReference(ex);}
- throw new Error("Missing return statement in function");
- }
-
- /* [37] WildcardName ::= '*' | NCName ':' '*' | QName */
- final public Object WildcardName() throws ParseException {
- Object qn;
- String nc1, nc2 = null;
- switch (jj_nt.kind) {
- case 88:
- jj_consume_token(88);
- break;
- case OR:
- case AND:
- case MOD:
- case DIV:
- case NODE:
- case TEXT:
- case COMMENT:
- case PI:
- case FUNCTION_LAST:
- case FUNCTION_POSITION:
- case FUNCTION_COUNT:
- case FUNCTION_ID:
- case FUNCTION_KEY:
- case FUNCTION_LOCAL_NAME:
- case FUNCTION_NAMESPACE_URI:
- case FUNCTION_NAME:
- case FUNCTION_STRING:
- case FUNCTION_CONCAT:
- case FUNCTION_STARTS_WITH:
- case FUNCTION_CONTAINS:
- case FUNCTION_SUBSTRING_BEFORE:
- case FUNCTION_SUBSTRING_AFTER:
- case FUNCTION_SUBSTRING:
- case FUNCTION_STRING_LENGTH:
- case FUNCTION_NORMALIZE_SPACE:
- case FUNCTION_TRANSLATE:
- case FUNCTION_BOOLEAN:
- case FUNCTION_NOT:
- case FUNCTION_TRUE:
- case FUNCTION_FALSE:
- case FUNCTION_NULL:
- case FUNCTION_LANG:
- case FUNCTION_NUMBER:
- case FUNCTION_SUM:
- case FUNCTION_FLOOR:
- case FUNCTION_CEILING:
- case FUNCTION_ROUND:
- case FUNCTION_FORMAT_NUMBER:
- case NCName:
- NCName();
- break;
- default:
- jj_la1[35] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- nc1 = token.image;
- switch (jj_nt.kind) {
- case 79:
- jj_consume_token(79);
- switch (jj_nt.kind) {
- case 88:
- jj_consume_token(88);
- break;
- case OR:
- case AND:
- case MOD:
- case DIV:
- case NODE:
- case TEXT:
- case COMMENT:
- case PI:
- case FUNCTION_LAST:
- case FUNCTION_POSITION:
- case FUNCTION_COUNT:
- case FUNCTION_ID:
- case FUNCTION_KEY:
- case FUNCTION_LOCAL_NAME:
- case FUNCTION_NAMESPACE_URI:
- case FUNCTION_NAME:
- case FUNCTION_STRING:
- case FUNCTION_CONCAT:
- case FUNCTION_STARTS_WITH:
- case FUNCTION_CONTAINS:
- case FUNCTION_SUBSTRING_BEFORE:
- case FUNCTION_SUBSTRING_AFTER:
- case FUNCTION_SUBSTRING:
- case FUNCTION_STRING_LENGTH:
- case FUNCTION_NORMALIZE_SPACE:
- case FUNCTION_TRANSLATE:
- case FUNCTION_BOOLEAN:
- case FUNCTION_NOT:
- case FUNCTION_TRUE:
- case FUNCTION_FALSE:
- case FUNCTION_NULL:
- case FUNCTION_LANG:
- case FUNCTION_NUMBER:
- case FUNCTION_SUM:
- case FUNCTION_FLOOR:
- case FUNCTION_CEILING:
- case FUNCTION_ROUND:
- case FUNCTION_FORMAT_NUMBER:
- case NCName:
- NCName();
- break;
- default:
- jj_la1[36] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- nc2 = token.image;
- break;
- default:
- jj_la1[37] = jj_gen;
- ;
- }
- if (nc2 != null){
- qn = compiler.qname(nc1, nc2);
- }
- else {
- qn = compiler.qname(null, nc1);
- }
- {if (true) return qn;}
- throw new Error("Missing return statement in function");
- }
-
- /* [38] NodeType ::= 'comment' | 'text' | 'processing-instruction' | 'node' */
- final public int NodeType() throws ParseException {
- int type;
- switch (jj_nt.kind) {
- case TEXT:
- jj_consume_token(TEXT);
- type = Compiler.NODE_TYPE_TEXT;
- break;
- case NODE:
- jj_consume_token(NODE);
- type = Compiler.NODE_TYPE_NODE;
- break;
- case COMMENT:
- jj_consume_token(COMMENT);
- type = Compiler.NODE_TYPE_COMMENT;
- break;
- case PI:
- jj_consume_token(PI);
- type = Compiler.NODE_TYPE_PI;
- break;
- default:
- jj_la1[38] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
- }
- {if (true) return type;}
- throw new Error("Missing return statement in function");
- }
-
- final private boolean jj_2_1(int xla) {
- jj_la = xla; jj_lastpos = jj_scanpos = token;
- boolean retval = !jj_3_1();
- jj_save(0, xla);
- return retval;
- }
-
- final private boolean jj_2_2(int xla) {
- jj_la = xla; jj_lastpos = jj_scanpos = token;
- boolean retval = !jj_3_2();
- jj_save(1, xla);
- return retval;
- }
-
- final private boolean jj_2_3(int xla) {
- jj_la = xla; jj_lastpos = jj_scanpos = token;
- boolean retval = !jj_3_3();
- jj_save(2, xla);
- return retval;
- }
-
- final private boolean jj_2_4(int xla) {
- jj_la = xla; jj_lastpos = jj_scanpos = token;
- boolean retval = !jj_3_4();
- jj_save(3, xla);
- return retval;
- }
-
- final private boolean jj_2_5(int xla) {
- jj_la = xla; jj_lastpos = jj_scanpos = token;
- boolean retval = !jj_3_5();
- jj_save(4, xla);
- return retval;
- }
-
- final private boolean jj_2_6(int xla) {
- jj_la = xla; jj_lastpos = jj_scanpos = token;
- boolean retval = !jj_3_6();
- jj_save(5, xla);
- return retval;
- }
-
- final private boolean jj_3R_65() {
- if (jj_scan_token(FUNCTION_ID)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_104() {
- if (jj_3R_118()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_64() {
- if (jj_scan_token(FUNCTION_COUNT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_63() {
- if (jj_scan_token(FUNCTION_POSITION)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_62() {
- if (jj_scan_token(FUNCTION_LAST)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_18() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_62()) {
- jj_scanpos = xsp;
- if (jj_3R_63()) {
- jj_scanpos = xsp;
- if (jj_3R_64()) {
- jj_scanpos = xsp;
- if (jj_3R_65()) {
- jj_scanpos = xsp;
- if (jj_3R_66()) {
- jj_scanpos = xsp;
- if (jj_3R_67()) {
- jj_scanpos = xsp;
- if (jj_3R_68()) {
- jj_scanpos = xsp;
- if (jj_3R_69()) {
- jj_scanpos = xsp;
- if (jj_3R_70()) {
- jj_scanpos = xsp;
- if (jj_3R_71()) {
- jj_scanpos = xsp;
- if (jj_3R_72()) {
- jj_scanpos = xsp;
- if (jj_3R_73()) {
- jj_scanpos = xsp;
- if (jj_3R_74()) {
- jj_scanpos = xsp;
- if (jj_3R_75()) {
- jj_scanpos = xsp;
- if (jj_3R_76()) {
- jj_scanpos = xsp;
- if (jj_3R_77()) {
- jj_scanpos = xsp;
- if (jj_3R_78()) {
- jj_scanpos = xsp;
- if (jj_3R_79()) {
- jj_scanpos = xsp;
- if (jj_3R_80()) {
- jj_scanpos = xsp;
- if (jj_3R_81()) {
- jj_scanpos = xsp;
- if (jj_3R_82()) {
- jj_scanpos = xsp;
- if (jj_3R_83()) {
- jj_scanpos = xsp;
- if (jj_3R_84()) {
- jj_scanpos = xsp;
- if (jj_3R_85()) {
- jj_scanpos = xsp;
- if (jj_3R_86()) {
- jj_scanpos = xsp;
- if (jj_3R_87()) {
- jj_scanpos = xsp;
- if (jj_3R_88()) {
- jj_scanpos = xsp;
- if (jj_3R_89()) {
- jj_scanpos = xsp;
- if (jj_3R_90()) {
- jj_scanpos = xsp;
- if (jj_3R_91()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_111() {
- if (jj_scan_token(DIV)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_110() {
- if (jj_scan_token(MOD)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_109() {
- if (jj_scan_token(AND)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_108() {
- if (jj_scan_token(OR)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_107() {
- if (jj_scan_token(NCName)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_173() {
- if (jj_scan_token(MINUS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_170()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_98() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_107()) {
- jj_scanpos = xsp;
- if (jj_3R_108()) {
- jj_scanpos = xsp;
- if (jj_3R_109()) {
- jj_scanpos = xsp;
- if (jj_3R_110()) {
- jj_scanpos = xsp;
- if (jj_3R_111()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_171() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_174()) {
- jj_scanpos = xsp;
- if (jj_3R_175()) {
- jj_scanpos = xsp;
- if (jj_3R_176()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_172() {
- if (jj_3R_177()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_153() {
- if (jj_scan_token(86)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_130() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_153()) jj_scanpos = xsp;
- else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_54() {
- if (jj_scan_token(FUNCTION_FORMAT_NUMBER)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_170() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_172()) {
- jj_scanpos = xsp;
- if (jj_3R_173()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_53() {
- if (jj_scan_token(FUNCTION_KEY)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_52() {
- if (jj_scan_token(FUNCTION_ROUND)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_51() {
- if (jj_scan_token(FUNCTION_CEILING)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_50() {
- if (jj_scan_token(FUNCTION_FLOOR)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_49() {
- if (jj_scan_token(FUNCTION_SUM)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_48() {
- if (jj_scan_token(FUNCTION_NUMBER)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_176() {
- if (jj_scan_token(MOD)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_170()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_47() {
- if (jj_scan_token(FUNCTION_LANG)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_175() {
- if (jj_scan_token(DIV)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_170()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_46() {
- if (jj_scan_token(FUNCTION_NULL)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_174() {
- if (jj_scan_token(88)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_170()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_45() {
- if (jj_scan_token(FUNCTION_FALSE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_44() {
- if (jj_scan_token(FUNCTION_TRUE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_43() {
- if (jj_scan_token(FUNCTION_NOT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_42() {
- if (jj_scan_token(FUNCTION_BOOLEAN)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_41() {
- if (jj_scan_token(FUNCTION_TRANSLATE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_116() {
- if (jj_scan_token(84)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_104()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(85)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_40() {
- if (jj_scan_token(FUNCTION_NORMALIZE_SPACE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_39() {
- if (jj_scan_token(FUNCTION_STRING_LENGTH)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_38() {
- if (jj_scan_token(FUNCTION_SUBSTRING)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_37() {
- if (jj_scan_token(FUNCTION_SUBSTRING_AFTER)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_36() {
- if (jj_scan_token(FUNCTION_SUBSTRING_BEFORE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_168() {
- if (jj_3R_170()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_171()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3R_35() {
- if (jj_scan_token(FUNCTION_CONTAINS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_34() {
- if (jj_scan_token(FUNCTION_STARTS_WITH)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_33() {
- if (jj_scan_token(FUNCTION_CONCAT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_32() {
- if (jj_scan_token(FUNCTION_STRING)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_31() {
- if (jj_scan_token(FUNCTION_NAME)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_30() {
- if (jj_scan_token(FUNCTION_NAMESPACE_URI)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_29() {
- if (jj_scan_token(FUNCTION_LOCAL_NAME)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_169() {
- if (jj_scan_token(MINUS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_168()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_28() {
- if (jj_scan_token(FUNCTION_ID)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_27() {
- if (jj_scan_token(FUNCTION_COUNT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_152() {
- if (jj_scan_token(AXIS_DESCENDANT_OR_SELF)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_26() {
- if (jj_scan_token(FUNCTION_POSITION)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_25() {
- if (jj_scan_token(FUNCTION_LAST)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_151() {
- if (jj_scan_token(AXIS_PRECEDING_SIBLING)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_24() {
- if (jj_scan_token(PI)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_150() {
- if (jj_scan_token(AXIS_FOLLOWING_SIBLING)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_23() {
- if (jj_scan_token(COMMENT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_149() {
- if (jj_scan_token(AXIS_ANCESTOR_OR_SELF)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_163() {
- if (jj_scan_token(PLUS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_162()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_22() {
- if (jj_scan_token(TEXT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_148() {
- if (jj_scan_token(AXIS_DESCENDANT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_21() {
- if (jj_scan_token(NODE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_147() {
- if (jj_scan_token(AXIS_FOLLOWING)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_20() {
- if (jj_3R_98()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_146() {
- if (jj_scan_token(AXIS_PRECEDING)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_145() {
- if (jj_scan_token(AXIS_NAMESPACE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_162() {
- if (jj_3R_168()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_169()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3R_144() {
- if (jj_scan_token(AXIS_ATTRIBUTE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_143() {
- if (jj_scan_token(AXIS_ANCESTOR)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_142() {
- if (jj_scan_token(AXIS_PARENT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_15() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_20()) {
- jj_scanpos = xsp;
- if (jj_3R_21()) {
- jj_scanpos = xsp;
- if (jj_3R_22()) {
- jj_scanpos = xsp;
- if (jj_3R_23()) {
- jj_scanpos = xsp;
- if (jj_3R_24()) {
- jj_scanpos = xsp;
- if (jj_3R_25()) {
- jj_scanpos = xsp;
- if (jj_3R_26()) {
- jj_scanpos = xsp;
- if (jj_3R_27()) {
- jj_scanpos = xsp;
- if (jj_3R_28()) {
- jj_scanpos = xsp;
- if (jj_3R_29()) {
- jj_scanpos = xsp;
- if (jj_3R_30()) {
- jj_scanpos = xsp;
- if (jj_3R_31()) {
- jj_scanpos = xsp;
- if (jj_3R_32()) {
- jj_scanpos = xsp;
- if (jj_3R_33()) {
- jj_scanpos = xsp;
- if (jj_3R_34()) {
- jj_scanpos = xsp;
- if (jj_3R_35()) {
- jj_scanpos = xsp;
- if (jj_3R_36()) {
- jj_scanpos = xsp;
- if (jj_3R_37()) {
- jj_scanpos = xsp;
- if (jj_3R_38()) {
- jj_scanpos = xsp;
- if (jj_3R_39()) {
- jj_scanpos = xsp;
- if (jj_3R_40()) {
- jj_scanpos = xsp;
- if (jj_3R_41()) {
- jj_scanpos = xsp;
- if (jj_3R_42()) {
- jj_scanpos = xsp;
- if (jj_3R_43()) {
- jj_scanpos = xsp;
- if (jj_3R_44()) {
- jj_scanpos = xsp;
- if (jj_3R_45()) {
- jj_scanpos = xsp;
- if (jj_3R_46()) {
- jj_scanpos = xsp;
- if (jj_3R_47()) {
- jj_scanpos = xsp;
- if (jj_3R_48()) {
- jj_scanpos = xsp;
- if (jj_3R_49()) {
- jj_scanpos = xsp;
- if (jj_3R_50()) {
- jj_scanpos = xsp;
- if (jj_3R_51()) {
- jj_scanpos = xsp;
- if (jj_3R_52()) {
- jj_scanpos = xsp;
- if (jj_3R_53()) {
- jj_scanpos = xsp;
- if (jj_3R_54()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_141() {
- if (jj_scan_token(AXIS_CHILD)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_140() {
- if (jj_scan_token(AXIS_SELF)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_129() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_140()) {
- jj_scanpos = xsp;
- if (jj_3R_141()) {
- jj_scanpos = xsp;
- if (jj_3R_142()) {
- jj_scanpos = xsp;
- if (jj_3R_143()) {
- jj_scanpos = xsp;
- if (jj_3R_144()) {
- jj_scanpos = xsp;
- if (jj_3R_145()) {
- jj_scanpos = xsp;
- if (jj_3R_146()) {
- jj_scanpos = xsp;
- if (jj_3R_147()) {
- jj_scanpos = xsp;
- if (jj_3R_148()) {
- jj_scanpos = xsp;
- if (jj_3R_149()) {
- jj_scanpos = xsp;
- if (jj_3R_150()) {
- jj_scanpos = xsp;
- if (jj_3R_151()) {
- jj_scanpos = xsp;
- if (jj_3R_152()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_159() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_164()) {
- jj_scanpos = xsp;
- if (jj_3R_165()) {
- jj_scanpos = xsp;
- if (jj_3R_166()) {
- jj_scanpos = xsp;
- if (jj_3R_167()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_158() {
- if (jj_3R_162()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_163()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3R_122() {
- if (jj_3R_130()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_121() {
- if (jj_3R_129()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_167() {
- if (jj_scan_token(GTE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_158()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_112() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_121()) {
- jj_scanpos = xsp;
- if (jj_3R_122()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_166() {
- if (jj_scan_token(LTE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_158()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_165() {
- if (jj_scan_token(GT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_158()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_157() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_160()) {
- jj_scanpos = xsp;
- if (jj_3R_161()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_164() {
- if (jj_scan_token(LT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_158()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_156() {
- if (jj_3R_158()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_159()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3R_161() {
- if (jj_scan_token(NEQ)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_156()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_160() {
- if (jj_scan_token(EQ)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_156()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_102() {
- if (jj_3R_116()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3_4() {
- if (jj_scan_token(PI)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3_3() {
- if (jj_3R_17()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(80)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(81)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_101() {
- if (jj_scan_token(83)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_100() {
- if (jj_scan_token(82)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_115() {
- if (jj_3R_123()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_134() {
- if (jj_3R_156()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_157()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3R_114() {
- if (jj_scan_token(PI)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(80)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(Literal)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(81)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_113() {
- if (jj_3R_17()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(80)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(81)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_99() {
- if (jj_3R_112()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_113()) {
- jj_scanpos = xsp;
- if (jj_3R_114()) {
- jj_scanpos = xsp;
- if (jj_3R_115()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_135() {
- if (jj_scan_token(AND)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_134()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_57() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_99()) {
- jj_scanpos = xsp;
- if (jj_3R_100()) {
- jj_scanpos = xsp;
- if (jj_3R_101()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_102()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3R_125() {
- if (jj_3R_134()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_135()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3R_193() {
- if (jj_3R_16()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_56() {
- if (jj_scan_token(SLASHSLASH)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_55() {
- if (jj_scan_token(SLASH)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_126() {
- if (jj_scan_token(OR)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_125()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_16() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_55()) {
- jj_scanpos = xsp;
- if (jj_3R_56()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_57()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_190() {
- if (jj_3R_16()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_118() {
- if (jj_3R_125()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_126()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3R_188() {
- if (jj_3R_57()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_190()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3_2() {
- if (jj_3R_16()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_185() {
- if (jj_3R_16()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_192() {
- if (jj_scan_token(SLASH)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_191() {
- if (jj_3R_16()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_193()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3R_184() {
- if (jj_3R_116()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_189() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_191()) {
- jj_scanpos = xsp;
- if (jj_3R_192()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_182() {
- if (jj_3R_19()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_184()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_185()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3_6() {
- if (jj_3R_19()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_187() {
- if (jj_3R_189()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_186() {
- if (jj_3R_188()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_183() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_186()) {
- jj_scanpos = xsp;
- if (jj_3R_187()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_181() {
- if (jj_3R_183()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_180() {
- if (jj_3R_182()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_178() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_180()) {
- jj_scanpos = xsp;
- if (jj_3R_181()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_179() {
- if (jj_scan_token(UNION)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_178()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_177() {
- if (jj_3R_178()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_179()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3R_136() {
- if (jj_3R_104()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_137() {
- if (jj_scan_token(87)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_136()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_127() {
- if (jj_3R_136()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_137()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
- final private boolean jj_3R_119() {
- if (jj_scan_token(80)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_127()) jj_scanpos = xsp;
- else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(81)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_61() {
- if (jj_scan_token(PI)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_60() {
- if (jj_scan_token(COMMENT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_59() {
- if (jj_scan_token(NODE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_58() {
- if (jj_scan_token(TEXT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3_1() {
- if (jj_3R_15()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(79)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_17() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_58()) {
- jj_scanpos = xsp;
- if (jj_3R_59()) {
- jj_scanpos = xsp;
- if (jj_3R_60()) {
- jj_scanpos = xsp;
- if (jj_3R_61()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_155() {
- if (jj_3R_15()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_139() {
- if (jj_3R_98()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_138() {
- if (jj_3R_15()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(79)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_15()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_154() {
- if (jj_scan_token(88)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_132() {
- if (jj_3R_15()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_105() {
- if (jj_3R_18()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_119()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_124() {
- if (jj_scan_token(79)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_15()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_133() {
- if (jj_scan_token(79)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_154()) {
- jj_scanpos = xsp;
- if (jj_3R_155()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_128() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_138()) {
- jj_scanpos = xsp;
- if (jj_3R_139()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_131() {
- if (jj_scan_token(88)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_123() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_131()) {
- jj_scanpos = xsp;
- if (jj_3R_132()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- xsp = jj_scanpos;
- if (jj_3R_133()) jj_scanpos = xsp;
- else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_106() {
- if (jj_3R_120()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_119()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_117() {
- if (jj_3R_15()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_124()) jj_scanpos = xsp;
- else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3_5() {
- if (jj_3R_18()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(80)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_103() {
- if (jj_scan_token(VARIABLE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_117()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_91() {
- if (jj_scan_token(FUNCTION_FORMAT_NUMBER)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_90() {
- if (jj_scan_token(FUNCTION_KEY)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_89() {
- if (jj_scan_token(FUNCTION_ROUND)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_88() {
- if (jj_scan_token(FUNCTION_CEILING)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_97() {
- if (jj_3R_106()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_87() {
- if (jj_scan_token(FUNCTION_FLOOR)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_96() {
- if (jj_3R_105()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_86() {
- if (jj_scan_token(FUNCTION_SUM)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_95() {
- if (jj_scan_token(Number)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_85() {
- if (jj_scan_token(FUNCTION_NUMBER)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_94() {
- if (jj_scan_token(Literal)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_84() {
- if (jj_scan_token(FUNCTION_LANG)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_93() {
- if (jj_scan_token(80)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_104()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(81)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_83() {
- if (jj_scan_token(FUNCTION_NULL)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_92() {
- if (jj_3R_103()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_82() {
- if (jj_scan_token(FUNCTION_FALSE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_81() {
- if (jj_scan_token(FUNCTION_TRUE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_120() {
- if (jj_3R_128()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_80() {
- if (jj_scan_token(FUNCTION_NOT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_79() {
- if (jj_scan_token(FUNCTION_BOOLEAN)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_78() {
- if (jj_scan_token(FUNCTION_TRANSLATE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_77() {
- if (jj_scan_token(FUNCTION_NORMALIZE_SPACE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_19() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_92()) {
- jj_scanpos = xsp;
- if (jj_3R_93()) {
- jj_scanpos = xsp;
- if (jj_3R_94()) {
- jj_scanpos = xsp;
- if (jj_3R_95()) {
- jj_scanpos = xsp;
- if (jj_3R_96()) {
- jj_scanpos = xsp;
- if (jj_3R_97()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_76() {
- if (jj_scan_token(FUNCTION_STRING_LENGTH)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_75() {
- if (jj_scan_token(FUNCTION_SUBSTRING)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_74() {
- if (jj_scan_token(FUNCTION_SUBSTRING_AFTER)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_73() {
- if (jj_scan_token(FUNCTION_SUBSTRING_BEFORE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_72() {
- if (jj_scan_token(FUNCTION_CONTAINS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_71() {
- if (jj_scan_token(FUNCTION_STARTS_WITH)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_70() {
- if (jj_scan_token(FUNCTION_CONCAT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_69() {
- if (jj_scan_token(FUNCTION_STRING)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_68() {
- if (jj_scan_token(FUNCTION_NAME)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_67() {
- if (jj_scan_token(FUNCTION_NAMESPACE_URI)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_66() {
- if (jj_scan_token(FUNCTION_LOCAL_NAME)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- public XPathParserTokenManager token_source;
- SimpleCharStream jj_input_stream;
- public Token token, jj_nt;
- private Token jj_scanpos, jj_lastpos;
- private int jj_la;
- public boolean lookingAhead = false;
- private boolean jj_semLA;
- private int jj_gen;
- final private int[] jj_la1 = new int[39];
- static private int[] jj_la1_0;
- static private int[] jj_la1_1;
- static private int[] jj_la1_2;
- static {
- jj_la1_0();
- jj_la1_1();
- jj_la1_2();
- }
- private static void jj_la1_0() {
- jj_la1_0 = new int[] {0xf8000000,0x78000000,0x0,0x0,0x78000000,0xf80000c0,0xc0,0x40,0xc0,0xc0,0xf8000000,0xf8000000,0x0,0x0,0x0,0x0,0x160000,0xf8000000,0x0,0xf81604c0,0x100,0xf80000c0,0x0,0xc0,0x8000000,0x10000000,0x1800,0x1800,0x1e000,0x1e000,0x200,0x400,0x60000000,0x60000000,0xf81604c0,0xf8000000,0xf8000000,0x0,0x80000000,};
- }
- private static void jj_la1_1() {
- jj_la1_1 = new int[] {0xffff0007,0x0,0xffff0000,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0xffff0007,0xffffffff,0x0,0xfff8,0xfff8,0x0,0x0,0xffff0007,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffff0007,0xffff0007,0x0,0x7,};
- }
- private static void jj_la1_2() {
- jj_la1_2 = new int[] {0x7fff,0x4000,0x3fff,0x8000,0x4000,0x14c7fff,0x0,0x0,0x0,0x0,0x1007fff,0x14c7fff,0x100000,0x0,0x0,0x400000,0x10000,0x7fff,0x800000,0x14d7fff,0x0,0x14c7fff,0x100000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000000,0x1000000,0x14d7fff,0x1007fff,0x1007fff,0x8000,0x0,};
- }
- final private JJCalls[] jj_2_rtns = new JJCalls[6];
- private boolean jj_rescan = false;
- private int jj_gc = 0;
-
- public XPathParser(java.io.InputStream stream) {
- jj_input_stream = new SimpleCharStream(stream, 1, 1);
- token_source = new XPathParserTokenManager(jj_input_stream);
- token = new Token();
- token.next = jj_nt = token_source.getNextToken();
- jj_gen = 0;
- for (int i = 0; i < 39; i++) jj_la1[i] = -1;
- for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
- }
-
- public void ReInit(java.io.InputStream stream) {
- jj_input_stream.ReInit(stream, 1, 1);
- token_source.ReInit(jj_input_stream);
- token = new Token();
- token.next = jj_nt = token_source.getNextToken();
- jj_gen = 0;
- for (int i = 0; i < 39; i++) jj_la1[i] = -1;
- for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
- }
-
- public XPathParser(java.io.Reader stream) {
- jj_input_stream = new SimpleCharStream(stream, 1, 1);
- token_source = new XPathParserTokenManager(jj_input_stream);
- token = new Token();
- token.next = jj_nt = token_source.getNextToken();
- jj_gen = 0;
- for (int i = 0; i < 39; i++) jj_la1[i] = -1;
- for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
- }
-
- public void ReInit(java.io.Reader stream) {
- jj_input_stream.ReInit(stream, 1, 1);
- token_source.ReInit(jj_input_stream);
- token = new Token();
- token.next = jj_nt = token_source.getNextToken();
- jj_gen = 0;
- for (int i = 0; i < 39; i++) jj_la1[i] = -1;
- for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
- }
-
- public XPathParser(XPathParserTokenManager tm) {
- token_source = tm;
- token = new Token();
- token.next = jj_nt = token_source.getNextToken();
- jj_gen = 0;
- for (int i = 0; i < 39; i++) jj_la1[i] = -1;
- for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
- }
-
- public void ReInit(XPathParserTokenManager tm) {
- token_source = tm;
- token = new Token();
- token.next = jj_nt = token_source.getNextToken();
- jj_gen = 0;
- for (int i = 0; i < 39; i++) jj_la1[i] = -1;
- for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
- }
-
- final private Token jj_consume_token(int kind) throws ParseException {
- Token oldToken = token;
- if ((token = jj_nt).next != null) jj_nt = jj_nt.next;
- else jj_nt = jj_nt.next = token_source.getNextToken();
- if (token.kind == kind) {
- jj_gen++;
- if (++jj_gc > 100) {
- jj_gc = 0;
- for (int i = 0; i < jj_2_rtns.length; i++) {
- JJCalls c = jj_2_rtns[i];
- while (c != null) {
- if (c.gen < jj_gen) c.first = null;
- c = c.next;
- }
- }
- }
- return token;
- }
- jj_nt = token;
- token = oldToken;
- jj_kind = kind;
- throw generateParseException();
- }
-
- final private boolean jj_scan_token(int kind) {
- if (jj_scanpos == jj_lastpos) {
- jj_la--;
- if (jj_scanpos.next == null) {
- jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken();
- } else {
- jj_lastpos = jj_scanpos = jj_scanpos.next;
- }
- } else {
- jj_scanpos = jj_scanpos.next;
- }
- if (jj_rescan) {
- int i = 0; Token tok = token;
- while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; }
- if (tok != null) jj_add_error_token(kind, i);
- }
- return (jj_scanpos.kind != kind);
- }
-
- final public Token getNextToken() {
- if ((token = jj_nt).next != null) jj_nt = jj_nt.next;
- else jj_nt = jj_nt.next = token_source.getNextToken();
- jj_gen++;
- return token;
- }
-
- final public Token getToken(int index) {
- Token t = lookingAhead ? jj_scanpos : token;
- for (int i = 0; i < index; i++) {
- if (t.next != null) t = t.next;
- else t = t.next = token_source.getNextToken();
- }
- return t;
- }
-
- private java.util.Vector jj_expentries = new java.util.Vector();
- private int[] jj_expentry;
- private int jj_kind = -1;
- private int[] jj_lasttokens = new int[100];
- private int jj_endpos;
-
- private void jj_add_error_token(int kind, int pos) {
- if (pos >= 100) return;
- if (pos == jj_endpos + 1) {
- jj_lasttokens[jj_endpos++] = kind;
- } else if (jj_endpos != 0) {
- jj_expentry = new int[jj_endpos];
- for (int i = 0; i < jj_endpos; i++) {
- jj_expentry[i] = jj_lasttokens[i];
- }
- boolean exists = false;
- for (java.util.Enumeration enum = jj_expentries.elements(); enum.hasMoreElements();) {
- int[] oldentry = (int[])(enum.nextElement());
- if (oldentry.length == jj_expentry.length) {
- exists = true;
- for (int i = 0; i < jj_expentry.length; i++) {
- if (oldentry[i] != jj_expentry[i]) {
- exists = false;
- break;
- }
- }
- if (exists) break;
- }
- }
- if (!exists) jj_expentries.addElement(jj_expentry);
- if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind;
- }
- }
-
- public ParseException generateParseException() {
- jj_expentries.removeAllElements();
- boolean[] la1tokens = new boolean[89];
- for (int i = 0; i < 89; i++) {
- la1tokens[i] = false;
- }
- if (jj_kind >= 0) {
- la1tokens[jj_kind] = true;
- jj_kind = -1;
- }
- for (int i = 0; i < 39; i++) {
- if (jj_la1[i] == jj_gen) {
- for (int j = 0; j < 32; j++) {
- if ((jj_la1_0[i] & (1<<j)) != 0) {
- la1tokens[j] = true;
- }
- if ((jj_la1_1[i] & (1<<j)) != 0) {
- la1tokens[32+j] = true;
- }
- if ((jj_la1_2[i] & (1<<j)) != 0) {
- la1tokens[64+j] = true;
- }
- }
- }
- }
- for (int i = 0; i < 89; i++) {
- if (la1tokens[i]) {
- jj_expentry = new int[1];
- jj_expentry[0] = i;
- jj_expentries.addElement(jj_expentry);
- }
- }
- jj_endpos = 0;
- jj_rescan_token();
- jj_add_error_token(0, 0);
- int[][] exptokseq = new int[jj_expentries.size()][];
- for (int i = 0; i < jj_expentries.size(); i++) {
- exptokseq[i] = (int[])jj_expentries.elementAt(i);
- }
- return new ParseException(token, exptokseq, tokenImage);
- }
-
- final public void enable_tracing() {
- }
-
- final public void disable_tracing() {
- }
-
- final private void jj_rescan_token() {
- jj_rescan = true;
- for (int i = 0; i < 6; i++) {
- JJCalls p = jj_2_rtns[i];
- do {
- if (p.gen > jj_gen) {
- jj_la = p.arg; jj_lastpos = jj_scanpos = p.first;
- switch (i) {
- case 0: jj_3_1(); break;
- case 1: jj_3_2(); break;
- case 2: jj_3_3(); break;
- case 3: jj_3_4(); break;
- case 4: jj_3_5(); break;
- case 5: jj_3_6(); break;
- }
- }
- p = p.next;
- } while (p != null);
- }
- jj_rescan = false;
- }
-
- final private void jj_save(int index, int xla) {
- JJCalls p = jj_2_rtns[index];
- while (p.gen > jj_gen) {
- if (p.next == null) { p = p.next = new JJCalls(); break; }
- p = p.next;
- }
- p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla;
- }
-
- static final class JJCalls {
- int gen;
- Token first;
- int arg;
- JJCalls next;
- }
-
- }