public override void ExitTotalledNumericGreaterThanComparisonSpecificationExpression(RuleSetParser.TotalledNumericGreaterThanComparisonSpecificationExpressionContext context)
 {
     var left = new TotalFromJsonPathExpression(jsonPathParser, context.jsonpath_expr().GetText());
     ArithmeticExpression right = (context.right_arithmetic_expr() != null) ? getArithmeticExpression(context.right_arithmetic_expr())
         : getArithmeticExpression(context.numeric_expr());
 }
        public override void ExitTotalledNumericLessThanComparisonSpecificationExpression(RuleSetParser.TotalledNumericLessThanComparisonSpecificationExpressionContext ctx)
        {
            ArithmeticExpression left = new TotalFromJsonPathExpression(jsonPathParser, ctx.jsonpath_expr().GetText());
            ArithmeticExpression right = (ctx.right_arithmetic_expr() != null) ? getArithmeticExpression(ctx.right_arithmetic_expr())
                : getArithmeticExpression(ctx.numeric_expr());

            specifications.Push(new LessThan(jsonPathParser, left, right));
        }
        public override void ExitNumericLessThanComparisonSpecificationExpression(RuleSetParser.NumericLessThanComparisonSpecificationExpressionContext ctx)
        {
            ArithmeticExpression right = (ctx.left_arithmetic_expr() != null) ? getArithmeticExpression(ctx.left_arithmetic_expr())
                : getArithmeticExpression(ctx.numeric_expr(0));
            ArithmeticExpression left = (ctx.right_arithmetic_expr() != null) ? getArithmeticExpression(ctx.right_arithmetic_expr()) :
                getArithmeticExpression(ctx.numeric_expr()[(ctx.numeric_expr().Count - 1)]);

            specifications.Push(new LessThan(jsonPathParser, left, right));
        }