public Atomic_conditionContext atomic_condition() {
		Atomic_conditionContext _localctx = new Atomic_conditionContext(Context, State);
		EnterRule(_localctx, 16, RULE_atomic_condition);
		try {
			State = 189;
			switch ( Interpreter.AdaptivePredict(TokenStream,6,Context) ) {
			case 1:
				EnterOuterAlt(_localctx, 1);
				{
				}
				break;
			case 2:
				EnterOuterAlt(_localctx, 2);
				{
				State = 159; _localctx.left = terms();
				State = 160; Match(NEQ);
				State = 161; _localctx.right = terms();
				 _localctx.value =  PumpingLemma.ComparisonExpression.NotEqual(_localctx.left.value, _localctx.right.value); 
				}
				break;
			case 3:
				EnterOuterAlt(_localctx, 3);
				{
				State = 164; _localctx.left = terms();
				State = 165; Match(EQ);
				State = 166; _localctx.right = terms();
				 _localctx.value =  PumpingLemma.ComparisonExpression.Equal(_localctx.left.value, _localctx.right.value); 
				}
				break;
			case 4:
				EnterOuterAlt(_localctx, 4);
				{
				State = 169; _localctx.left = terms();
				State = 170; Match(LT);
				State = 171; _localctx.right = terms();
				 _localctx.value =  PumpingLemma.ComparisonExpression.LessThan(_localctx.left.value, _localctx.right.value); 
				}
				break;
			case 5:
				EnterOuterAlt(_localctx, 5);
				{
				State = 174; _localctx.left = terms();
				State = 175; Match(LEQ);
				State = 176; _localctx.right = terms();
				 _localctx.value =  PumpingLemma.ComparisonExpression.LessThanOrEqual(_localctx.left.value, _localctx.right.value); 
				}
				break;
			case 6:
				EnterOuterAlt(_localctx, 6);
				{
				State = 179; _localctx.left = terms();
				State = 180; Match(GT);
				State = 181; _localctx.right = terms();
				 _localctx.value =  PumpingLemma.ComparisonExpression.GreaterThan(_localctx.left.value, _localctx.right.value); 
				}
				break;
			case 7:
				EnterOuterAlt(_localctx, 7);
				{
				State = 184; _localctx.left = terms();
				State = 185; Match(GEQ);
				State = 186; _localctx.right = terms();
				 _localctx.value =  PumpingLemma.ComparisonExpression.GreaterThanOrEqual(_localctx.left.value, _localctx.right.value); 
				}
				break;
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			ErrorHandler.ReportError(this, re);
			ErrorHandler.Recover(this, re);
		}
		finally {
			ExitRule();
		}
		return _localctx;
	}
Beispiel #2
0
    public Atomic_conditionContext atomic_condition()
    {
        Atomic_conditionContext _localctx = new Atomic_conditionContext(Context, State);

        EnterRule(_localctx, 16, RULE_atomic_condition);
        try {
            State = 189;
            switch (Interpreter.AdaptivePredict(TokenStream, 6, Context))
            {
            case 1:
                EnterOuterAlt(_localctx, 1);
                {
                }
                break;

            case 2:
                EnterOuterAlt(_localctx, 2);
                {
                    State           = 159; _localctx.left = terms();
                    State           = 160; Match(NEQ);
                    State           = 161; _localctx.right = terms();
                    _localctx.value = PumpingLemma.ComparisonExpression.NotEqual(_localctx.left.value, _localctx.right.value);
                }
                break;

            case 3:
                EnterOuterAlt(_localctx, 3);
                {
                    State           = 164; _localctx.left = terms();
                    State           = 165; Match(EQ);
                    State           = 166; _localctx.right = terms();
                    _localctx.value = PumpingLemma.ComparisonExpression.Equal(_localctx.left.value, _localctx.right.value);
                }
                break;

            case 4:
                EnterOuterAlt(_localctx, 4);
                {
                    State           = 169; _localctx.left = terms();
                    State           = 170; Match(LT);
                    State           = 171; _localctx.right = terms();
                    _localctx.value = PumpingLemma.ComparisonExpression.LessThan(_localctx.left.value, _localctx.right.value);
                }
                break;

            case 5:
                EnterOuterAlt(_localctx, 5);
                {
                    State           = 174; _localctx.left = terms();
                    State           = 175; Match(LEQ);
                    State           = 176; _localctx.right = terms();
                    _localctx.value = PumpingLemma.ComparisonExpression.LessThanOrEqual(_localctx.left.value, _localctx.right.value);
                }
                break;

            case 6:
                EnterOuterAlt(_localctx, 6);
                {
                    State           = 179; _localctx.left = terms();
                    State           = 180; Match(GT);
                    State           = 181; _localctx.right = terms();
                    _localctx.value = PumpingLemma.ComparisonExpression.GreaterThan(_localctx.left.value, _localctx.right.value);
                }
                break;

            case 7:
                EnterOuterAlt(_localctx, 7);
                {
                    State           = 184; _localctx.left = terms();
                    State           = 185; Match(GEQ);
                    State           = 186; _localctx.right = terms();
                    _localctx.value = PumpingLemma.ComparisonExpression.GreaterThanOrEqual(_localctx.left.value, _localctx.right.value);
                }
                break;
            }
        }
        catch (RecognitionException re) {
            _localctx.exception = re;
            ErrorHandler.ReportError(this, re);
            ErrorHandler.Recover(this, re);
        }
        finally {
            ExitRule();
        }
        return(_localctx);
    }