@Override
    public Expression visitGreaterthan_lessthan_math_operation(
            @NotNull SiddhiQLParser.Greaterthan_lessthan_math_operationContext ctx) {

        Expression expression;
        if (ctx.gt != null) {
            expression = Expression.compare((Expression) visit(ctx.math_operation(0)), Compare.Operator.GREATER_THAN,
                    (Expression) visit(ctx.math_operation(1)));
        } else if (ctx.lt != null) {
            expression = Expression.compare((Expression) visit(ctx.math_operation(0)), Compare.Operator.LESS_THAN,
                    (Expression) visit(ctx.math_operation(1)));
        } else if (ctx.gt_eq != null) {
            expression = Expression.compare((Expression) visit(ctx.math_operation(0)),
                    Compare.Operator.GREATER_THAN_EQUAL, (Expression) visit(ctx.math_operation(1)));
        } else if (ctx.lt_eq != null) {
            expression = Expression.compare((Expression) visit(ctx.math_operation(0)),
                    Compare.Operator.LESS_THAN_EQUAL, (Expression) visit(ctx.math_operation(1)));
        } else {
            throw newSiddhiParserException(ctx);
        }
        populateQueryContext(expression, ctx);
        return expression;
    }
{@inheritDoc}
<p>The default implementation returns the result of calling
{@link #visitChildren} on {@code ctx}.</p>

@param ctx
modules/siddhi-query-compiler/src/main/java/io/siddhi/query/compiler/internal/SiddhiQLBaseVisitorImpl.java