EObject this_ColorTok_6 = null;
enterRule();
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens("RULE_ML_COMMENT");
try {
// ../at.bestsolution.efxclipse.tooling.css/src-gen/at/bestsolution/efxclipse/tooling/css/parser/antlr/internal/InternalCssDsl.g:2489:28: ( (this_IdentifierOrFuncTok_0= ruleIdentifierOrFuncTok | this_SymbolTok_1= ruleSymbolTok | this_WSTok_2= ruleWSTok | this_StringTok_3= ruleStringTok | this_NumberTok_4= ruleNumberTok | this_UrlTok_5= ruleUrlTok | this_ColorTok_6= ruleColorTok ) )
// ../at.bestsolution.efxclipse.tooling.css/src-gen/at/bestsolution/efxclipse/tooling/css/parser/antlr/internal/InternalCssDsl.g:2490:1: (this_IdentifierOrFuncTok_0= ruleIdentifierOrFuncTok | this_SymbolTok_1= ruleSymbolTok | this_WSTok_2= ruleWSTok | this_StringTok_3= ruleStringTok | this_NumberTok_4= ruleNumberTok | this_UrlTok_5= ruleUrlTok | this_ColorTok_6= ruleColorTok )
{
// ../at.bestsolution.efxclipse.tooling.css/src-gen/at/bestsolution/efxclipse/tooling/css/parser/antlr/internal/InternalCssDsl.g:2490:1: (this_IdentifierOrFuncTok_0= ruleIdentifierOrFuncTok | this_SymbolTok_1= ruleSymbolTok | this_WSTok_2= ruleWSTok | this_StringTok_3= ruleStringTok | this_NumberTok_4= ruleNumberTok | this_UrlTok_5= ruleUrlTok | this_ColorTok_6= ruleColorTok )
int alt54=7;
switch ( input.LA(1) ) {
case RULE_DASH:
{
int LA54_1 = input.LA(2);
if ( (LA54_1==RULE_ONE_INT||LA54_1==37) ) {
alt54=5;
}
else if ( ((LA54_1>=RULE_UNDERSCORE && LA54_1<=RULE_ONE_NON_HEX_LETTER)||(LA54_1>=52 && LA54_1<=55)) ) {
alt54=1;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 54, 1, input);
throw nvae;
}
}
break;
case RULE_UNDERSCORE:
case RULE_ONE_HEX_LETTER:
case RULE_ONE_NON_HEX_LETTER:
case 52:
case 53:
case 54:
case 55:
{
alt54=1;
}
break;
case RULE_COMMA:
case RULE_PERCENT:
{
alt54=2;
}
break;
case RULE_WS:
{
alt54=3;
}
break;
case RULE_CSSSTRING:
{
alt54=4;
}
break;
case RULE_PLUS:
case RULE_ONE_INT:
case 37:
{
alt54=5;
}
break;
case 45:
{
alt54=6;
}
break;
case RULE_HASHMARK:
{
alt54=7;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 54, 0, input);
throw nvae;
}
switch (alt54) {
case 1 :
// ../at.bestsolution.efxclipse.tooling.css/src-gen/at/bestsolution/efxclipse/tooling/css/parser/antlr/internal/InternalCssDsl.g:2491:5: this_IdentifierOrFuncTok_0= ruleIdentifierOrFuncTok
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCssTokAccess().getIdentifierOrFuncTokParserRuleCall_0());
}
pushFollow(FOLLOW_ruleIdentifierOrFuncTok_in_ruleCssTok5568);
this_IdentifierOrFuncTok_0=ruleIdentifierOrFuncTok();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_IdentifierOrFuncTok_0;
afterParserOrEnumRuleCall();
}
}
break;
case 2 :
// ../at.bestsolution.efxclipse.tooling.css/src-gen/at/bestsolution/efxclipse/tooling/css/parser/antlr/internal/InternalCssDsl.g:2501:5: this_SymbolTok_1= ruleSymbolTok
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCssTokAccess().getSymbolTokParserRuleCall_1());
}
pushFollow(FOLLOW_ruleSymbolTok_in_ruleCssTok5595);
this_SymbolTok_1=ruleSymbolTok();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_SymbolTok_1;
afterParserOrEnumRuleCall();
}
}
break;
case 3 :
// ../at.bestsolution.efxclipse.tooling.css/src-gen/at/bestsolution/efxclipse/tooling/css/parser/antlr/internal/InternalCssDsl.g:2511:5: this_WSTok_2= ruleWSTok
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCssTokAccess().getWSTokParserRuleCall_2());
}
pushFollow(FOLLOW_ruleWSTok_in_ruleCssTok5622);
this_WSTok_2=ruleWSTok();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_WSTok_2;
afterParserOrEnumRuleCall();
}
}
break;
case 4 :
// ../at.bestsolution.efxclipse.tooling.css/src-gen/at/bestsolution/efxclipse/tooling/css/parser/antlr/internal/InternalCssDsl.g:2521:5: this_StringTok_3= ruleStringTok
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCssTokAccess().getStringTokParserRuleCall_3());
}
pushFollow(FOLLOW_ruleStringTok_in_ruleCssTok5649);
this_StringTok_3=ruleStringTok();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_StringTok_3;
afterParserOrEnumRuleCall();
}
}
break;
case 5 :
// ../at.bestsolution.efxclipse.tooling.css/src-gen/at/bestsolution/efxclipse/tooling/css/parser/antlr/internal/InternalCssDsl.g:2531:5: this_NumberTok_4= ruleNumberTok
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCssTokAccess().getNumberTokParserRuleCall_4());
}
pushFollow(FOLLOW_ruleNumberTok_in_ruleCssTok5676);
this_NumberTok_4=ruleNumberTok();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_NumberTok_4;
afterParserOrEnumRuleCall();
}
}
break;
case 6 :
// ../at.bestsolution.efxclipse.tooling.css/src-gen/at/bestsolution/efxclipse/tooling/css/parser/antlr/internal/InternalCssDsl.g:2541:5: this_UrlTok_5= ruleUrlTok
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCssTokAccess().getUrlTokParserRuleCall_5());
}
pushFollow(FOLLOW_ruleUrlTok_in_ruleCssTok5703);
this_UrlTok_5=ruleUrlTok();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_UrlTok_5;
afterParserOrEnumRuleCall();
}
}
break;
case 7 :
// ../at.bestsolution.efxclipse.tooling.css/src-gen/at/bestsolution/efxclipse/tooling/css/parser/antlr/internal/InternalCssDsl.g:2551:5: this_ColorTok_6= ruleColorTok
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCssTokAccess().getColorTokParserRuleCall_6());
}
pushFollow(FOLLOW_ruleColorTok_in_ruleCssTok5730);
this_ColorTok_6=ruleColorTok();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_ColorTok_6;
afterParserOrEnumRuleCall();
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
myHiddenTokenState.restore();
}
return current;
}