public final BaseDescr parExpression() throws RecognitionException {
		BaseDescr result = null;


		ParserRuleReturnScope expr =null;

		try {
			// src/main/resources/org/drools/compiler/lang/DRL6Expressions.g:623:5: ( LEFT_PAREN expr= expression RIGHT_PAREN )
			// src/main/resources/org/drools/compiler/lang/DRL6Expressions.g:623:7: LEFT_PAREN expr= expression RIGHT_PAREN
			{
			match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_parExpression3631); if (state.failed) return result;
			pushFollow(FOLLOW_expression_in_parExpression3635);
			expr=expression();
			state._fsp--;
			if (state.failed) return result;
			match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_parExpression3637); if (state.failed) return result;
			if ( state.backtracking==0 ) {  if( buildDescr  ) {
			               result = (expr!=null?((DRL6Expressions.expression_return)expr).result:null);
			               if( result instanceof AtomicExprDescr ) {
			                   ((AtomicExprDescr)result).setExpression("(" +((AtomicExprDescr)result).getExpression() + ")" );
			               }
			           }
			        }
			}

		}

		catch (RecognitionException re) {
		    throw re;
		}

		finally {
			// do for sure before leaving
		}
		return result;
	}
public final BaseDescr parExpression ( ) throws RecognitionException { BaseDescr result = null ; ParserRuleReturnScope expr = null ; try { { match ( input , LEFT_PAREN , FOLLOW_LEFT_PAREN_in_parExpression3631 ) ; if ( state . failed ) return result ; pushFollow ( FOLLOW_expression_in_parExpression3635 ) ; expr = expression ( ) ; state . _fsp -- ; if ( state . failed ) return result ; match ( input , RIGHT_PAREN , FOLLOW_RIGHT_PAREN_in_parExpression3637 ) ; if ( state . failed ) return result ; if ( state . backtracking == 0 ) { if ( buildDescr ) { result = ( expr != null ? ( ( DRL6Expressions . expression_return ) expr ) . result : null ) ; if ( result instanceof AtomicExprDescr ) { ( ( AtomicExprDescr ) result ) . setExpression ( "(" + ( ( AtomicExprDescr ) result ) . getExpression ( ) + ")" ) ; } } } } } catch ( RecognitionException re ) { throw re ; } finally { } return result ; }
src/main/resources/org/drools/compiler/lang/DRL6Expressions.g:622:1: parExpression returns [BaseDescr result] : LEFT_PAREN expr= expression RIGHT_PAREN ;