docs: public final DRL5Expressions.literal_return literal() throws RecognitionException {
  		DRL5Expressions.literal_return retval = new DRL5Expressions.literal_return();
  		retval.start = input.LT(1);
  
  		Token STRING1=null;
  		Token DECIMAL2=null;
  		Token HEX3=null;
  		Token FLOAT4=null;
  		Token BOOL5=null;
  		Token NULL6=null;
  		Token TIME_INTERVAL7=null;
  		Token STAR8=null;
  
  		try {
  			// src/main/resources/org/drools/compiler/lang/DRL5Expressions.g:90:5: ( STRING | DECIMAL | HEX | FLOAT | BOOL | NULL | TIME_INTERVAL | STAR )
  			int alt1=8;
  			switch ( input.LA(1) ) {
  			case STRING:
  				{
  				alt1=1;
  				}
  				break;
  			case DECIMAL:
  				{
  				alt1=2;
  				}
  				break;
  			case HEX:
  				{
  				alt1=3;
  				}
  				break;
  			case FLOAT:
  				{
  				alt1=4;
  				}
  				break;
  			case BOOL:
  				{
  				alt1=5;
  				}
  				break;
  			case NULL:
  				{
  				alt1=6;
  				}
  				break;
  			case TIME_INTERVAL:
  				{
  				alt1=7;
  				}
  				break;
  			case STAR:
  				{
  				alt1=8;
  				}
  				break;
  			default:
  				if (state.backtracking>0) {state.failed=true; return retval;}
  				NoViableAltException nvae =
  					new NoViableAltException("", 1, 0, input);
  				throw nvae;
  			}
  			switch (alt1) {
  				case 1 :
  					// src/main/resources/org/drools/compiler/lang/DRL5Expressions.g:90:7: STRING
  					{
  					STRING1=(Token)match(input,STRING,FOLLOW_STRING_in_literal92); if (state.failed) return retval;
  					if ( state.backtracking==0 ) {	helper.emit(STRING1, DroolsEditorType.STRING_CONST);	}
  					}
  					break;
  				case 2 :
  					// src/main/resources/org/drools/compiler/lang/DRL5Expressions.g:91:7: DECIMAL
  					{
  					DECIMAL2=(Token)match(input,DECIMAL,FOLLOW_DECIMAL_in_literal109); if (state.failed) return retval;
  					if ( state.backtracking==0 ) {	helper.emit(DECIMAL2, DroolsEditorType.NUMERIC_CONST);	}
  					}
  					break;
  				case 3 :
  					// src/main/resources/org/drools/compiler/lang/DRL5Expressions.g:92:7: HEX
  					{
  					HEX3=(Token)match(input,HEX,FOLLOW_HEX_in_literal125); if (state.failed) return retval;
  					if ( state.backtracking==0 ) {	helper.emit(HEX3, DroolsEditorType.NUMERIC_CONST);	}
  					}
  					break;
  				case 4 :
  					// src/main/resources/org/drools/compiler/lang/DRL5Expressions.g:93:7: FLOAT
  					{
  					FLOAT4=(Token)match(input,FLOAT,FOLLOW_FLOAT_in_literal145); if (state.failed) return retval;
  					if ( state.backtracking==0 ) {	helper.emit(FLOAT4, DroolsEditorType.NUMERIC_CONST);	}
  					}
  					break;
  				case 5 :
  					// src/main/resources/org/drools/compiler/lang/DRL5Expressions.g:94:7: BOOL
  					{
  					BOOL5=(Token)match(input,BOOL,FOLLOW_BOOL_in_literal163); if (state.failed) return retval;
  					if ( state.backtracking==0 ) {	helper.emit(BOOL5, DroolsEditorType.BOOLEAN_CONST);	}
  					}
  					break;
  				case 6 :
  					// src/main/resources/org/drools/compiler/lang/DRL5Expressions.g:95:7: NULL
  					{
  					NULL6=(Token)match(input,NULL,FOLLOW_NULL_in_literal182); if (state.failed) return retval;
  					if ( state.backtracking==0 ) {	helper.emit(NULL6, DroolsEditorType.NULL_CONST);	}
  					}
  					break;
  				case 7 :
  					// src/main/resources/org/drools/compiler/lang/DRL5Expressions.g:96:9: TIME_INTERVAL
  					{
  					TIME_INTERVAL7=(Token)match(input,TIME_INTERVAL,FOLLOW_TIME_INTERVAL_in_literal203); if (state.failed) return retval;
  					if ( state.backtracking==0 ) {	helper.emit(TIME_INTERVAL7, DroolsEditorType.NULL_CONST); }
  					}
  					break;
  				case 8 :
  					// src/main/resources/org/drools/compiler/lang/DRL5Expressions.g:97:9: STAR
  					{
  					STAR8=(Token)match(input,STAR,FOLLOW_STAR_in_literal215); if (state.failed) return retval;
  					if ( state.backtracking==0 ) { helper.emit(STAR8, DroolsEditorType.NUMERIC_CONST); }
  					}
  					break;
  
  			}
  			retval.stop = input.LT(-1);
  
  		}
  
  		catch (RecognitionException re) {
  		    throw re;
  		}
  
  		finally {
  			// do for sure before leaving
  		}
  		return retval;
  	}