final public Expression unaryExpr()

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


    final public Expression unaryExpr() throws ParseException {
        String s = null;
        Expression left = null;
        if (jj_2_6(2147483647)) {
            jj_consume_token(36);
            left = unaryExpr();
        } else {
            switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) {
                case 37:
                    jj_consume_token(37);
                    left = unaryExpr();
                    left = UnaryExpression.createNegate(left);
                    break;
                case NOT:
                    jj_consume_token(NOT);
                    left = unaryExpr();
                    left = UnaryExpression.createNOT(asBooleanExpression(left));
                    break;
                case TRUE:
                case FALSE:
                case NULL:
                case DECIMAL_LITERAL:
                case HEX_LITERAL:
                case OCTAL_LITERAL:
                case FLOATING_POINT_LITERAL:
                case STRING_LITERAL:
                case ID:
                case QUOTED_ID:
                case 33:
                    left = primaryExpr();
                    break;
                default:
                    jj_consume_token(-1);
                    throw new ParseException();
            }
        }
        {
            if (true)
                return left;
        }
        throw new Error("Missing return statement in function");
    }