// $ANTLR start ruleliteral
// ../org.csu.idl.xtext/src-gen/org/csu/idl/xtext/parser/antlr/internal/InternalIDL.g:5733:1: ruleliteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | this_STRING_1= RULE_STRING | this_HEX_LITERAL_2= RULE_HEX_LITERAL | this_WIDE_STRING_LITERAL_3= RULE_WIDE_STRING_LITERAL | this_FIXED_PT_LITERAL_4= RULE_FIXED_PT_LITERAL | this_FLOATING_PT_LITERAL_5= RULE_FLOATING_PT_LITERAL | this_BOOLEAN_LITERAL_6= RULE_BOOLEAN_LITERAL ) ;
public final AntlrDatatypeRuleToken ruleliteral() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token this_INT_0=null;
Token this_STRING_1=null;
Token this_HEX_LITERAL_2=null;
Token this_WIDE_STRING_LITERAL_3=null;
Token this_FIXED_PT_LITERAL_4=null;
Token this_FLOATING_PT_LITERAL_5=null;
Token this_BOOLEAN_LITERAL_6=null;
setCurrentLookahead(); resetLookahead();
try {
// ../org.csu.idl.xtext/src-gen/org/csu/idl/xtext/parser/antlr/internal/InternalIDL.g:5738:6: ( (this_INT_0= RULE_INT | this_STRING_1= RULE_STRING | this_HEX_LITERAL_2= RULE_HEX_LITERAL | this_WIDE_STRING_LITERAL_3= RULE_WIDE_STRING_LITERAL | this_FIXED_PT_LITERAL_4= RULE_FIXED_PT_LITERAL | this_FLOATING_PT_LITERAL_5= RULE_FLOATING_PT_LITERAL | this_BOOLEAN_LITERAL_6= RULE_BOOLEAN_LITERAL ) )
// ../org.csu.idl.xtext/src-gen/org/csu/idl/xtext/parser/antlr/internal/InternalIDL.g:5739:1: (this_INT_0= RULE_INT | this_STRING_1= RULE_STRING | this_HEX_LITERAL_2= RULE_HEX_LITERAL | this_WIDE_STRING_LITERAL_3= RULE_WIDE_STRING_LITERAL | this_FIXED_PT_LITERAL_4= RULE_FIXED_PT_LITERAL | this_FLOATING_PT_LITERAL_5= RULE_FLOATING_PT_LITERAL | this_BOOLEAN_LITERAL_6= RULE_BOOLEAN_LITERAL )
{
// ../org.csu.idl.xtext/src-gen/org/csu/idl/xtext/parser/antlr/internal/InternalIDL.g:5739:1: (this_INT_0= RULE_INT | this_STRING_1= RULE_STRING | this_HEX_LITERAL_2= RULE_HEX_LITERAL | this_WIDE_STRING_LITERAL_3= RULE_WIDE_STRING_LITERAL | this_FIXED_PT_LITERAL_4= RULE_FIXED_PT_LITERAL | this_FLOATING_PT_LITERAL_5= RULE_FLOATING_PT_LITERAL | this_BOOLEAN_LITERAL_6= RULE_BOOLEAN_LITERAL )
int alt75=7;
switch ( input.LA(1) ) {
case RULE_INT:
{
alt75=1;
}
break;
case RULE_STRING:
{
alt75=2;
}
break;
case RULE_HEX_LITERAL:
{
alt75=3;
}
break;
case RULE_WIDE_STRING_LITERAL:
{
alt75=4;
}
break;
case RULE_FIXED_PT_LITERAL:
{
alt75=5;
}
break;
case RULE_FLOATING_PT_LITERAL:
{
alt75=6;
}
break;
case RULE_BOOLEAN_LITERAL:
{
alt75=7;
}
break;
default:
if (backtracking>0) {failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("5739:1: (this_INT_0= RULE_INT | this_STRING_1= RULE_STRING | this_HEX_LITERAL_2= RULE_HEX_LITERAL | this_WIDE_STRING_LITERAL_3= RULE_WIDE_STRING_LITERAL | this_FIXED_PT_LITERAL_4= RULE_FIXED_PT_LITERAL | this_FLOATING_PT_LITERAL_5= RULE_FLOATING_PT_LITERAL | this_BOOLEAN_LITERAL_6= RULE_BOOLEAN_LITERAL )", 75, 0, input);
throw nvae;
}
switch (alt75) {
case 1 :
// ../org.csu.idl.xtext/src-gen/org/csu/idl/xtext/parser/antlr/internal/InternalIDL.g:5739:6: this_INT_0= RULE_INT
{
this_INT_0=(Token)input.LT(1);
match(input,RULE_INT,FollowSets000.FOLLOW_RULE_INT_in_ruleliteral10451); if (failed) return current;
if ( backtracking==0 ) {
current.merge(this_INT_0);
}
if ( backtracking==0 ) {
createLeafNode(grammarAccess.getLiteralAccess().getINTTerminalRuleCall_0(), null);
}
}
break;
case 2 :
// ../org.csu.idl.xtext/src-gen/org/csu/idl/xtext/parser/antlr/internal/InternalIDL.g:5747:10: this_STRING_1= RULE_STRING
{
this_STRING_1=(Token)input.LT(1);
match(input,RULE_STRING,FollowSets000.FOLLOW_RULE_STRING_in_ruleliteral10477); if (failed) return current;
if ( backtracking==0 ) {
current.merge(this_STRING_1);
}
if ( backtracking==0 ) {
createLeafNode(grammarAccess.getLiteralAccess().getSTRINGTerminalRuleCall_1(), null);
}
}
break;
case 3 :
// ../org.csu.idl.xtext/src-gen/org/csu/idl/xtext/parser/antlr/internal/InternalIDL.g:5755:10: this_HEX_LITERAL_2= RULE_HEX_LITERAL
{
this_HEX_LITERAL_2=(Token)input.LT(1);
match(input,RULE_HEX_LITERAL,FollowSets000.FOLLOW_RULE_HEX_LITERAL_in_ruleliteral10503); if (failed) return current;
if ( backtracking==0 ) {
current.merge(this_HEX_LITERAL_2);
}
if ( backtracking==0 ) {
createLeafNode(grammarAccess.getLiteralAccess().getHEX_LITERALTerminalRuleCall_2(), null);
}
}
break;
case 4 :
// ../org.csu.idl.xtext/src-gen/org/csu/idl/xtext/parser/antlr/internal/InternalIDL.g:5763:10: this_WIDE_STRING_LITERAL_3= RULE_WIDE_STRING_LITERAL
{
this_WIDE_STRING_LITERAL_3=(Token)input.LT(1);
match(input,RULE_WIDE_STRING_LITERAL,FollowSets000.FOLLOW_RULE_WIDE_STRING_LITERAL_in_ruleliteral10529); if (failed) return current;
if ( backtracking==0 ) {
current.merge(this_WIDE_STRING_LITERAL_3);
}
if ( backtracking==0 ) {
createLeafNode(grammarAccess.getLiteralAccess().getWIDE_STRING_LITERALTerminalRuleCall_3(), null);
}
}
break;
case 5 :
// ../org.csu.idl.xtext/src-gen/org/csu/idl/xtext/parser/antlr/internal/InternalIDL.g:5771:10: this_FIXED_PT_LITERAL_4= RULE_FIXED_PT_LITERAL
{
this_FIXED_PT_LITERAL_4=(Token)input.LT(1);
match(input,RULE_FIXED_PT_LITERAL,FollowSets000.FOLLOW_RULE_FIXED_PT_LITERAL_in_ruleliteral10555); if (failed) return current;
if ( backtracking==0 ) {
current.merge(this_FIXED_PT_LITERAL_4);
}
if ( backtracking==0 ) {
createLeafNode(grammarAccess.getLiteralAccess().getFIXED_PT_LITERALTerminalRuleCall_4(), null);
}
}
break;
case 6 :
// ../org.csu.idl.xtext/src-gen/org/csu/idl/xtext/parser/antlr/internal/InternalIDL.g:5779:10: this_FLOATING_PT_LITERAL_5= RULE_FLOATING_PT_LITERAL
{
this_FLOATING_PT_LITERAL_5=(Token)input.LT(1);
match(input,RULE_FLOATING_PT_LITERAL,FollowSets000.FOLLOW_RULE_FLOATING_PT_LITERAL_in_ruleliteral10581); if (failed) return current;
if ( backtracking==0 ) {
current.merge(this_FLOATING_PT_LITERAL_5);
}
if ( backtracking==0 ) {
createLeafNode(grammarAccess.getLiteralAccess().getFLOATING_PT_LITERALTerminalRuleCall_5(), null);
}
}
break;
case 7 :
// ../org.csu.idl.xtext/src-gen/org/csu/idl/xtext/parser/antlr/internal/InternalIDL.g:5787:10: this_BOOLEAN_LITERAL_6= RULE_BOOLEAN_LITERAL
{
this_BOOLEAN_LITERAL_6=(Token)input.LT(1);
match(input,RULE_BOOLEAN_LITERAL,FollowSets000.FOLLOW_RULE_BOOLEAN_LITERAL_in_ruleliteral10607); if (failed) return current;
if ( backtracking==0 ) {
current.merge(this_BOOLEAN_LITERAL_6);
}
if ( backtracking==0 ) {
createLeafNode(grammarAccess.getLiteralAccess().getBOOLEAN_LITERALTerminalRuleCall_6(), null);