final public Expression equalityExpression()

in qpid-jms-client/src/main/java/org/apache/qpid/jms/selector/parser/SelectorParserImpl.java [110:160]


    final public Expression equalityExpression() throws ParseException {
        Expression left;
        Expression right;
        left = comparisonExpression();
        label_3: while (true) {
            switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) {
                case IS:
                case 27:
                case 28:
                    ;
                    break;
                default:
                    break label_3;
            }
            switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) {
                case 27:
                    jj_consume_token(27);
                    right = comparisonExpression();
                    left = ComparisonExpression.createEqual(left, right);
                    break;
                case 28:
                    jj_consume_token(28);
                    right = comparisonExpression();
                    left = ComparisonExpression.createNotEqual(left, right);
                    break;
                default:
                    if (jj_2_1(2)) {
                        jj_consume_token(IS);
                        jj_consume_token(NULL);
                        left = ComparisonExpression.createIsNull(left);
                    } else {
                        switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) {
                            case IS:
                                jj_consume_token(IS);
                                jj_consume_token(NOT);
                                jj_consume_token(NULL);
                                left = ComparisonExpression.createIsNotNull(left);
                                break;
                            default:
                                jj_consume_token(-1);
                                throw new ParseException();
                        }
                    }
            }
        }
        {
            if (true)
                return left;
        }
        throw new Error("Missing return statement in function");
    }