final public Object FilterExpr()

in src/main/java/org/apache/commons/jxpath/ri/parser/XPathParser.java [810:856]


    final public Object FilterExpr() throws ParseException {
        Object ex, p;
        final ArrayList ps = new ArrayList();
        boolean path = false;
        final ArrayList steps = new ArrayList();
        ex = PrimaryExpr();
        label_6: while (true) {
            switch (jj_nt.kind) {
            case 85:
                ;
                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");
    }