in drools-drl/drools-drl-parser/src/main/java/org/drools/drl/parser/lang/DRL6Expressions.java [730:909]
public final void typeMatch() throws RecognitionException {
try {
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:164:5: ( ( primitiveType )=> ( primitiveType ( ( LEFT_SQUARE RIGHT_SQUARE )=> LEFT_SQUARE RIGHT_SQUARE )* ) | ( ID ( ( typeArguments )=> typeArguments )? ( DOT ID ( ( typeArguments )=> typeArguments )? )* ( ( LEFT_SQUARE RIGHT_SQUARE )=> LEFT_SQUARE RIGHT_SQUARE )* ) )
int alt11=2;
int LA11_0 = input.LA(1);
if ( (LA11_0==ID) ) {
int LA11_1 = input.LA(2);
if ( ((synpred1_DRL6Expressions()&&(((helper.validateIdentifierKey(DroolsSoftKeywords.SHORT)))||((helper.validateIdentifierKey(DroolsSoftKeywords.LONG)))||((helper.validateIdentifierKey(DroolsSoftKeywords.CHAR)))||((helper.validateIdentifierKey(DroolsSoftKeywords.INT)))||((helper.validateIdentifierKey(DroolsSoftKeywords.FLOAT)))||((helper.validateIdentifierKey(DroolsSoftKeywords.BOOLEAN)))||((helper.validateIdentifierKey(DroolsSoftKeywords.DOUBLE)))||((helper.validateIdentifierKey(DroolsSoftKeywords.BYTE)))))) ) {
alt11=1;
}
else if ( (true) ) {
alt11=2;
}
}
else {
if (state.backtracking>0) {state.failed=true; return;}
NoViableAltException nvae =
new NoViableAltException("", 11, 0, input);
throw nvae;
}
switch (alt11) {
case 1 :
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:164:8: ( primitiveType )=> ( primitiveType ( ( LEFT_SQUARE RIGHT_SQUARE )=> LEFT_SQUARE RIGHT_SQUARE )* )
{
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:164:27: ( primitiveType ( ( LEFT_SQUARE RIGHT_SQUARE )=> LEFT_SQUARE RIGHT_SQUARE )* )
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:164:29: primitiveType ( ( LEFT_SQUARE RIGHT_SQUARE )=> LEFT_SQUARE RIGHT_SQUARE )*
{
pushFollow(FOLLOW_primitiveType_in_typeMatch558);
primitiveType();
state._fsp--;
if (state.failed) return;
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:164:43: ( ( LEFT_SQUARE RIGHT_SQUARE )=> LEFT_SQUARE RIGHT_SQUARE )*
loop6:
while (true) {
int alt6=2;
int LA6_0 = input.LA(1);
if ( (LA6_0==LEFT_SQUARE) && (synpred2_DRL6Expressions())) {
alt6=1;
}
switch (alt6) {
case 1 :
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:164:44: ( LEFT_SQUARE RIGHT_SQUARE )=> LEFT_SQUARE RIGHT_SQUARE
{
match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_typeMatch568); if (state.failed) return;
match(input,RIGHT_SQUARE,FOLLOW_RIGHT_SQUARE_in_typeMatch570); if (state.failed) return;
}
break;
default :
break loop6;
}
}
}
}
break;
case 2 :
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:165:7: ( ID ( ( typeArguments )=> typeArguments )? ( DOT ID ( ( typeArguments )=> typeArguments )? )* ( ( LEFT_SQUARE RIGHT_SQUARE )=> LEFT_SQUARE RIGHT_SQUARE )* )
{
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:165:7: ( ID ( ( typeArguments )=> typeArguments )? ( DOT ID ( ( typeArguments )=> typeArguments )? )* ( ( LEFT_SQUARE RIGHT_SQUARE )=> LEFT_SQUARE RIGHT_SQUARE )* )
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:165:9: ID ( ( typeArguments )=> typeArguments )? ( DOT ID ( ( typeArguments )=> typeArguments )? )* ( ( LEFT_SQUARE RIGHT_SQUARE )=> LEFT_SQUARE RIGHT_SQUARE )*
{
match(input,ID,FOLLOW_ID_in_typeMatch584); if (state.failed) return;
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:165:12: ( ( typeArguments )=> typeArguments )?
int alt7=2;
int LA7_0 = input.LA(1);
if ( (LA7_0==LESS) ) {
int LA7_1 = input.LA(2);
if ( (LA7_1==ID) && (synpred3_DRL6Expressions())) {
alt7=1;
}
else if ( (LA7_1==QUESTION) && (synpred3_DRL6Expressions())) {
alt7=1;
}
}
switch (alt7) {
case 1 :
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:165:13: ( typeArguments )=> typeArguments
{
pushFollow(FOLLOW_typeArguments_in_typeMatch591);
typeArguments();
state._fsp--;
if (state.failed) return;
}
break;
}
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:165:46: ( DOT ID ( ( typeArguments )=> typeArguments )? )*
loop9:
while (true) {
int alt9=2;
int LA9_0 = input.LA(1);
if ( (LA9_0==DOT) ) {
alt9=1;
}
switch (alt9) {
case 1 :
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:165:47: DOT ID ( ( typeArguments )=> typeArguments )?
{
match(input,DOT,FOLLOW_DOT_in_typeMatch596); if (state.failed) return;
match(input,ID,FOLLOW_ID_in_typeMatch598); if (state.failed) return;
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:165:54: ( ( typeArguments )=> typeArguments )?
int alt8=2;
int LA8_0 = input.LA(1);
if ( (LA8_0==LESS) ) {
int LA8_1 = input.LA(2);
if ( (LA8_1==ID) && (synpred4_DRL6Expressions())) {
alt8=1;
}
else if ( (LA8_1==QUESTION) && (synpred4_DRL6Expressions())) {
alt8=1;
}
}
switch (alt8) {
case 1 :
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:165:55: ( typeArguments )=> typeArguments
{
pushFollow(FOLLOW_typeArguments_in_typeMatch605);
typeArguments();
state._fsp--;
if (state.failed) return;
}
break;
}
}
break;
default :
break loop9;
}
}
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:165:91: ( ( LEFT_SQUARE RIGHT_SQUARE )=> LEFT_SQUARE RIGHT_SQUARE )*
loop10:
while (true) {
int alt10=2;
int LA10_0 = input.LA(1);
if ( (LA10_0==LEFT_SQUARE) && (synpred5_DRL6Expressions())) {
alt10=1;
}
switch (alt10) {
case 1 :
// src/main/resources/org/drools/drl/parser/DRL6Expressions.g:165:92: ( LEFT_SQUARE RIGHT_SQUARE )=> LEFT_SQUARE RIGHT_SQUARE
{
match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_typeMatch620); if (state.failed) return;
match(input,RIGHT_SQUARE,FOLLOW_RIGHT_SQUARE_in_typeMatch622); if (state.failed) return;
}
break;
default :
break loop10;
}
}
}
}
break;
}
}
catch (RecognitionException re) {
throw re;
}
finally {
// do for sure before leaving
}
}