📄 xpathparser.java
字号:
yyVal = lookupFunction((String) yyVals[-3+yyTop], (List) yyVals[-1+yyTop]); } break;case 41: // line 519 "XPathParser.y" { List list = new ArrayList(); list.add(yyVals[0+yyTop]); yyVal = list; } break;case 42: // line 525 "XPathParser.y" { List list = (List) yyVals[0+yyTop]; list.add(0, yyVals[-2+yyTop]); yyVal = list; } break;case 44: // line 535 "XPathParser.y" { yyVal = new UnionExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop]); } break;case 47: // line 544 "XPathParser.y" { Steps steps; if (yyVals[0+yyTop] instanceof Steps) { steps = (Steps) yyVals[0+yyTop]; } else { steps = new Steps(); steps.path.addFirst(yyVals[0+yyTop]); } steps.path.addFirst(yyVals[-2+yyTop]); yyVal = steps; /*$$ = new Step ((Expr) $1, (Path) $3);*/ } break;case 48: // line 560 "XPathParser.y" { Test nt = new NodeTypeTest((short) 0); Selector s = new Selector(Selector.DESCENDANT_OR_SELF, Collections.singletonList(nt)); Steps steps; if (yyVals[0+yyTop] instanceof Steps) { steps = (Steps) yyVals[0+yyTop]; } else { steps = new Steps(); steps.path.addFirst(yyVals[0+yyTop]); } steps.path.addFirst(s); steps.path.addFirst(yyVals[-2+yyTop]); yyVal = steps; /*Step step = new Step (s, (Path) $3);*/ /*$$ = new Step ((Expr) $1, step);*/ } break;case 50: // line 585 "XPathParser.y" { Predicate filter = (Predicate) yyVals[0+yyTop]; Selector s = new Selector(Selector.SELF, Collections.singletonList(filter)); Steps steps; if (yyVals[-1+yyTop] instanceof Steps) { steps = (Steps) yyVals[-1+yyTop]; } else { steps = new Steps(); steps.path.addFirst(yyVals[-1+yyTop]); } steps.path.addLast(s); yyVal = steps; /*$$ = new Step ((Expr) $1, s);*/ } break;case 52: // line 608 "XPathParser.y" { yyVal = new OrExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop]); } break;case 54: // line 616 "XPathParser.y" { yyVal = new AndExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop]); } break;case 56: // line 624 "XPathParser.y" { yyVal = new EqualityExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop], false); } break;case 57: // line 628 "XPathParser.y" { yyVal = new EqualityExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop], true); } break;case 59: // line 636 "XPathParser.y" { yyVal = new RelationalExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop], true, false); } break;case 60: // line 640 "XPathParser.y" { yyVal = new RelationalExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop], false, false); } break;case 61: // line 644 "XPathParser.y" { yyVal = new RelationalExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop], true, true); } break;case 62: // line 648 "XPathParser.y" { yyVal = new RelationalExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop], false, true); } break;case 64: // line 656 "XPathParser.y" { yyVal = new ArithmeticExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop], ArithmeticExpr.ADD); } break;case 65: // line 660 "XPathParser.y" { yyVal = new ArithmeticExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop], ArithmeticExpr.SUBTRACT); } break;case 67: // line 668 "XPathParser.y" { yyVal = new ArithmeticExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop], ArithmeticExpr.MULTIPLY); } break;case 68: // line 672 "XPathParser.y" { yyVal = new ArithmeticExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop], ArithmeticExpr.DIVIDE); } break;case 69: // line 676 "XPathParser.y" { yyVal = new ArithmeticExpr((Expr) yyVals[-2+yyTop], (Expr) yyVals[0+yyTop], ArithmeticExpr.MODULO); } break;case 71: // line 684 "XPathParser.y" { yyVal = new NegativeExpr((Expr) yyVals[0+yyTop]); } break;case 72: // line 691 "XPathParser.y" { yyVal = new Double((String) yyVals[0+yyTop] + ".0"); } break;case 73: // line 695 "XPathParser.y" { yyVal = new Double((String) yyVals[-1+yyTop] + ".0"); } break;case 74: // line 699 "XPathParser.y" { yyVal = new Double((String) yyVals[-2+yyTop] + "." + (String) yyVals[0+yyTop]); } break;case 75: // line 703 "XPathParser.y" { yyVal = new Double("0." + (String) yyVals[0+yyTop]); } break;case 77: // line 732 "XPathParser.y" { String name = (String) yyVals[0+yyTop]; yyVal = new VariableReference(variableResolver, getQName(name)); } break;case 78: // line 740 "XPathParser.y" { yyVal = new NameTest(null, true, true); } break;case 79: // line 744 "XPathParser.y" { QName qName = getQName((String) yyVals[-2+yyTop]); yyVal = new NameTest(qName, true, false); } break;case 80: // line 749 "XPathParser.y" { QName qName = getQName((String) yyVals[0+yyTop]); yyVal = new NameTest(qName, false, false); } break;case 82: // line 758 "XPathParser.y" { yyVal = (String) yyVals[-2+yyTop] + ':' + (String) yyVals[0+yyTop]; } break;case 83: // line 765 "XPathParser.y" { yyVal = new Short(Node.COMMENT_NODE); } break;case 84: // line 769 "XPathParser.y" { yyVal = new Short(Node.TEXT_NODE); } break;case 85: // line 773 "XPathParser.y" { yyVal = new Short(Node.PROCESSING_INSTRUCTION_NODE); } break;case 86: // line 777 "XPathParser.y" { yyVal = new Short((short) 0); } break; // line 988 "-" } yyTop -= YyLenClass.yyLen[yyN]; yyState = yyStates[yyTop]; int yyM = YyLhsClass.yyLhs[yyN]; if (yyState == 0 && yyM == 0) {//t if (yydebug != null) yydebug.shift(0, yyFinal); yyState = yyFinal; if (yyToken < 0) { yyToken = yyLex.advance() ? yyLex.token() : 0;//t if (yydebug != null)//t yydebug.lex(yyState, yyToken,yyname(yyToken), yyLex.value()); } if (yyToken == 0) {//t if (yydebug != null) yydebug.accept(yyVal); return yyVal; } continue yyLoop; } if ((yyN = YyGindexClass.yyGindex[yyM]) != 0 && (yyN += yyState) >= 0 && yyN < YyTableClass.yyTable.length && YyCheckClass.yyCheck[yyN] == yyState) yyState = YyTableClass.yyTable[yyN]; else yyState = YyDgotoClass.yyDgoto[yyM];//t if (yydebug != null) yydebug.shift(yyStates[yyTop], yyState); continue yyLoop; } } } protected static final class YyLhsClass { public static final short yyLhs [] = { -1, 0, 2, 2, 4, 4, 4, 3, 3, 3, 5, 5, 5, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 9, 12, 12, 12, 12, 12, 15, 15, 17, 17, 18, 18, 19, 19, 19, 19, 20, 20, 1, 1, 21, 21, 22, 22, 22, 23, 23, 23, 23, 23, 24, 24, 24, 25, 25, 25, 25, 26, 26, 14, 14, 14, 14, 16, 13, 10, 10, 10, 27, 27, 11, 11, 11, 11, }; } /* End of class YyLhsClass */ protected static final class YyLenClass { public static final short yyLen [] = { 2, 1, 1, 1, 1, 2, 2, 1, 3, 3, 1, 2, 3, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, 3, 1, 3, 1, 1, 1, 3, 4, 1, 3, 1, 3, 1, 1, 3, 3, 1, 2, 1, 3, 1, 3, 1, 3, 3, 1, 3, 3, 3, 3, 1, 3, 3, 1, 3, 3, 3, 1, 2, 1, 2, 3, 2, 1, 2, 1, 3, 1, 1, 3, 1, 1, 1, 1, }; } /* End class YyLenClass */ protected static final class YyDefRedClass { public static final short yyDefRed [] = { 0, 36, 0, 0, 0, 0, 0, 0, 0, 78, 0, 0, 14, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 83, 0, 84, 86, 0, 0, 45, 0, 3, 7, 0, 0, 15, 30, 0, 49, 34, 37, 38, 0, 0, 43, 0, 0, 0, 0, 0, 0, 66, 0, 0, 0, 0, 13, 0, 80, 0, 71, 0, 0, 77, 75, 0, 0, 0, 0, 0, 16, 0, 32, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74, 82, 79, 35, 0, 31, 0, 8, 9, 0, 0, 39, 0, 0, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 68, 69, 33, 0, 40, 42, }; } /* End of class YyDefRedClass */ protected static final class YyDgotoClass { public static final short yyDgoto [] = { 105, 31, 32, 33, 34, 35, 36, 37, 38, 73, 39, 40, 41, 42, 43, 44, 45, 106, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, }; } /* End of class YyDgotoClass */ protected static final class YySindexClass { public static final short yySindex [] = { -97, 0, -271, -267, -97, -239, -239, -97, -199, 0, -236, -222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -218, 0, 0, 0, -257, 0, -241, 0, 0, -205, -221, 0, 0, -194, 0, 0, 0, 0, -190, -185, 0, -238, -211, -234, -255, -209, -275, 0, 0, -169, -250, -168, 0, -241, 0, -241, 0, -205, -187, 0, 0, -167, -97, -239, -239, -97, 0, -199, 0, -151, -43, -239, -239, 0, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, -97, 0, 0, 0, 0, -164, 0, -211, 0, 0, -166, -205, 0, -165, -163, 0, -241, -241, -234, -255, -255, -209, -209, -209, -209, -275, -275, 0, 0, 0, 0, -97, 0, 0, }; } /* End of class YySindexClass */ protected static final class YyRindexClass { public static final short yyRindex [] = { 0, 0, 58, 1, 0, 420, 0, 0, 0, 0, 0, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -161, 0, 0, 0, 40, 0, 237, 0, 0, 168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 459, 0, 277, 557, 544,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -