private int Comparator() throws XPathException { switch ((nextTokenIndex == -1) ? nextToken() : nextTokenIndex) { case SYMBOL_EQ: consumeToken(SYMBOL_EQ); return CompNode.EQ; consumeToken(SYMBOL_NE); return CompNode.NE; consumeToken(SYMBOL_GT); return CompNode.GT; consumeToken(SYMBOL_LT); return CompNode.LT; consumeToken(SYMBOL_GE); return CompNode.GE; consumeToken(SYMBOL_LE); return CompNode.LE; consumeToken(-1); throw new XPathException("c-general-xpath");
private XPathSyntaxTreeNode Test() throws XPathException { XPathSyntaxTreeNode n; n = OrExpr(); consumeToken(25); return n; }
private XPathSyntaxTreeNode Literal() throws XPathException { Token t; switch ((nextTokenIndex == -1) ? nextToken() : nextTokenIndex) { case NUMERIC_LITERAL: t = consumeToken(NUMERIC_LITERAL); return new LiteralNode(t.image, true); case STRING_LITERAL: t = consumeToken(STRING_LITERAL); return new LiteralNode(t.image.substring(1, t.image .length() - 1), false); default: array1[9] = gen; consumeToken(-1); throw new XPathException("c-general-xpath"); } }
private QName QName() throws XPathException { Token t1, t2; QName name; t1 = consumeToken(NCNAME); switch ((nextTokenIndex == -1) ? nextToken() : nextTokenIndex) { case SYMBOL_COLON: consumeToken(SYMBOL_COLON); t2 = consumeToken(NCNAME); // TODO: better way to intern the strings String prefix = t1.image.intern(); String local = t2.image.intern(); name = new QName(prefix, local, prefix + ':' + local, fNsContext.getURI(prefix)); break; default: // TODO: better way to intern the strings local = t1.image.intern(); name = new QName(null, local, local, null); array1[4] = gen; } return name; }
private XPathSyntaxTreeNode AttrName() throws XPathException { consumeToken(SYMBOL_AT); return new AttrNode(NameTest()); }
private XPathSyntaxTreeNode CastExpr() throws XPathException { XPathSyntaxTreeNode n; QName name; n = SimpleValue(); switch ((nextTokenIndex == -1) ? nextToken() : nextTokenIndex) { case KEYWORD_CAST: consumeToken(KEYWORD_CAST); consumeToken(KEYWORD_AS); name = QName(); switch ((nextTokenIndex == -1) ? nextToken() : nextTokenIndex) { case SYMBOL_QUESTION: consumeToken(SYMBOL_QUESTION); break; default: array1[6] = gen; } return new CastNode(n, name); default: array1[7] = gen; } return n; }
private XPathSyntaxTreeNode ValueExpr() throws XPathException { switch ((nextTokenIndex == -1) ? nextToken() : nextTokenIndex) { case NCNAME: QName name = QName(); consumeToken(OPEN_PARAN); XPathSyntaxTreeNode n1 = SimpleValue(); consumeToken(CLOSE_PARAN); return new CastNode(n1, name); case SYMBOL_AT: case NUMERIC_LITERAL: case STRING_LITERAL: return CastExpr(); default: array1[3] = gen; consumeToken(-1); throw new XPathException("c-general-xpath"); } }
private XPathSyntaxTreeNode SimpleValue() throws XPathException { XPathSyntaxTreeNode n; switch ((nextTokenIndex == -1) ? nextToken() : nextTokenIndex) { case SYMBOL_AT: n = AttrName(); return n; case NUMERIC_LITERAL: case STRING_LITERAL: n = Literal(); return n; default: array1[8] = gen; consumeToken(-1); throw new XPathException("c-general-xpath"); } }
private XPathSyntaxTreeNode AndExpr() throws XPathException { XPathSyntaxTreeNode n1, n2; n1 = BooleanExpr(); label_2: while (true) { switch ((nextTokenIndex == -1) ? nextToken() : nextTokenIndex) { case KEYWORD_AND: break; default: array1[1] = gen; break label_2; } consumeToken(KEYWORD_AND); n2 = BooleanExpr(); return new ConjunctionNode(ConjunctionNode.AND, n1, n2); } return n1; }
private XPathSyntaxTreeNode OrExpr() throws XPathException { XPathSyntaxTreeNode n1, n2; n1 = AndExpr(); label_1: while (true) { switch ((nextTokenIndex == -1) ? nextToken() : nextTokenIndex) { case KEYWORD_OR: break; default: array1[0] = gen; break label_1; } consumeToken(KEYWORD_OR); n2 = AndExpr(); return new ConjunctionNode(ConjunctionNode.OR, n1, n2); } return n1; }
switch ((nextTokenIndex == -1) ? nextToken() : nextTokenIndex) { case OPEN_PARAN: consumeToken(OPEN_PARAN); n1 = OrExpr(); consumeToken(CLOSE_PARAN); return n1; consumeToken(OPEN_PARAN); if ("not".equals(name.localpart) && "http://www.w3.org/2005/xpath-functions".equals(name.uri)) { n1 = OrExpr(); consumeToken(CLOSE_PARAN); return new FunctionNode(name, n1); consumeToken(CLOSE_PARAN); n1 = new CastNode(n1, name); switch ((nextTokenIndex == -1) ? nextToken() : nextTokenIndex) { consumeToken(-1); throw new XPathException("c-general-xpath");