// $ANTLR 3.5 src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g 2014-04-11 17:50:27 /* * Copyright 2014 Red Hat, Inc. and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.kie.workbench.common.services.datamodeller.parser; import org.kie.workbench.common.services.datamodeller.parser.util.ParserUtil; import org.kie.workbench.common.services.datamodeller.parser.descr.*; import org.kie.workbench.common.services.datamodeller.parser.descr.ElementDescriptor.ElementType; import org.antlr.runtime.*; import java.util.Stack; import java.util.List; import java.util.ArrayList; import java.util.Map; import java.util.HashMap; /** A Java 1.5 grammar for ANTLR v3 derived from the spec * * This is a very close representation of the spec; the changes * are comestic (remove left recursion) and also fixes (the spec * isn't exactly perfect). I have run this on the 1.4.2 source * and some nasty looking enums from 1.5, but have not really * tested for 1.5 compatibility. * * I built this with: java -Xmx100M org.antlr.Tool java.g * and got two errors that are ok (for now): * java.g:691:9: Decision can match input such as * "'0'..'9'{'E', 'e'}{'+', '-'}'0'..'9'{'D', 'F', 'd', 'f'}" * using multiple alternatives: 3, 4 * As a result, alternative(s) 4 were disabled for that input * java.g:734:35: Decision can match input such as "{'$', 'A'..'Z', * '_', 'a'..'z', '\u00C0'..'\u00D6', '\u00D8'..'\u00F6', * '\u00F8'..'\u1FFF', '\u3040'..'\u318F', '\u3300'..'\u337F', * '\u3400'..'\u3D2D', '\u4E00'..'\u9FFF', '\uF900'..'\uFAFF'}" * using multiple alternatives: 1, 2 * As a result, alternative(s) 2 were disabled for that input * * You can turn enum on/off as a keyword :) * * Version 1.0 -- initial release July 5, 2006 (requires 3.0b2 or higher) * * Primary author: Terence Parr, July 2006 * * Version 1.0.1 -- corrections by Koen Vanderkimpen & Marko van Dooren, * October 25, 2006; * fixed normalInterfaceDeclaration: now uses typeParameters instead * of typeParameter (according to JLS, 3rd edition) * fixed castExpression: no longer allows expression next to type * (according to semantics in JLS, in contrast with syntax in JLS) * * Version 1.0.2 -- Terence Parr, Nov 27, 2006 * java spec I built this from had some bizarre for-loop control. * Looked weird and so I looked elsewhere...Yep, it's messed up. * simplified. * * Version 1.0.3 -- Chris Hogue, Feb 26, 2007 * Factored out an annotationName rule and used it in the annotation rule. * Not sure why, but typeName wasn't recognizing references to inner * annotations (e.g. @InterfaceName.InnerAnnotation()) * Factored out the elementValue section of an annotation reference. Created * elementValuePair and elementValuePairs rules, then used them in the * annotation rule. Allows it to recognize annotation references with * multiple, comma separated attributes. * Updated elementValueArrayInitializer so that it allows multiple elements. * (It was only allowing 0 or 1 element). * Updated localVariableDeclaration to allow annotations. Interestingly the JLS * doesn't appear to indicate this is legal, but it does work as of at least * JDK 1.5.0_06. * Moved the Identifier portion of annotationTypeElementRest to annotationMethodRest. * Because annotationConstantRest already references variableDeclarator which * has the Identifier portion in it, the parser would fail on constants in * annotation definitions because it expected two identifiers. * Added optional trailing ';' to the alternatives in annotationTypeElementRest. * Wouldn't handle an inner interface that has a trailing ';'. * Swapped the expression and type rule reference order in castExpression to * make it check for genericized casts first. It was failing to recognize a * statement like "Class<Byte> TYPE = (Class<Byte>)...;" because it was seeing * 'Class<Byte' in the cast expression as a less than expression, then failing * on the '>'. * Changed createdName to use typeArguments instead of nonWildcardTypeArguments. * * Changed the 'this' alternative in primary to allow 'identifierSuffix' rather than * just 'arguments'. The case it couldn't handle was a call to an explicit * generic method invocation (e.g. this.<E>doSomething()). Using identifierSuffix * may be overly aggressive--perhaps should create a more constrained thisSuffix rule? * * Version 1.0.4 -- Hiroaki Nakamura, May 3, 2007 * * Fixed formalParameterDecls, localVariableDeclaration, forInit, * and forVarControl to use variableModifier* not 'final'? (annotation)? * * Version 1.0.5 -- Terence, June 21, 2007 * --a[i].foo didn't work. Fixed unaryExpression * * Version 1.0.6 -- John Ridgway, March 17, 2008 * Made "assert" a switchable keyword like "enum". * Fixed compilationUnit to disallow "annotation importDeclaration ...". * Changed "Identifier ('.' Identifier)*" to "qualifiedName" in more * places. * Changed modifier* and/or variableModifier* to classOrInterfaceModifiers, * modifiers or variableModifiers, as appropriate. * Renamed "bound" to "typeBound" to better match language in the JLS. * Added "memberDeclaration" which rewrites to methodDeclaration or * fieldDeclaration and pulled type into memberDeclaration. So we parse * type and then move on to decide whether we're dealing with a field * or a method. * Modified "constructorDeclaration" to use "constructorBody" instead of * "methodBody". constructorBody starts with explicitConstructorInvocation, * then goes on to blockStatement*. Pulling explicitConstructorInvocation * out of expressions allowed me to simplify "primary". * Changed variableDeclarator to simplify it. * Changed type to use classOrInterfaceType, thus simplifying it; of course * I then had to add classOrInterfaceType, but it is used in several * places. * Fixed annotations, old version allowed "@X(y,z)", which is illegal. * Added optional comma to stop of "elementValueArrayInitializer"; as per JLS. * Changed annotationTypeElementRest to use normalClassDeclaration and * normalInterfaceDeclaration rather than classDeclaration and * interfaceDeclaration, thus getting rid of a couple of grammar ambiguities. * Split localVariableDeclaration into localVariableDeclarationStatement * (includes the terminating semi-colon) and localVariableDeclaration. * This allowed me to use localVariableDeclaration in "forInit" clauses, * simplifying them. * Changed switchBlockStatementGroup to use multiple labels. This adds an * ambiguity, but if one uses appropriately greedy parsing it yields the * parse that is closest to the meaning of the switch statement. * Renamed "forVarControl" to "enhancedForControl" -- JLS language. * Added semantic predicates to test for shift operations rather than other * things. Thus, for instance, the string "< <" will never be treated * as a left-shift operator. * In "creator" we rule out "nonWildcardTypeArguments" on arrayCreation, * which are illegal. * Moved "nonWildcardTypeArguments into innerCreator. * Removed 'super' superSuffix from explicitGenericInvocation, since that * is only used in explicitConstructorInvocation at the beginning of a * constructorBody. (This is part of the simplification of expressions * mentioned earlier.) * Simplified primary (got rid of those things that are only used in * explicitConstructorInvocation). * Lexer -- removed "Exponent?" from FloatingPointLiteral choice 4, since it * led to an ambiguity. * * This grammar successfully parses every .java file in the JDK 1.5 source * tree (excluding those whose file names include '-', which are not * valid Java compilation units). * * Known remaining problems: * "Letter" and "JavaIDDigit" are wrong. The actual specification of * "Letter" should be "a character for which the method * Character.isJavaIdentifierStart(int) returns true." A "Java * letter-or-digit is a character for which the method * Character.isJavaIdentifierPart(int) returns true." */ @SuppressWarnings("all") public class JavaParser extends JavaParserBase { public static final String[] tokenNames = new String[] { "<invalid>", "<EOR>", "<DOWN>", "<UP>", "ABSTRACT", "AMP", "AMPAMP", "AMPEQ", "ASSERT", "BANG", "BANGEQ", "BAR", "BARBAR", "BAREQ", "BOOLEAN", "BREAK", "BYTE", "CARET", "CARETEQ", "CASE", "CATCH", "CHAR", "CHARLITERAL", "CLASS", "COLON", "COMMA", "COMMENT", "CONST", "CONTINUE", "DEFAULT", "DO", "DOT", "DOUBLE", "DOUBLELITERAL", "DoubleSuffix", "ELLIPSIS", "ELSE", "ENUM", "EQ", "EQEQ", "EXTENDS", "EscapeSequence", "Exponent", "FALSE", "FINAL", "FINALLY", "FLOAT", "FLOATLITERAL", "FOR", "FloatSuffix", "GOTO", "GT", "HexDigit", "HexPrefix", "IDENTIFIER", "IF", "IMPLEMENTS", "IMPORT", "INSTANCEOF", "INT", "INTERFACE", "INTLITERAL", "IdentifierPart", "IdentifierStart", "IntegerNumber", "LBRACE", "LBRACKET", "LINE_COMMENT", "LONG", "LONGLITERAL", "LPAREN", "LT", "LongSuffix", "MONKEYS_AT", "NATIVE", "NEW", "NULL", "NonIntegerNumber", "PACKAGE", "PERCENT", "PERCENTEQ", "PLUS", "PLUSEQ", "PLUSPLUS", "PRIVATE", "PROTECTED", "PUBLIC", "QUES", "RBRACE", "RBRACKET", "RETURN", "RPAREN", "SEMI", "SHORT", "SLASH", "SLASHEQ", "STAR", "STAREQ", "STATIC", "STRICTFP", "STRINGLITERAL", "SUB", "SUBEQ", "SUBSUB", "SUPER", "SWITCH", "SYNCHRONIZED", "SurrogateIdentifer", "THIS", "THROW", "THROWS", "TILDE", "TRANSIENT", "TRUE", "TRY", "VOID", "VOLATILE", "WHILE", "WS" }; public static final int EOF=-1; public static final int ABSTRACT=4; public static final int AMP=5; public static final int AMPAMP=6; public static final int AMPEQ=7; public static final int ASSERT=8; public static final int BANG=9; public static final int BANGEQ=10; public static final int BAR=11; public static final int BARBAR=12; public static final int BAREQ=13; public static final int BOOLEAN=14; public static final int BREAK=15; public static final int BYTE=16; public static final int CARET=17; public static final int CARETEQ=18; public static final int CASE=19; public static final int CATCH=20; public static final int CHAR=21; public static final int CHARLITERAL=22; public static final int CLASS=23; public static final int COLON=24; public static final int COMMA=25; public static final int COMMENT=26; public static final int CONST=27; public static final int CONTINUE=28; public static final int DEFAULT=29; public static final int DO=30; public static final int DOT=31; public static final int DOUBLE=32; public static final int DOUBLELITERAL=33; public static final int DoubleSuffix=34; public static final int ELLIPSIS=35; public static final int ELSE=36; public static final int ENUM=37; public static final int EQ=38; public static final int EQEQ=39; public static final int EXTENDS=40; public static final int EscapeSequence=41; public static final int Exponent=42; public static final int FALSE=43; public static final int FINAL=44; public static final int FINALLY=45; public static final int FLOAT=46; public static final int FLOATLITERAL=47; public static final int FOR=48; public static final int FloatSuffix=49; public static final int GOTO=50; public static final int GT=51; public static final int HexDigit=52; public static final int HexPrefix=53; public static final int IDENTIFIER=54; public static final int IF=55; public static final int IMPLEMENTS=56; public static final int IMPORT=57; public static final int INSTANCEOF=58; public static final int INT=59; public static final int INTERFACE=60; public static final int INTLITERAL=61; public static final int IdentifierPart=62; public static final int IdentifierStart=63; public static final int IntegerNumber=64; public static final int LBRACE=65; public static final int LBRACKET=66; public static final int LINE_COMMENT=67; public static final int LONG=68; public static final int LONGLITERAL=69; public static final int LPAREN=70; public static final int LT=71; public static final int LongSuffix=72; public static final int MONKEYS_AT=73; public static final int NATIVE=74; public static final int NEW=75; public static final int NULL=76; public static final int NonIntegerNumber=77; public static final int PACKAGE=78; public static final int PERCENT=79; public static final int PERCENTEQ=80; public static final int PLUS=81; public static final int PLUSEQ=82; public static final int PLUSPLUS=83; public static final int PRIVATE=84; public static final int PROTECTED=85; public static final int PUBLIC=86; public static final int QUES=87; public static final int RBRACE=88; public static final int RBRACKET=89; public static final int RETURN=90; public static final int RPAREN=91; public static final int SEMI=92; public static final int SHORT=93; public static final int SLASH=94; public static final int SLASHEQ=95; public static final int STAR=96; public static final int STAREQ=97; public static final int STATIC=98; public static final int STRICTFP=99; public static final int STRINGLITERAL=100; public static final int SUB=101; public static final int SUBEQ=102; public static final int SUBSUB=103; public static final int SUPER=104; public static final int SWITCH=105; public static final int SYNCHRONIZED=106; public static final int SurrogateIdentifer=107; public static final int THIS=108; public static final int THROW=109; public static final int THROWS=110; public static final int TILDE=111; public static final int TRANSIENT=112; public static final int TRUE=113; public static final int TRY=114; public static final int VOID=115; public static final int VOLATILE=116; public static final int WHILE=117; public static final int WS=118; // delegates public JavaParserBase[] getDelegates() { return new JavaParserBase[] {}; } // delegators public JavaParser(TokenStream input) { this(input, new RecognizerSharedState()); } public JavaParser(TokenStream input, RecognizerSharedState state) { super(input, state); this.state.ruleMemo = new HashMap[381+1]; } @Override public String[] getTokenNames() { return JavaParser.tokenNames; } @Override public String getGrammarFileName() { return "src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g"; } public JavaParser(TokenStream input, StringBuilder sourceBuffer, ParserMode mode) { this(input, new RecognizerSharedState()); this.sourceBuffer = sourceBuffer; this.mode = mode; initContext(); } // $ANTLR start "compilationUnit" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:356:1: compilationUnit : ( ( annotations )? packageDeclaration )? ( importDeclaration )* ( typeDeclaration )* ; public final void compilationUnit() throws RecognitionException { int compilationUnit_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 1) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:357:5: ( ( ( annotations )? packageDeclaration )? ( importDeclaration )* ( typeDeclaration )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:357:9: ( ( annotations )? packageDeclaration )? ( importDeclaration )* ( typeDeclaration )* { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:357:9: ( ( annotations )? packageDeclaration )? int alt2=2; int LA2_0 = input.LA(1); if ( (LA2_0==MONKEYS_AT) ) { int LA2_1 = input.LA(2); if ( (synpred2_Java()) ) { alt2=1; } } else if ( (LA2_0==PACKAGE) ) { alt2=1; } switch (alt2) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:357:13: ( annotations )? packageDeclaration { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:357:13: ( annotations )? int alt1=2; int LA1_0 = input.LA(1); if ( (LA1_0==MONKEYS_AT) ) { alt1=1; } switch (alt1) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:357:14: annotations { pushFollow(FOLLOW_annotations_in_compilationUnit127); annotations(); state._fsp--; if (state.failed) return; } break; } pushFollow(FOLLOW_packageDeclaration_in_compilationUnit156); packageDeclaration(); state._fsp--; if (state.failed) return; } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:361:9: ( importDeclaration )* loop3: while (true) { int alt3=2; int LA3_0 = input.LA(1); if ( (LA3_0==IMPORT) ) { alt3=1; } switch (alt3) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:361:10: importDeclaration { pushFollow(FOLLOW_importDeclaration_in_compilationUnit178); importDeclaration(); state._fsp--; if (state.failed) return; } break; default : break loop3; } } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:363:9: ( typeDeclaration )* loop4: while (true) { int alt4=2; int LA4_0 = input.LA(1); if ( (LA4_0==ABSTRACT||LA4_0==BOOLEAN||LA4_0==BYTE||LA4_0==CHAR||LA4_0==CLASS||LA4_0==DOUBLE||LA4_0==ENUM||LA4_0==FINAL||LA4_0==FLOAT||LA4_0==IDENTIFIER||(LA4_0 >= INT && LA4_0 <= INTERFACE)||LA4_0==LONG||LA4_0==LT||(LA4_0 >= MONKEYS_AT && LA4_0 <= NATIVE)||(LA4_0 >= PRIVATE && LA4_0 <= PUBLIC)||(LA4_0 >= SEMI && LA4_0 <= SHORT)||(LA4_0 >= STATIC && LA4_0 <= STRICTFP)||LA4_0==SYNCHRONIZED||LA4_0==TRANSIENT||(LA4_0 >= VOID && LA4_0 <= VOLATILE)) ) { alt4=1; } switch (alt4) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:363:10: typeDeclaration { pushFollow(FOLLOW_typeDeclaration_in_compilationUnit200); typeDeclaration(); state._fsp--; if (state.failed) return; } break; default : break loop4; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 1, compilationUnit_StartIndex); } } } // $ANTLR end "compilationUnit" public static class packageDeclaration_return extends ParserRuleReturnScope { public PackageDescr packageDec; }; // $ANTLR start "packageDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:367:1: packageDeclaration returns [ PackageDescr packageDec ] : p= 'package' n= qualifiedName s= ';' ; public final JavaParser.packageDeclaration_return packageDeclaration() throws RecognitionException { JavaParser.packageDeclaration_return retval = new JavaParser.packageDeclaration_return(); retval.start = input.LT(1); int packageDeclaration_StartIndex = input.index(); Token p=null; Token s=null; ParserRuleReturnScope n =null; retval.packageDec = null; if (!isBacktracking()) { log("Start package declaration."); retval.packageDec = new PackageDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); context.push(retval.packageDec); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 2) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:386:5: (p= 'package' n= qualifiedName s= ';' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:386:9: p= 'package' n= qualifiedName s= ';' { p=(Token)match(input,PACKAGE,FOLLOW_PACKAGE_in_packageDeclaration254); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.packageDec.setPackageToken(new JavaTokenDescr(ElementType.JAVA_PACKAGE, (p!=null?p.getText():null), start((CommonToken)p), stop((CommonToken)p), line(p), position(p))); } pushFollow(FOLLOW_qualifiedName_in_packageDeclaration273); n=qualifiedName(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { retval.packageDec.setQualifiedName((n!=null?((JavaParser.qualifiedName_return)n).qnameDec:null)); } s=(Token)match(input,SEMI,FOLLOW_SEMI_in_packageDeclaration288); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.packageDec.setEndSemiColon(new JavaTokenDescr(ElementType.JAVA_SEMI_COLON, (s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), line(s), position(s))); } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { retval.packageDec = popPackage(); if (retval.packageDec != null) { updateOnAfter(retval.packageDec, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); processPackage(retval.packageDec); log("End of package declaration."); } else { log("A PackageDescr is expected"); } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 2, packageDeclaration_StartIndex); } } return retval; } // $ANTLR end "packageDeclaration" public static class importDeclaration_return extends ParserRuleReturnScope { public ImportDescr importDescr; }; // $ANTLR start "importDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:391:1: importDeclaration returns [ ImportDescr importDescr ] : (i1= 'import' (s1= 'static' )? id1= IDENTIFIER '.' st1= '*' sc1= ';' |i2= 'import' (s2= 'static' )? id2= IDENTIFIER ( '.' id3= IDENTIFIER )+ ( '.' st2= '*' )? sc2= ';' ); public final JavaParser.importDeclaration_return importDeclaration() throws RecognitionException { JavaParser.importDeclaration_return retval = new JavaParser.importDeclaration_return(); retval.start = input.LT(1); int importDeclaration_StartIndex = input.index(); Token i1=null; Token s1=null; Token id1=null; Token st1=null; Token sc1=null; Token i2=null; Token s2=null; Token id2=null; Token id3=null; Token st2=null; Token sc2=null; retval.importDescr = null; if (!isBacktracking()) { log("Start import declaration."); retval.importDescr = new ImportDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); context.push(retval.importDescr); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 3) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:410:5: (i1= 'import' (s1= 'static' )? id1= IDENTIFIER '.' st1= '*' sc1= ';' |i2= 'import' (s2= 'static' )? id2= IDENTIFIER ( '.' id3= IDENTIFIER )+ ( '.' st2= '*' )? sc2= ';' ) int alt9=2; int LA9_0 = input.LA(1); if ( (LA9_0==IMPORT) ) { int LA9_1 = input.LA(2); if ( (LA9_1==STATIC) ) { int LA9_2 = input.LA(3); if ( (LA9_2==IDENTIFIER) ) { int LA9_3 = input.LA(4); if ( (LA9_3==DOT) ) { int LA9_4 = input.LA(5); if ( (LA9_4==STAR) ) { alt9=1; } else if ( (LA9_4==IDENTIFIER) ) { alt9=2; } else { if (state.backtracking>0) {state.failed=true; return retval;} int nvaeMark = input.mark(); try { for (int nvaeConsume = 0; nvaeConsume < 5 - 1; nvaeConsume++) { input.consume(); } NoViableAltException nvae = new NoViableAltException("", 9, 4, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else { if (state.backtracking>0) {state.failed=true; return retval;} int nvaeMark = input.mark(); try { for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { input.consume(); } NoViableAltException nvae = new NoViableAltException("", 9, 3, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else { if (state.backtracking>0) {state.failed=true; return retval;} int nvaeMark = input.mark(); try { for (int nvaeConsume = 0; nvaeConsume < 3 - 1; nvaeConsume++) { input.consume(); } NoViableAltException nvae = new NoViableAltException("", 9, 2, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else if ( (LA9_1==IDENTIFIER) ) { int LA9_3 = input.LA(3); if ( (LA9_3==DOT) ) { int LA9_4 = input.LA(4); if ( (LA9_4==STAR) ) { alt9=1; } else if ( (LA9_4==IDENTIFIER) ) { alt9=2; } else { if (state.backtracking>0) {state.failed=true; return retval;} int nvaeMark = input.mark(); try { for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { input.consume(); } NoViableAltException nvae = new NoViableAltException("", 9, 4, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else { if (state.backtracking>0) {state.failed=true; return retval;} int nvaeMark = input.mark(); try { for (int nvaeConsume = 0; nvaeConsume < 3 - 1; nvaeConsume++) { input.consume(); } NoViableAltException nvae = new NoViableAltException("", 9, 3, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else { if (state.backtracking>0) {state.failed=true; return retval;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 9, 1, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else { if (state.backtracking>0) {state.failed=true; return retval;} NoViableAltException nvae = new NoViableAltException("", 9, 0, input); throw nvae; } switch (alt9) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:410:9: i1= 'import' (s1= 'static' )? id1= IDENTIFIER '.' st1= '*' sc1= ';' { i1=(Token)match(input,IMPORT,FOLLOW_IMPORT_in_importDeclaration344); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.importDescr.setImportToken(new JavaTokenDescr(ElementType.JAVA_IMPORT, (i1!=null?i1.getText():null), start((CommonToken)i1), stop((CommonToken)i1), line(i1), position(i1))); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:411:9: (s1= 'static' )? int alt5=2; int LA5_0 = input.LA(1); if ( (LA5_0==STATIC) ) { alt5=1; } switch (alt5) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:411:10: s1= 'static' { s1=(Token)match(input,STATIC,FOLLOW_STATIC_in_importDeclaration363); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.importDescr.setStaticToken(new JavaTokenDescr(ElementType.JAVA_STATIC, (s1!=null?s1.getText():null), start((CommonToken)s1), stop((CommonToken)s1), line(s1), position(s1))); } } break; } id1=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_importDeclaration391); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.importDescr.addPart(new IdentifierDescr((id1!=null?id1.getText():null), start((CommonToken)id1), stop((CommonToken)id1), line(id1), position(id1)));} match(input,DOT,FOLLOW_DOT_in_importDeclaration404); if (state.failed) return retval; st1=(Token)match(input,STAR,FOLLOW_STAR_in_importDeclaration416); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.importDescr.setStarToken(new JavaTokenDescr(ElementType.JAVA_STAR, (st1!=null?st1.getText():null), start((CommonToken)st1), stop((CommonToken)st1), line(st1), position(st1))); } sc1=(Token)match(input,SEMI,FOLLOW_SEMI_in_importDeclaration438); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.importDescr.setEndSemiColon(new JavaTokenDescr(ElementType.JAVA_SEMI_COLON, (sc1!=null?sc1.getText():null), start((CommonToken)sc1), stop((CommonToken)sc1), line(sc1), position(sc1))); } } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:417:9: i2= 'import' (s2= 'static' )? id2= IDENTIFIER ( '.' id3= IDENTIFIER )+ ( '.' st2= '*' )? sc2= ';' { i2=(Token)match(input,IMPORT,FOLLOW_IMPORT_in_importDeclaration460); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.importDescr.setImportToken(new JavaTokenDescr(ElementType.JAVA_IMPORT, (i2!=null?i2.getText():null), start((CommonToken)i2), stop((CommonToken)i2), line(i2), position(i2))); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:418:9: (s2= 'static' )? int alt6=2; int LA6_0 = input.LA(1); if ( (LA6_0==STATIC) ) { alt6=1; } switch (alt6) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:418:10: s2= 'static' { s2=(Token)match(input,STATIC,FOLLOW_STATIC_in_importDeclaration479); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.importDescr.setStaticToken(new JavaTokenDescr(ElementType.JAVA_STATIC, (s2!=null?s2.getText():null), start((CommonToken)s2), stop((CommonToken)s2), line(s2), position(s2))); } } break; } id2=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_importDeclaration507); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.importDescr.addPart(new IdentifierDescr((id2!=null?id2.getText():null), start((CommonToken)id2), stop((CommonToken)id2), line(id2), position(id2))); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:421:9: ( '.' id3= IDENTIFIER )+ int cnt7=0; loop7: while (true) { int alt7=2; int LA7_0 = input.LA(1); if ( (LA7_0==DOT) ) { int LA7_1 = input.LA(2); if ( (LA7_1==IDENTIFIER) ) { alt7=1; } } switch (alt7) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:421:10: '.' id3= IDENTIFIER { match(input,DOT,FOLLOW_DOT_in_importDeclaration525); if (state.failed) return retval; id3=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_importDeclaration529); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.importDescr.addPart(new IdentifierDescr((id3!=null?id3.getText():null), start((CommonToken)id3), stop((CommonToken)id3), line(id3), position(id3))); } } break; default : if ( cnt7 >= 1 ) break loop7; if (state.backtracking>0) {state.failed=true; return retval;} EarlyExitException eee = new EarlyExitException(7, input); throw eee; } cnt7++; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:423:9: ( '.' st2= '*' )? int alt8=2; int LA8_0 = input.LA(1); if ( (LA8_0==DOT) ) { alt8=1; } switch (alt8) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:423:10: '.' st2= '*' { match(input,DOT,FOLLOW_DOT_in_importDeclaration553); if (state.failed) return retval; st2=(Token)match(input,STAR,FOLLOW_STAR_in_importDeclaration557); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.importDescr.setStarToken(new JavaTokenDescr(ElementType.JAVA_STAR, (st2!=null?st2.getText():null), start((CommonToken)st2), stop((CommonToken)st2), line(st2), position(st2))); } } break; } sc2=(Token)match(input,SEMI,FOLLOW_SEMI_in_importDeclaration585); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.importDescr.setEndSemiColon(new JavaTokenDescr(ElementType.JAVA_SEMI_COLON, (sc2!=null?sc2.getText():null), start((CommonToken)sc2), stop((CommonToken)sc2), line(sc2), position(sc2))); } } break; } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { retval.importDescr = popImport(); if (retval.importDescr != null) { updateOnAfter(retval.importDescr, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); processImport(retval.importDescr); log("End of import declaration."); } else { log("An ImportDescr is expected"); } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 3, importDeclaration_StartIndex); } } return retval; } // $ANTLR end "importDeclaration" // $ANTLR start "qualifiedImportName" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:428:1: qualifiedImportName : IDENTIFIER ( '.' IDENTIFIER )* ; public final void qualifiedImportName() throws RecognitionException { int qualifiedImportName_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 4) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:429:5: ( IDENTIFIER ( '.' IDENTIFIER )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:429:9: IDENTIFIER ( '.' IDENTIFIER )* { match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_qualifiedImportName615); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:430:9: ( '.' IDENTIFIER )* loop10: while (true) { int alt10=2; int LA10_0 = input.LA(1); if ( (LA10_0==DOT) ) { alt10=1; } switch (alt10) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:430:10: '.' IDENTIFIER { match(input,DOT,FOLLOW_DOT_in_qualifiedImportName626); if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_qualifiedImportName628); if (state.failed) return; } break; default : break loop10; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 4, qualifiedImportName_StartIndex); } } } // $ANTLR end "qualifiedImportName" // $ANTLR start "typeDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:434:1: typeDeclaration : ( classOrInterfaceDeclaration | ';' ); public final void typeDeclaration() throws RecognitionException { int typeDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 5) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:435:5: ( classOrInterfaceDeclaration | ';' ) int alt11=2; int LA11_0 = input.LA(1); if ( (LA11_0==ABSTRACT||LA11_0==BOOLEAN||LA11_0==BYTE||LA11_0==CHAR||LA11_0==CLASS||LA11_0==DOUBLE||LA11_0==ENUM||LA11_0==FINAL||LA11_0==FLOAT||LA11_0==IDENTIFIER||(LA11_0 >= INT && LA11_0 <= INTERFACE)||LA11_0==LONG||LA11_0==LT||(LA11_0 >= MONKEYS_AT && LA11_0 <= NATIVE)||(LA11_0 >= PRIVATE && LA11_0 <= PUBLIC)||LA11_0==SHORT||(LA11_0 >= STATIC && LA11_0 <= STRICTFP)||LA11_0==SYNCHRONIZED||LA11_0==TRANSIENT||(LA11_0 >= VOID && LA11_0 <= VOLATILE)) ) { alt11=1; } else if ( (LA11_0==SEMI) ) { 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/kie/workbench/common/services/datamodeller/parser/Java.g:435:9: classOrInterfaceDeclaration { pushFollow(FOLLOW_classOrInterfaceDeclaration_in_typeDeclaration659); classOrInterfaceDeclaration(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:436:9: ';' { match(input,SEMI,FOLLOW_SEMI_in_typeDeclaration669); if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 5, typeDeclaration_StartIndex); } } } // $ANTLR end "typeDeclaration" public static class classOrInterfaceDeclaration_return extends ParserRuleReturnScope { }; // $ANTLR start "classOrInterfaceDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:439:1: classOrInterfaceDeclaration : ( classDeclaration | interfaceDeclaration ); public final JavaParser.classOrInterfaceDeclaration_return classOrInterfaceDeclaration() throws RecognitionException { JavaParser.classOrInterfaceDeclaration_return retval = new JavaParser.classOrInterfaceDeclaration_return(); retval.start = input.LT(1); int classOrInterfaceDeclaration_StartIndex = input.index(); ParserRuleReturnScope classDeclaration1 =null; try { if ( state.backtracking>0 && alreadyParsedRule(input, 6) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:440:5: ( classDeclaration | interfaceDeclaration ) int alt12=2; switch ( input.LA(1) ) { case MONKEYS_AT: { int LA12_1 = input.LA(2); if ( (synpred12_Java()) ) { alt12=1; } else if ( (true) ) { alt12=2; } } break; case PUBLIC: { int LA12_2 = input.LA(2); if ( (synpred12_Java()) ) { alt12=1; } else if ( (true) ) { alt12=2; } } break; case PROTECTED: { int LA12_3 = input.LA(2); if ( (synpred12_Java()) ) { alt12=1; } else if ( (true) ) { alt12=2; } } break; case PRIVATE: { int LA12_4 = input.LA(2); if ( (synpred12_Java()) ) { alt12=1; } else if ( (true) ) { alt12=2; } } break; case STATIC: { int LA12_5 = input.LA(2); if ( (synpred12_Java()) ) { alt12=1; } else if ( (true) ) { alt12=2; } } break; case ABSTRACT: { int LA12_6 = input.LA(2); if ( (synpred12_Java()) ) { alt12=1; } else if ( (true) ) { alt12=2; } } break; case FINAL: { int LA12_7 = input.LA(2); if ( (synpred12_Java()) ) { alt12=1; } else if ( (true) ) { alt12=2; } } break; case NATIVE: { int LA12_8 = input.LA(2); if ( (synpred12_Java()) ) { alt12=1; } else if ( (true) ) { alt12=2; } } break; case SYNCHRONIZED: { int LA12_9 = input.LA(2); if ( (synpred12_Java()) ) { alt12=1; } else if ( (true) ) { alt12=2; } } break; case TRANSIENT: { int LA12_10 = input.LA(2); if ( (synpred12_Java()) ) { alt12=1; } else if ( (true) ) { alt12=2; } } break; case VOLATILE: { int LA12_11 = input.LA(2); if ( (synpred12_Java()) ) { alt12=1; } else if ( (true) ) { alt12=2; } } break; case STRICTFP: { int LA12_12 = input.LA(2); if ( (synpred12_Java()) ) { alt12=1; } else if ( (true) ) { alt12=2; } } break; case CLASS: case ENUM: { alt12=1; } break; case INTERFACE: { alt12=2; } break; default: if (state.backtracking>0) {state.failed=true; return retval;} NoViableAltException nvae = new NoViableAltException("", 12, 0, input); throw nvae; } switch (alt12) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:440:10: classDeclaration { if ( state.backtracking==0 ) { if (!isBacktracking()) { increaseClassLevel(); if (isDeclaringMainClass()) { ClassDescr classDescr = new ClassDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); processClass(classDescr); } } } pushFollow(FOLLOW_classDeclaration_in_classOrInterfaceDeclaration692); classDeclaration1=classDeclaration(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { if (isDeclaringMainClass()) { ClassDescr classDescr = popClass(); updateOnAfter(classDescr, (classDeclaration1!=null?input.toString(classDeclaration1.start,classDeclaration1.stop):null), (CommonToken)(classDeclaration1!=null?(classDeclaration1.start):null), (CommonToken)(classDeclaration1!=null?(classDeclaration1.stop):null)); } decreaseClassLevel(); } } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:455:9: interfaceDeclaration { pushFollow(FOLLOW_interfaceDeclaration_in_classOrInterfaceDeclaration704); interfaceDeclaration(); state._fsp--; if (state.failed) return retval; } break; } retval.stop = input.LT(-1); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 6, classOrInterfaceDeclaration_StartIndex); } } return retval; } // $ANTLR end "classOrInterfaceDeclaration" public static class modifiers_return extends ParserRuleReturnScope { }; // $ANTLR start "modifiers" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:459:1: modifiers : (a= annotation |s= 'public' |s= 'protected' |s= 'private' |s= 'static' |s= 'abstract' |s= 'final' |s= 'native' |s= 'synchronized' |s= 'transient' |s= 'volatile' |s= 'strictfp' )* ; public final JavaParser.modifiers_return modifiers() throws RecognitionException { JavaParser.modifiers_return retval = new JavaParser.modifiers_return(); retval.start = input.LT(1); int modifiers_StartIndex = input.index(); Token s=null; ParserRuleReturnScope a =null; ModifierListDescr modifiers = null; if (!isBacktracking()) { log("Start modifier list declaration."); modifiers = new ModifierListDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); context.push(modifiers); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 7) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:478:5: ( (a= annotation |s= 'public' |s= 'protected' |s= 'private' |s= 'static' |s= 'abstract' |s= 'final' |s= 'native' |s= 'synchronized' |s= 'transient' |s= 'volatile' |s= 'strictfp' )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:479:5: (a= annotation |s= 'public' |s= 'protected' |s= 'private' |s= 'static' |s= 'abstract' |s= 'final' |s= 'native' |s= 'synchronized' |s= 'transient' |s= 'volatile' |s= 'strictfp' )* { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:479:5: (a= annotation |s= 'public' |s= 'protected' |s= 'private' |s= 'static' |s= 'abstract' |s= 'final' |s= 'native' |s= 'synchronized' |s= 'transient' |s= 'volatile' |s= 'strictfp' )* loop13: while (true) { int alt13=13; switch ( input.LA(1) ) { case MONKEYS_AT: { int LA13_2 = input.LA(2); if ( (LA13_2==IDENTIFIER) ) { alt13=1; } } break; case PUBLIC: { alt13=2; } break; case PROTECTED: { alt13=3; } break; case PRIVATE: { alt13=4; } break; case STATIC: { alt13=5; } break; case ABSTRACT: { alt13=6; } break; case FINAL: { alt13=7; } break; case NATIVE: { alt13=8; } break; case SYNCHRONIZED: { alt13=9; } break; case TRANSIENT: { alt13=10; } break; case VOLATILE: { alt13=11; } break; case STRICTFP: { alt13=12; } break; } switch (alt13) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:479:9: a= annotation { pushFollow(FOLLOW_annotation_in_modifiers750); a=annotation(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( (a!=null?((JavaParser.annotation_return)a).annotationDescr:null) ); } } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:480:9: s= 'public' { s=(Token)match(input,PUBLIC,FOLLOW_PUBLIC_in_modifiers771); if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( new ModifierDescr((s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), (s!=null?s.getLine():0), (s!=null?s.getCharPositionInLine():0), (s!=null?s.getText():null)) ); } } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:481:9: s= 'protected' { s=(Token)match(input,PROTECTED,FOLLOW_PROTECTED_in_modifiers794); if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( new ModifierDescr((s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), (s!=null?s.getLine():0), (s!=null?s.getCharPositionInLine():0), (s!=null?s.getText():null)) ); } } break; case 4 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:482:9: s= 'private' { s=(Token)match(input,PRIVATE,FOLLOW_PRIVATE_in_modifiers814); if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( new ModifierDescr((s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), (s!=null?s.getLine():0), (s!=null?s.getCharPositionInLine():0), (s!=null?s.getText():null)) ); } } break; case 5 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:483:9: s= 'static' { s=(Token)match(input,STATIC,FOLLOW_STATIC_in_modifiers836); if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( new ModifierDescr((s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), (s!=null?s.getLine():0), (s!=null?s.getCharPositionInLine():0), (s!=null?s.getText():null)) ); } } break; case 6 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:484:9: s= 'abstract' { s=(Token)match(input,ABSTRACT,FOLLOW_ABSTRACT_in_modifiers859); if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( new ModifierDescr((s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), (s!=null?s.getLine():0), (s!=null?s.getCharPositionInLine():0), (s!=null?s.getText():null)) ); } } break; case 7 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:485:9: s= 'final' { s=(Token)match(input,FINAL,FOLLOW_FINAL_in_modifiers880); if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( new ModifierDescr((s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), (s!=null?s.getLine():0), (s!=null?s.getCharPositionInLine():0), (s!=null?s.getText():null)) ); } } break; case 8 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:486:9: s= 'native' { s=(Token)match(input,NATIVE,FOLLOW_NATIVE_in_modifiers904); if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( new ModifierDescr((s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), (s!=null?s.getLine():0), (s!=null?s.getCharPositionInLine():0), (s!=null?s.getText():null)) ); } } break; case 9 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:487:9: s= 'synchronized' { s=(Token)match(input,SYNCHRONIZED,FOLLOW_SYNCHRONIZED_in_modifiers927); if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( new ModifierDescr((s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), (s!=null?s.getLine():0), (s!=null?s.getCharPositionInLine():0), (s!=null?s.getText():null)) ); } } break; case 10 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:488:9: s= 'transient' { s=(Token)match(input,TRANSIENT,FOLLOW_TRANSIENT_in_modifiers944); if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( new ModifierDescr((s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), (s!=null?s.getLine():0), (s!=null?s.getCharPositionInLine():0), (s!=null?s.getText():null)) ); } } break; case 11 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:489:9: s= 'volatile' { s=(Token)match(input,VOLATILE,FOLLOW_VOLATILE_in_modifiers964); if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( new ModifierDescr((s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), (s!=null?s.getLine():0), (s!=null?s.getCharPositionInLine():0), (s!=null?s.getText():null)) ); } } break; case 12 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:490:9: s= 'strictfp' { s=(Token)match(input,STRICTFP,FOLLOW_STRICTFP_in_modifiers985); if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( new ModifierDescr((s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), (s!=null?s.getLine():0), (s!=null?s.getCharPositionInLine():0), (s!=null?s.getText():null)) ); } } break; default : break loop13; } } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { modifiers = popModifierList(); if (modifiers != null && modifiers.size() > 0) { updateOnAfter(modifiers, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); processModifiers(modifiers); log("End of modifier list declaration."); } else { log("A ModifierListDescr is expected"); } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 7, modifiers_StartIndex); } } return retval; } // $ANTLR end "modifiers" public static class variableModifiers_return extends ParserRuleReturnScope { }; // $ANTLR start "variableModifiers" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:495:1: variableModifiers : (s= 'final' | annotation )* ; public final JavaParser.variableModifiers_return variableModifiers() throws RecognitionException { JavaParser.variableModifiers_return retval = new JavaParser.variableModifiers_return(); retval.start = input.LT(1); int variableModifiers_StartIndex = input.index(); Token s=null; ModifierListDescr modifiers = null; if (!isBacktracking()) { log("Start variable modifier list declaration."); modifiers = new ModifierListDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); context.push(modifiers); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 8) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:514:5: ( (s= 'final' | annotation )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:514:9: (s= 'final' | annotation )* { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:514:9: (s= 'final' | annotation )* loop14: while (true) { int alt14=3; int LA14_0 = input.LA(1); if ( (LA14_0==FINAL) ) { alt14=1; } else if ( (LA14_0==MONKEYS_AT) ) { alt14=2; } switch (alt14) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:514:13: s= 'final' { s=(Token)match(input,FINAL,FOLLOW_FINAL_in_variableModifiers1046); if (state.failed) return retval; if ( state.backtracking==0 ) { modifiers.add( new ModifierDescr((s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), line(s), position(s), (s!=null?s.getText():null)) ); } } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:515:13: annotation { pushFollow(FOLLOW_annotation_in_variableModifiers1067); annotation(); state._fsp--; if (state.failed) return retval; } break; default : break loop14; } } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { modifiers = popModifierList(); if (modifiers != null && modifiers.size() > 0) { updateOnAfter(modifiers, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); processModifiers(modifiers); log("End of variable modifiers list declaration."); } else { log("A ModifierListDescr is expected"); } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 8, variableModifiers_StartIndex); } } return retval; } // $ANTLR end "variableModifiers" public static class classDeclaration_return extends ParserRuleReturnScope { }; // $ANTLR start "classDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:520:1: classDeclaration : ( normalClassDeclaration | enumDeclaration ); public final JavaParser.classDeclaration_return classDeclaration() throws RecognitionException { JavaParser.classDeclaration_return retval = new JavaParser.classDeclaration_return(); retval.start = input.LT(1); int classDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 9) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:521:5: ( normalClassDeclaration | enumDeclaration ) int alt15=2; switch ( input.LA(1) ) { case MONKEYS_AT: { int LA15_1 = input.LA(2); if ( (synpred27_Java()) ) { alt15=1; } else if ( (true) ) { alt15=2; } } break; case PUBLIC: { int LA15_2 = input.LA(2); if ( (synpred27_Java()) ) { alt15=1; } else if ( (true) ) { alt15=2; } } break; case PROTECTED: { int LA15_3 = input.LA(2); if ( (synpred27_Java()) ) { alt15=1; } else if ( (true) ) { alt15=2; } } break; case PRIVATE: { int LA15_4 = input.LA(2); if ( (synpred27_Java()) ) { alt15=1; } else if ( (true) ) { alt15=2; } } break; case STATIC: { int LA15_5 = input.LA(2); if ( (synpred27_Java()) ) { alt15=1; } else if ( (true) ) { alt15=2; } } break; case ABSTRACT: { int LA15_6 = input.LA(2); if ( (synpred27_Java()) ) { alt15=1; } else if ( (true) ) { alt15=2; } } break; case FINAL: { int LA15_7 = input.LA(2); if ( (synpred27_Java()) ) { alt15=1; } else if ( (true) ) { alt15=2; } } break; case NATIVE: { int LA15_8 = input.LA(2); if ( (synpred27_Java()) ) { alt15=1; } else if ( (true) ) { alt15=2; } } break; case SYNCHRONIZED: { int LA15_9 = input.LA(2); if ( (synpred27_Java()) ) { alt15=1; } else if ( (true) ) { alt15=2; } } break; case TRANSIENT: { int LA15_10 = input.LA(2); if ( (synpred27_Java()) ) { alt15=1; } else if ( (true) ) { alt15=2; } } break; case VOLATILE: { int LA15_11 = input.LA(2); if ( (synpred27_Java()) ) { alt15=1; } else if ( (true) ) { alt15=2; } } break; case STRICTFP: { int LA15_12 = input.LA(2); if ( (synpred27_Java()) ) { alt15=1; } else if ( (true) ) { alt15=2; } } break; case CLASS: { alt15=1; } break; case ENUM: { alt15=2; } break; default: if (state.backtracking>0) {state.failed=true; return retval;} NoViableAltException nvae = new NoViableAltException("", 15, 0, input); throw nvae; } switch (alt15) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:521:9: normalClassDeclaration { pushFollow(FOLLOW_normalClassDeclaration_in_classDeclaration1103); normalClassDeclaration(); state._fsp--; if (state.failed) return retval; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:522:9: enumDeclaration { pushFollow(FOLLOW_enumDeclaration_in_classDeclaration1113); enumDeclaration(); state._fsp--; if (state.failed) return retval; } break; } retval.stop = input.LT(-1); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 9, classDeclaration_StartIndex); } } return retval; } // $ANTLR end "classDeclaration" // $ANTLR start "normalClassDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:525:1: normalClassDeclaration : modifiers c= 'class' id= IDENTIFIER ( typeParameters )? (e= 'extends' type )? (i= 'implements' typeList )? classBody ; public final void normalClassDeclaration() throws RecognitionException { int normalClassDeclaration_StartIndex = input.index(); Token c=null; Token id=null; Token e=null; Token i=null; ClassDescr classDescr = null; if (!isBacktracking()) { if (isDeclaringMainClass()) { classDescr = peekClass(); } } try { if ( state.backtracking>0 && alreadyParsedRule(input, 10) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:535:5: ( modifiers c= 'class' id= IDENTIFIER ( typeParameters )? (e= 'extends' type )? (i= 'implements' typeList )? classBody ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:535:9: modifiers c= 'class' id= IDENTIFIER ( typeParameters )? (e= 'extends' type )? (i= 'implements' typeList )? classBody { pushFollow(FOLLOW_modifiers_in_normalClassDeclaration1142); modifiers(); state._fsp--; if (state.failed) return; c=(Token)match(input,CLASS,FOLLOW_CLASS_in_normalClassDeclaration1146); if (state.failed) return; if ( state.backtracking==0 ) { if (classDescr != null) classDescr.setClassToken(new JavaTokenDescr(ElementType.JAVA_CLASS, (c!=null?c.getText():null), start((CommonToken)c), stop((CommonToken)c), line(c), position(c))); } id=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_normalClassDeclaration1174); if (state.failed) return; if ( state.backtracking==0 ) { if (classDescr != null) classDescr.setIdentifier(new IdentifierDescr((id!=null?id.getText():null), start((CommonToken)id), stop((CommonToken)id), line(id), position(id))); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:537:9: ( typeParameters )? int alt16=2; int LA16_0 = input.LA(1); if ( (LA16_0==LT) ) { alt16=1; } switch (alt16) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:537:10: typeParameters { pushFollow(FOLLOW_typeParameters_in_normalClassDeclaration1187); typeParameters(); state._fsp--; if (state.failed) return; } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:539:9: (e= 'extends' type )? int alt17=2; int LA17_0 = input.LA(1); if ( (LA17_0==EXTENDS) ) { alt17=1; } switch (alt17) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:539:11: e= 'extends' type { e=(Token)match(input,EXTENDS,FOLLOW_EXTENDS_in_normalClassDeclaration1212); if (state.failed) return; if ( state.backtracking==0 ) { if (classDescr != null) classDescr.setExtendsToken(new JavaTokenDescr(ElementType.JAVA_EXTENDS, (e!=null?e.getText():null), start((CommonToken)e), stop((CommonToken)e), line(e), position(e))); } if ( state.backtracking==0 ) { setDeclaringSuperClass(true); } pushFollow(FOLLOW_type_in_normalClassDeclaration1228); type(); state._fsp--; if (state.failed) return; if ( state.backtracking==0 ) { setDeclaringSuperClass(false); } } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:542:9: (i= 'implements' typeList )? int alt18=2; int LA18_0 = input.LA(1); if ( (LA18_0==IMPLEMENTS) ) { alt18=1; } switch (alt18) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:542:11: i= 'implements' typeList { i=(Token)match(input,IMPLEMENTS,FOLLOW_IMPLEMENTS_in_normalClassDeclaration1255); if (state.failed) return; if ( state.backtracking==0 ) { if (classDescr != null) classDescr.setImplementsToken(new JavaTokenDescr(ElementType.JAVA_IMPLEMENTS, (i!=null?i.getText():null), start((CommonToken)i), stop((CommonToken)i), line(i), position(i))); } pushFollow(FOLLOW_typeList_in_normalClassDeclaration1269); typeList(); state._fsp--; if (state.failed) return; } break; } pushFollow(FOLLOW_classBody_in_normalClassDeclaration1302); classBody(); state._fsp--; if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 10, normalClassDeclaration_StartIndex); } } } // $ANTLR end "normalClassDeclaration" // $ANTLR start "typeParameters" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:549:1: typeParameters : '<' typeParameter ( ',' typeParameter )* '>' ; public final void typeParameters() throws RecognitionException { int typeParameters_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 11) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:550:5: ( '<' typeParameter ( ',' typeParameter )* '>' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:550:9: '<' typeParameter ( ',' typeParameter )* '>' { match(input,LT,FOLLOW_LT_in_typeParameters1323); if (state.failed) return; pushFollow(FOLLOW_typeParameter_in_typeParameters1337); typeParameter(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:552:13: ( ',' typeParameter )* loop19: while (true) { int alt19=2; int LA19_0 = input.LA(1); if ( (LA19_0==COMMA) ) { alt19=1; } switch (alt19) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:552:14: ',' typeParameter { match(input,COMMA,FOLLOW_COMMA_in_typeParameters1352); if (state.failed) return; pushFollow(FOLLOW_typeParameter_in_typeParameters1354); typeParameter(); state._fsp--; if (state.failed) return; } break; default : break loop19; } } match(input,GT,FOLLOW_GT_in_typeParameters1379); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 11, typeParameters_StartIndex); } } } // $ANTLR end "typeParameters" // $ANTLR start "typeParameter" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:557:1: typeParameter : IDENTIFIER ( 'extends' typeBound )? ; public final void typeParameter() throws RecognitionException { int typeParameter_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 12) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:558:5: ( IDENTIFIER ( 'extends' typeBound )? ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:558:9: IDENTIFIER ( 'extends' typeBound )? { match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_typeParameter1399); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:559:9: ( 'extends' typeBound )? int alt20=2; int LA20_0 = input.LA(1); if ( (LA20_0==EXTENDS) ) { alt20=1; } switch (alt20) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:559:10: 'extends' typeBound { match(input,EXTENDS,FOLLOW_EXTENDS_in_typeParameter1410); if (state.failed) return; pushFollow(FOLLOW_typeBound_in_typeParameter1412); typeBound(); state._fsp--; if (state.failed) return; } break; } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 12, typeParameter_StartIndex); } } } // $ANTLR end "typeParameter" // $ANTLR start "typeBound" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:564:1: typeBound : type ( '&' type )* ; public final void typeBound() throws RecognitionException { int typeBound_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 13) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:565:5: ( type ( '&' type )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:565:9: type ( '&' type )* { pushFollow(FOLLOW_type_in_typeBound1444); type(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:566:9: ( '&' type )* loop21: while (true) { int alt21=2; int LA21_0 = input.LA(1); if ( (LA21_0==AMP) ) { alt21=1; } switch (alt21) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:566:10: '&' type { match(input,AMP,FOLLOW_AMP_in_typeBound1455); if (state.failed) return; pushFollow(FOLLOW_type_in_typeBound1457); type(); state._fsp--; if (state.failed) return; } break; default : break loop21; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 13, typeBound_StartIndex); } } } // $ANTLR end "typeBound" // $ANTLR start "enumDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:571:1: enumDeclaration : modifiers ( 'enum' ) IDENTIFIER ( 'implements' typeList )? enumBody ; public final void enumDeclaration() throws RecognitionException { int enumDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 14) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:572:5: ( modifiers ( 'enum' ) IDENTIFIER ( 'implements' typeList )? enumBody ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:572:9: modifiers ( 'enum' ) IDENTIFIER ( 'implements' typeList )? enumBody { pushFollow(FOLLOW_modifiers_in_enumDeclaration1489); modifiers(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:573:9: ( 'enum' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:573:10: 'enum' { match(input,ENUM,FOLLOW_ENUM_in_enumDeclaration1501); if (state.failed) return; } match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_enumDeclaration1522); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:576:9: ( 'implements' typeList )? int alt22=2; int LA22_0 = input.LA(1); if ( (LA22_0==IMPLEMENTS) ) { alt22=1; } switch (alt22) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:576:10: 'implements' typeList { match(input,IMPLEMENTS,FOLLOW_IMPLEMENTS_in_enumDeclaration1533); if (state.failed) return; pushFollow(FOLLOW_typeList_in_enumDeclaration1535); typeList(); state._fsp--; if (state.failed) return; } break; } pushFollow(FOLLOW_enumBody_in_enumDeclaration1556); enumBody(); state._fsp--; if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 14, enumDeclaration_StartIndex); } } } // $ANTLR end "enumDeclaration" // $ANTLR start "enumBody" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:582:1: enumBody : '{' ( enumConstants )? ( ',' )? ( enumBodyDeclarations )? '}' ; public final void enumBody() throws RecognitionException { int enumBody_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 15) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:583:5: ( '{' ( enumConstants )? ( ',' )? ( enumBodyDeclarations )? '}' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:583:9: '{' ( enumConstants )? ( ',' )? ( enumBodyDeclarations )? '}' { match(input,LBRACE,FOLLOW_LBRACE_in_enumBody1581); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:584:9: ( enumConstants )? int alt23=2; int LA23_0 = input.LA(1); if ( (LA23_0==IDENTIFIER||LA23_0==MONKEYS_AT) ) { alt23=1; } switch (alt23) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:584:10: enumConstants { pushFollow(FOLLOW_enumConstants_in_enumBody1592); enumConstants(); state._fsp--; if (state.failed) return; } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:586:9: ( ',' )? int alt24=2; int LA24_0 = input.LA(1); if ( (LA24_0==COMMA) ) { alt24=1; } switch (alt24) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:586:9: ',' { match(input,COMMA,FOLLOW_COMMA_in_enumBody1614); if (state.failed) return; } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:587:9: ( enumBodyDeclarations )? int alt25=2; int LA25_0 = input.LA(1); if ( (LA25_0==SEMI) ) { alt25=1; } switch (alt25) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:587:10: enumBodyDeclarations { pushFollow(FOLLOW_enumBodyDeclarations_in_enumBody1627); enumBodyDeclarations(); state._fsp--; if (state.failed) return; } break; } match(input,RBRACE,FOLLOW_RBRACE_in_enumBody1649); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 15, enumBody_StartIndex); } } } // $ANTLR end "enumBody" // $ANTLR start "enumConstants" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:592:1: enumConstants : enumConstant ( ',' enumConstant )* ; public final void enumConstants() throws RecognitionException { int enumConstants_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 16) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:593:5: ( enumConstant ( ',' enumConstant )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:593:9: enumConstant ( ',' enumConstant )* { pushFollow(FOLLOW_enumConstant_in_enumConstants1669); enumConstant(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:594:9: ( ',' enumConstant )* loop26: while (true) { int alt26=2; int LA26_0 = input.LA(1); if ( (LA26_0==COMMA) ) { int LA26_1 = input.LA(2); if ( (LA26_1==IDENTIFIER||LA26_1==MONKEYS_AT) ) { alt26=1; } } switch (alt26) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:594:10: ',' enumConstant { match(input,COMMA,FOLLOW_COMMA_in_enumConstants1680); if (state.failed) return; pushFollow(FOLLOW_enumConstant_in_enumConstants1682); enumConstant(); state._fsp--; if (state.failed) return; } break; default : break loop26; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 16, enumConstants_StartIndex); } } } // $ANTLR end "enumConstants" // $ANTLR start "enumConstant" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:602:1: enumConstant : ( annotations )? IDENTIFIER ( arguments )? ( classBody )? ; public final void enumConstant() throws RecognitionException { int enumConstant_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 17) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:603:5: ( ( annotations )? IDENTIFIER ( arguments )? ( classBody )? ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:603:9: ( annotations )? IDENTIFIER ( arguments )? ( classBody )? { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:603:9: ( annotations )? int alt27=2; int LA27_0 = input.LA(1); if ( (LA27_0==MONKEYS_AT) ) { alt27=1; } switch (alt27) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:603:10: annotations { pushFollow(FOLLOW_annotations_in_enumConstant1716); annotations(); state._fsp--; if (state.failed) return; } break; } match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_enumConstant1737); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:606:9: ( arguments )? int alt28=2; int LA28_0 = input.LA(1); if ( (LA28_0==LPAREN) ) { alt28=1; } switch (alt28) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:606:10: arguments { pushFollow(FOLLOW_arguments_in_enumConstant1748); arguments(); state._fsp--; if (state.failed) return; } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:608:9: ( classBody )? int alt29=2; int LA29_0 = input.LA(1); if ( (LA29_0==LBRACE) ) { alt29=1; } switch (alt29) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:608:10: classBody { pushFollow(FOLLOW_classBody_in_enumConstant1770); classBody(); state._fsp--; if (state.failed) return; } break; } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 17, enumConstant_StartIndex); } } } // $ANTLR end "enumConstant" // $ANTLR start "enumBodyDeclarations" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:614:1: enumBodyDeclarations : ';' ( classBodyDeclaration )* ; public final void enumBodyDeclarations() throws RecognitionException { int enumBodyDeclarations_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 18) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:615:5: ( ';' ( classBodyDeclaration )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:615:9: ';' ( classBodyDeclaration )* { match(input,SEMI,FOLLOW_SEMI_in_enumBodyDeclarations1811); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:616:9: ( classBodyDeclaration )* loop30: while (true) { int alt30=2; int LA30_0 = input.LA(1); if ( (LA30_0==ABSTRACT||LA30_0==BOOLEAN||LA30_0==BYTE||LA30_0==CHAR||LA30_0==CLASS||LA30_0==DOUBLE||LA30_0==ENUM||LA30_0==FINAL||LA30_0==FLOAT||LA30_0==IDENTIFIER||(LA30_0 >= INT && LA30_0 <= INTERFACE)||LA30_0==LBRACE||LA30_0==LONG||LA30_0==LT||(LA30_0 >= MONKEYS_AT && LA30_0 <= NATIVE)||(LA30_0 >= PRIVATE && LA30_0 <= PUBLIC)||(LA30_0 >= SEMI && LA30_0 <= SHORT)||(LA30_0 >= STATIC && LA30_0 <= STRICTFP)||LA30_0==SYNCHRONIZED||LA30_0==TRANSIENT||(LA30_0 >= VOID && LA30_0 <= VOLATILE)) ) { alt30=1; } switch (alt30) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:616:10: classBodyDeclaration { pushFollow(FOLLOW_classBodyDeclaration_in_enumBodyDeclarations1823); classBodyDeclaration(); state._fsp--; if (state.failed) return; } break; default : break loop30; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 18, enumBodyDeclarations_StartIndex); } } } // $ANTLR end "enumBodyDeclarations" // $ANTLR start "interfaceDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:620:1: interfaceDeclaration : ( normalInterfaceDeclaration | annotationTypeDeclaration ); public final void interfaceDeclaration() throws RecognitionException { int interfaceDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 19) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:621:5: ( normalInterfaceDeclaration | annotationTypeDeclaration ) int alt31=2; switch ( input.LA(1) ) { case MONKEYS_AT: { int LA31_1 = input.LA(2); if ( (synpred43_Java()) ) { alt31=1; } else if ( (true) ) { alt31=2; } } break; case PUBLIC: { int LA31_2 = input.LA(2); if ( (synpred43_Java()) ) { alt31=1; } else if ( (true) ) { alt31=2; } } break; case PROTECTED: { int LA31_3 = input.LA(2); if ( (synpred43_Java()) ) { alt31=1; } else if ( (true) ) { alt31=2; } } break; case PRIVATE: { int LA31_4 = input.LA(2); if ( (synpred43_Java()) ) { alt31=1; } else if ( (true) ) { alt31=2; } } break; case STATIC: { int LA31_5 = input.LA(2); if ( (synpred43_Java()) ) { alt31=1; } else if ( (true) ) { alt31=2; } } break; case ABSTRACT: { int LA31_6 = input.LA(2); if ( (synpred43_Java()) ) { alt31=1; } else if ( (true) ) { alt31=2; } } break; case FINAL: { int LA31_7 = input.LA(2); if ( (synpred43_Java()) ) { alt31=1; } else if ( (true) ) { alt31=2; } } break; case NATIVE: { int LA31_8 = input.LA(2); if ( (synpred43_Java()) ) { alt31=1; } else if ( (true) ) { alt31=2; } } break; case SYNCHRONIZED: { int LA31_9 = input.LA(2); if ( (synpred43_Java()) ) { alt31=1; } else if ( (true) ) { alt31=2; } } break; case TRANSIENT: { int LA31_10 = input.LA(2); if ( (synpred43_Java()) ) { alt31=1; } else if ( (true) ) { alt31=2; } } break; case VOLATILE: { int LA31_11 = input.LA(2); if ( (synpred43_Java()) ) { alt31=1; } else if ( (true) ) { alt31=2; } } break; case STRICTFP: { int LA31_12 = input.LA(2); if ( (synpred43_Java()) ) { alt31=1; } else if ( (true) ) { alt31=2; } } break; case INTERFACE: { alt31=1; } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 31, 0, input); throw nvae; } switch (alt31) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:621:9: normalInterfaceDeclaration { pushFollow(FOLLOW_normalInterfaceDeclaration_in_interfaceDeclaration1854); normalInterfaceDeclaration(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:622:9: annotationTypeDeclaration { pushFollow(FOLLOW_annotationTypeDeclaration_in_interfaceDeclaration1864); annotationTypeDeclaration(); state._fsp--; if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 19, interfaceDeclaration_StartIndex); } } } // $ANTLR end "interfaceDeclaration" // $ANTLR start "normalInterfaceDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:625:1: normalInterfaceDeclaration : modifiers 'interface' IDENTIFIER ( typeParameters )? ( 'extends' typeList )? interfaceBody ; public final void normalInterfaceDeclaration() throws RecognitionException { int normalInterfaceDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 20) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:626:5: ( modifiers 'interface' IDENTIFIER ( typeParameters )? ( 'extends' typeList )? interfaceBody ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:626:9: modifiers 'interface' IDENTIFIER ( typeParameters )? ( 'extends' typeList )? interfaceBody { pushFollow(FOLLOW_modifiers_in_normalInterfaceDeclaration1888); modifiers(); state._fsp--; if (state.failed) return; match(input,INTERFACE,FOLLOW_INTERFACE_in_normalInterfaceDeclaration1890); if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_normalInterfaceDeclaration1892); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:627:9: ( typeParameters )? int alt32=2; int LA32_0 = input.LA(1); if ( (LA32_0==LT) ) { alt32=1; } switch (alt32) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:627:10: typeParameters { pushFollow(FOLLOW_typeParameters_in_normalInterfaceDeclaration1903); typeParameters(); state._fsp--; if (state.failed) return; } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:629:9: ( 'extends' typeList )? int alt33=2; int LA33_0 = input.LA(1); if ( (LA33_0==EXTENDS) ) { alt33=1; } switch (alt33) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:629:10: 'extends' typeList { match(input,EXTENDS,FOLLOW_EXTENDS_in_normalInterfaceDeclaration1925); if (state.failed) return; pushFollow(FOLLOW_typeList_in_normalInterfaceDeclaration1927); typeList(); state._fsp--; if (state.failed) return; } break; } pushFollow(FOLLOW_interfaceBody_in_normalInterfaceDeclaration1948); interfaceBody(); state._fsp--; if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 20, normalInterfaceDeclaration_StartIndex); } } } // $ANTLR end "normalInterfaceDeclaration" // $ANTLR start "typeList" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:634:1: typeList : type ( ',' type )* ; public final void typeList() throws RecognitionException { int typeList_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 21) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:635:5: ( type ( ',' type )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:635:9: type ( ',' type )* { pushFollow(FOLLOW_type_in_typeList1968); type(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:636:9: ( ',' type )* loop34: while (true) { int alt34=2; int LA34_0 = input.LA(1); if ( (LA34_0==COMMA) ) { alt34=1; } switch (alt34) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:636:10: ',' type { match(input,COMMA,FOLLOW_COMMA_in_typeList1979); if (state.failed) return; pushFollow(FOLLOW_type_in_typeList1981); type(); state._fsp--; if (state.failed) return; } break; default : break loop34; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 21, typeList_StartIndex); } } } // $ANTLR end "typeList" // $ANTLR start "classBody" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:640:1: classBody : lb= '{' ( classBodyDeclaration )* rb= '}' ; public final void classBody() throws RecognitionException { int classBody_StartIndex = input.index(); Token lb=null; Token rb=null; try { if ( state.backtracking>0 && alreadyParsedRule(input, 22) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:641:5: (lb= '{' ( classBodyDeclaration )* rb= '}' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:641:9: lb= '{' ( classBodyDeclaration )* rb= '}' { lb=(Token)match(input,LBRACE,FOLLOW_LBRACE_in_classBody2013); if (state.failed) return; if ( state.backtracking==0 ) { processClassBodyStart(new JavaTokenDescr(ElementType.JAVA_LBRACE, (lb!=null?lb.getText():null), start((CommonToken)lb), stop((CommonToken)lb), line(lb), position(lb))); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:642:9: ( classBodyDeclaration )* loop35: while (true) { int alt35=2; int LA35_0 = input.LA(1); if ( (LA35_0==ABSTRACT||LA35_0==BOOLEAN||LA35_0==BYTE||LA35_0==CHAR||LA35_0==CLASS||LA35_0==DOUBLE||LA35_0==ENUM||LA35_0==FINAL||LA35_0==FLOAT||LA35_0==IDENTIFIER||(LA35_0 >= INT && LA35_0 <= INTERFACE)||LA35_0==LBRACE||LA35_0==LONG||LA35_0==LT||(LA35_0 >= MONKEYS_AT && LA35_0 <= NATIVE)||(LA35_0 >= PRIVATE && LA35_0 <= PUBLIC)||(LA35_0 >= SEMI && LA35_0 <= SHORT)||(LA35_0 >= STATIC && LA35_0 <= STRICTFP)||LA35_0==SYNCHRONIZED||LA35_0==TRANSIENT||(LA35_0 >= VOID && LA35_0 <= VOLATILE)) ) { alt35=1; } switch (alt35) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:642:10: classBodyDeclaration { pushFollow(FOLLOW_classBodyDeclaration_in_classBody2026); classBodyDeclaration(); state._fsp--; if (state.failed) return; } break; default : break loop35; } } rb=(Token)match(input,RBRACE,FOLLOW_RBRACE_in_classBody2050); if (state.failed) return; if ( state.backtracking==0 ) { processClassBodyStop(new JavaTokenDescr(ElementType.JAVA_RBRACE, (rb!=null?rb.getText():null), start((CommonToken)rb), stop((CommonToken)rb), line(rb), position(rb))); } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 22, classBody_StartIndex); } } } // $ANTLR end "classBody" // $ANTLR start "interfaceBody" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:647:1: interfaceBody : '{' ( interfaceBodyDeclaration )* '}' ; public final void interfaceBody() throws RecognitionException { int interfaceBody_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 23) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:648:5: ( '{' ( interfaceBodyDeclaration )* '}' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:648:9: '{' ( interfaceBodyDeclaration )* '}' { match(input,LBRACE,FOLLOW_LBRACE_in_interfaceBody2072); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:649:9: ( interfaceBodyDeclaration )* loop36: while (true) { int alt36=2; int LA36_0 = input.LA(1); if ( (LA36_0==ABSTRACT||LA36_0==BOOLEAN||LA36_0==BYTE||LA36_0==CHAR||LA36_0==CLASS||LA36_0==DOUBLE||LA36_0==ENUM||LA36_0==FINAL||LA36_0==FLOAT||LA36_0==IDENTIFIER||(LA36_0 >= INT && LA36_0 <= INTERFACE)||LA36_0==LONG||LA36_0==LT||(LA36_0 >= MONKEYS_AT && LA36_0 <= NATIVE)||(LA36_0 >= PRIVATE && LA36_0 <= PUBLIC)||(LA36_0 >= SEMI && LA36_0 <= SHORT)||(LA36_0 >= STATIC && LA36_0 <= STRICTFP)||LA36_0==SYNCHRONIZED||LA36_0==TRANSIENT||(LA36_0 >= VOID && LA36_0 <= VOLATILE)) ) { alt36=1; } switch (alt36) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:649:10: interfaceBodyDeclaration { pushFollow(FOLLOW_interfaceBodyDeclaration_in_interfaceBody2084); interfaceBodyDeclaration(); state._fsp--; if (state.failed) return; } break; default : break loop36; } } match(input,RBRACE,FOLLOW_RBRACE_in_interfaceBody2106); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 23, interfaceBody_StartIndex); } } } // $ANTLR end "interfaceBody" // $ANTLR start "classBodyDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:654:1: classBodyDeclaration : ( ';' | ( 'static' )? block | memberDecl ); public final void classBodyDeclaration() throws RecognitionException { int classBodyDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 24) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:655:5: ( ';' | ( 'static' )? block | memberDecl ) int alt38=3; switch ( input.LA(1) ) { case SEMI: { alt38=1; } break; case STATIC: { int LA38_2 = input.LA(2); if ( (LA38_2==LBRACE) ) { alt38=2; } else if ( (LA38_2==ABSTRACT||LA38_2==BOOLEAN||LA38_2==BYTE||LA38_2==CHAR||LA38_2==CLASS||LA38_2==DOUBLE||LA38_2==ENUM||LA38_2==FINAL||LA38_2==FLOAT||LA38_2==IDENTIFIER||(LA38_2 >= INT && LA38_2 <= INTERFACE)||LA38_2==LONG||LA38_2==LT||(LA38_2 >= MONKEYS_AT && LA38_2 <= NATIVE)||(LA38_2 >= PRIVATE && LA38_2 <= PUBLIC)||LA38_2==SHORT||(LA38_2 >= STATIC && LA38_2 <= STRICTFP)||LA38_2==SYNCHRONIZED||LA38_2==TRANSIENT||(LA38_2 >= VOID && LA38_2 <= VOLATILE)) ) { alt38=3; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 38, 2, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case LBRACE: { alt38=2; } break; case ABSTRACT: case BOOLEAN: case BYTE: case CHAR: case CLASS: case DOUBLE: case ENUM: case FINAL: case FLOAT: case IDENTIFIER: case INT: case INTERFACE: case LONG: case LT: case MONKEYS_AT: case NATIVE: case PRIVATE: case PROTECTED: case PUBLIC: case SHORT: case STRICTFP: case SYNCHRONIZED: case TRANSIENT: case VOID: case VOLATILE: { alt38=3; } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 38, 0, input); throw nvae; } switch (alt38) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:655:9: ';' { match(input,SEMI,FOLLOW_SEMI_in_classBodyDeclaration2126); if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:656:9: ( 'static' )? block { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:656:9: ( 'static' )? int alt37=2; int LA37_0 = input.LA(1); if ( (LA37_0==STATIC) ) { alt37=1; } switch (alt37) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:656:10: 'static' { match(input,STATIC,FOLLOW_STATIC_in_classBodyDeclaration2137); if (state.failed) return; } break; } pushFollow(FOLLOW_block_in_classBodyDeclaration2159); block(); state._fsp--; if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:659:9: memberDecl { pushFollow(FOLLOW_memberDecl_in_classBodyDeclaration2169); memberDecl(); state._fsp--; if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 24, classBodyDeclaration_StartIndex); } } } // $ANTLR end "classBodyDeclaration" // $ANTLR start "memberDecl" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:662:1: memberDecl : ( fieldDeclaration | methodDeclaration | classDeclaration | interfaceDeclaration ); public final void memberDecl() throws RecognitionException { int memberDecl_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 25) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:663:5: ( fieldDeclaration | methodDeclaration | classDeclaration | interfaceDeclaration ) int alt39=4; switch ( input.LA(1) ) { case MONKEYS_AT: { int LA39_1 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else if ( (synpred54_Java()) ) { alt39=3; } else if ( (true) ) { alt39=4; } } break; case PUBLIC: { int LA39_2 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else if ( (synpred54_Java()) ) { alt39=3; } else if ( (true) ) { alt39=4; } } break; case PROTECTED: { int LA39_3 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else if ( (synpred54_Java()) ) { alt39=3; } else if ( (true) ) { alt39=4; } } break; case PRIVATE: { int LA39_4 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else if ( (synpred54_Java()) ) { alt39=3; } else if ( (true) ) { alt39=4; } } break; case STATIC: { int LA39_5 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else if ( (synpred54_Java()) ) { alt39=3; } else if ( (true) ) { alt39=4; } } break; case ABSTRACT: { int LA39_6 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else if ( (synpred54_Java()) ) { alt39=3; } else if ( (true) ) { alt39=4; } } break; case FINAL: { int LA39_7 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else if ( (synpred54_Java()) ) { alt39=3; } else if ( (true) ) { alt39=4; } } break; case NATIVE: { int LA39_8 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else if ( (synpred54_Java()) ) { alt39=3; } else if ( (true) ) { alt39=4; } } break; case SYNCHRONIZED: { int LA39_9 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else if ( (synpred54_Java()) ) { alt39=3; } else if ( (true) ) { alt39=4; } } break; case TRANSIENT: { int LA39_10 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else if ( (synpred54_Java()) ) { alt39=3; } else if ( (true) ) { alt39=4; } } break; case VOLATILE: { int LA39_11 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else if ( (synpred54_Java()) ) { alt39=3; } else if ( (true) ) { alt39=4; } } break; case STRICTFP: { int LA39_12 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else if ( (synpred54_Java()) ) { alt39=3; } else if ( (true) ) { alt39=4; } } break; case IDENTIFIER: { int LA39_13 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 39, 13, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: { int LA39_14 = input.LA(2); if ( (synpred52_Java()) ) { alt39=1; } else if ( (synpred53_Java()) ) { alt39=2; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 39, 14, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case LT: case VOID: { alt39=2; } break; case CLASS: case ENUM: { alt39=3; } break; case INTERFACE: { alt39=4; } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 39, 0, input); throw nvae; } switch (alt39) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:663:10: fieldDeclaration { pushFollow(FOLLOW_fieldDeclaration_in_memberDecl2189); fieldDeclaration(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:664:10: methodDeclaration { pushFollow(FOLLOW_methodDeclaration_in_memberDecl2200); methodDeclaration(); state._fsp--; if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:665:10: classDeclaration { if ( state.backtracking==0 ) { if (!isBacktracking()) increaseClassLevel(); } pushFollow(FOLLOW_classDeclaration_in_memberDecl2213); classDeclaration(); state._fsp--; if (state.failed) return; if ( state.backtracking==0 ) { decreaseClassLevel(); } } break; case 4 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:666:10: interfaceDeclaration { pushFollow(FOLLOW_interfaceDeclaration_in_memberDecl2226); interfaceDeclaration(); state._fsp--; if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 25, memberDecl_StartIndex); } } } // $ANTLR end "memberDecl" public static class methodDeclaration_return extends ParserRuleReturnScope { public MethodDescr method; }; // $ANTLR start "methodDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:670:1: methodDeclaration returns [ MethodDescr method ] : ( modifiers ( typeParameters )? i1= IDENTIFIER formalParameters ( 'throws' qualifiedNameList )? '{' ( explicitConstructorInvocation )? ( blockStatement )* '}' | modifiers ( typeParameters )? ( type |v= 'void' ) i2= IDENTIFIER formalParameters (p1= '[' p2= ']' )* ( 'throws' qualifiedNameList )? ( block | ';' ) ); public final JavaParser.methodDeclaration_return methodDeclaration() throws RecognitionException { JavaParser.methodDeclaration_return retval = new JavaParser.methodDeclaration_return(); retval.start = input.LT(1); int methodDeclaration_StartIndex = input.index(); Token i1=null; Token v=null; Token i2=null; Token p1=null; Token p2=null; retval.method = null; if (!isBacktracking()) { log("Start method declaration."); setDeclaringMethodReturnType(false); retval.method = new MethodDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); context.push(retval.method); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 26) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:688:5: ( modifiers ( typeParameters )? i1= IDENTIFIER formalParameters ( 'throws' qualifiedNameList )? '{' ( explicitConstructorInvocation )? ( blockStatement )* '}' | modifiers ( typeParameters )? ( type |v= 'void' ) i2= IDENTIFIER formalParameters (p1= '[' p2= ']' )* ( 'throws' qualifiedNameList )? ( block | ';' ) ) int alt49=2; switch ( input.LA(1) ) { case MONKEYS_AT: { int LA49_1 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case PUBLIC: { int LA49_2 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case PROTECTED: { int LA49_3 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case PRIVATE: { int LA49_4 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case STATIC: { int LA49_5 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case ABSTRACT: { int LA49_6 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case FINAL: { int LA49_7 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case NATIVE: { int LA49_8 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case SYNCHRONIZED: { int LA49_9 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case TRANSIENT: { int LA49_10 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case VOLATILE: { int LA49_11 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case STRICTFP: { int LA49_12 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case LT: { int LA49_13 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case IDENTIFIER: { int LA49_14 = input.LA(2); if ( (synpred59_Java()) ) { alt49=1; } else if ( (true) ) { alt49=2; } } break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: case VOID: { alt49=2; } break; default: if (state.backtracking>0) {state.failed=true; return retval;} NoViableAltException nvae = new NoViableAltException("", 49, 0, input); throw nvae; } switch (alt49) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:690:10: modifiers ( typeParameters )? i1= IDENTIFIER formalParameters ( 'throws' qualifiedNameList )? '{' ( explicitConstructorInvocation )? ( blockStatement )* '}' { pushFollow(FOLLOW_modifiers_in_methodDeclaration2285); modifiers(); state._fsp--; if (state.failed) return retval; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:691:9: ( typeParameters )? int alt40=2; int LA40_0 = input.LA(1); if ( (LA40_0==LT) ) { alt40=1; } switch (alt40) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:691:10: typeParameters { pushFollow(FOLLOW_typeParameters_in_methodDeclaration2296); typeParameters(); state._fsp--; if (state.failed) return retval; } break; } i1=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_methodDeclaration2319); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.method.setIdentifier( new IdentifierDescr((i1!=null?i1.getText():null), start((CommonToken)i1), stop((CommonToken)i1), line(i1), position(i1)) );} pushFollow(FOLLOW_formalParameters_in_methodDeclaration2331); formalParameters(); state._fsp--; if (state.failed) return retval; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:695:9: ( 'throws' qualifiedNameList )? int alt41=2; int LA41_0 = input.LA(1); if ( (LA41_0==THROWS) ) { alt41=1; } switch (alt41) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:695:10: 'throws' qualifiedNameList { match(input,THROWS,FOLLOW_THROWS_in_methodDeclaration2342); if (state.failed) return retval; pushFollow(FOLLOW_qualifiedNameList_in_methodDeclaration2344); qualifiedNameList(); state._fsp--; if (state.failed) return retval; } break; } match(input,LBRACE,FOLLOW_LBRACE_in_methodDeclaration2365); if (state.failed) return retval; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:698:9: ( explicitConstructorInvocation )? int alt42=2; switch ( input.LA(1) ) { case LT: { alt42=1; } break; case THIS: { int LA42_2 = input.LA(2); if ( (synpred57_Java()) ) { alt42=1; } } break; case LPAREN: { int LA42_3 = input.LA(2); if ( (synpred57_Java()) ) { alt42=1; } } break; case SUPER: { int LA42_4 = input.LA(2); if ( (synpred57_Java()) ) { alt42=1; } } break; case IDENTIFIER: { int LA42_5 = input.LA(2); if ( (synpred57_Java()) ) { alt42=1; } } break; case CHARLITERAL: case DOUBLELITERAL: case FALSE: case FLOATLITERAL: case INTLITERAL: case LONGLITERAL: case NULL: case STRINGLITERAL: case TRUE: { int LA42_6 = input.LA(2); if ( (synpred57_Java()) ) { alt42=1; } } break; case NEW: { int LA42_7 = input.LA(2); if ( (synpred57_Java()) ) { alt42=1; } } break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: { int LA42_8 = input.LA(2); if ( (synpred57_Java()) ) { alt42=1; } } break; case VOID: { int LA42_9 = input.LA(2); if ( (synpred57_Java()) ) { alt42=1; } } break; } switch (alt42) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:698:10: explicitConstructorInvocation { pushFollow(FOLLOW_explicitConstructorInvocation_in_methodDeclaration2377); explicitConstructorInvocation(); state._fsp--; if (state.failed) return retval; } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:700:9: ( blockStatement )* loop43: while (true) { int alt43=2; int LA43_0 = input.LA(1); if ( (LA43_0==ABSTRACT||(LA43_0 >= ASSERT && LA43_0 <= BANG)||(LA43_0 >= BOOLEAN && LA43_0 <= BYTE)||(LA43_0 >= CHAR && LA43_0 <= CLASS)||LA43_0==CONTINUE||LA43_0==DO||(LA43_0 >= DOUBLE && LA43_0 <= DOUBLELITERAL)||LA43_0==ENUM||(LA43_0 >= FALSE && LA43_0 <= FINAL)||(LA43_0 >= FLOAT && LA43_0 <= FOR)||(LA43_0 >= IDENTIFIER && LA43_0 <= IF)||(LA43_0 >= INT && LA43_0 <= INTLITERAL)||LA43_0==LBRACE||(LA43_0 >= LONG && LA43_0 <= LT)||(LA43_0 >= MONKEYS_AT && LA43_0 <= NULL)||LA43_0==PLUS||(LA43_0 >= PLUSPLUS && LA43_0 <= PUBLIC)||LA43_0==RETURN||(LA43_0 >= SEMI && LA43_0 <= SHORT)||(LA43_0 >= STATIC && LA43_0 <= SUB)||(LA43_0 >= SUBSUB && LA43_0 <= SYNCHRONIZED)||(LA43_0 >= THIS && LA43_0 <= THROW)||(LA43_0 >= TILDE && LA43_0 <= WHILE)) ) { alt43=1; } switch (alt43) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:700:10: blockStatement { pushFollow(FOLLOW_blockStatement_in_methodDeclaration2399); blockStatement(); state._fsp--; if (state.failed) return retval; } break; default : break loop43; } } match(input,RBRACE,FOLLOW_RBRACE_in_methodDeclaration2420); if (state.failed) return retval; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:703:9: modifiers ( typeParameters )? ( type |v= 'void' ) i2= IDENTIFIER formalParameters (p1= '[' p2= ']' )* ( 'throws' qualifiedNameList )? ( block | ';' ) { pushFollow(FOLLOW_modifiers_in_methodDeclaration2430); modifiers(); state._fsp--; if (state.failed) return retval; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:704:9: ( typeParameters )? int alt44=2; int LA44_0 = input.LA(1); if ( (LA44_0==LT) ) { alt44=1; } switch (alt44) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:704:10: typeParameters { pushFollow(FOLLOW_typeParameters_in_methodDeclaration2441); typeParameters(); state._fsp--; if (state.failed) return retval; } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:706:9: ( type |v= 'void' ) int alt45=2; int LA45_0 = input.LA(1); if ( (LA45_0==BOOLEAN||LA45_0==BYTE||LA45_0==CHAR||LA45_0==DOUBLE||LA45_0==FLOAT||LA45_0==IDENTIFIER||LA45_0==INT||LA45_0==LONG||LA45_0==SHORT) ) { alt45=1; } else if ( (LA45_0==VOID) ) { alt45=2; } else { if (state.backtracking>0) {state.failed=true; return retval;} NoViableAltException nvae = new NoViableAltException("", 45, 0, input); throw nvae; } switch (alt45) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:706:11: type { if ( state.backtracking==0 ) { setDeclaringMethodReturnType(true); } pushFollow(FOLLOW_type_in_methodDeclaration2466); type(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { setDeclaringMethodReturnType(false); } } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:707:13: v= 'void' { v=(Token)match(input,VOID,FOLLOW_VOID_in_methodDeclaration2484); if (state.failed) return retval; if ( state.backtracking==0 ) { JavaTokenDescr voidType = new JavaTokenDescr(ElementType.JAVA_VOID, (v!=null?v.getText():null), start((CommonToken)v), stop((CommonToken)v), line(v), position(v)); TypeDescr type = new TypeDescr((v!=null?v.getText():null), voidType.getStart(), voidType.getStop(), voidType.getLine(), voidType.getPosition()); type.setVoidType(voidType); retval.method.setType(type); } } break; } i2=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_methodDeclaration2509); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.method.setIdentifier( new IdentifierDescr((i2!=null?i2.getText():null), start((CommonToken)i2), stop((CommonToken)i2), line(i2), position(i2)) ); } pushFollow(FOLLOW_formalParameters_in_methodDeclaration2521); formalParameters(); state._fsp--; if (state.failed) return retval; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:716:9: (p1= '[' p2= ']' )* loop46: while (true) { int alt46=2; int LA46_0 = input.LA(1); if ( (LA46_0==LBRACKET) ) { alt46=1; } switch (alt46) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:716:10: p1= '[' p2= ']' { p1=(Token)match(input,LBRACKET,FOLLOW_LBRACKET_in_methodDeclaration2534); if (state.failed) return retval; p2=(Token)match(input,RBRACKET,FOLLOW_RBRACKET_in_methodDeclaration2538); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.method.addDimension(new DimensionDescr("", start((CommonToken)p1), stop((CommonToken)p2), line(p1), position(p1), new JavaTokenDescr(ElementType.JAVA_LBRACKET, (p1!=null?p1.getText():null), start((CommonToken)p1), stop((CommonToken)p1), line(p1), position(p1)), new JavaTokenDescr(ElementType.JAVA_RBRACKET, (p2!=null?p2.getText():null), start((CommonToken)p2), stop((CommonToken)p2), line(p2), position(p2)))); } } break; default : break loop46; } } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:723:9: ( 'throws' qualifiedNameList )? int alt47=2; int LA47_0 = input.LA(1); if ( (LA47_0==THROWS) ) { alt47=1; } switch (alt47) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:723:10: 'throws' qualifiedNameList { match(input,THROWS,FOLLOW_THROWS_in_methodDeclaration2565); if (state.failed) return retval; pushFollow(FOLLOW_qualifiedNameList_in_methodDeclaration2567); qualifiedNameList(); state._fsp--; if (state.failed) return retval; } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:725:9: ( block | ';' ) int alt48=2; int LA48_0 = input.LA(1); if ( (LA48_0==LBRACE) ) { alt48=1; } else if ( (LA48_0==SEMI) ) { alt48=2; } else { if (state.backtracking>0) {state.failed=true; return retval;} NoViableAltException nvae = new NoViableAltException("", 48, 0, input); throw nvae; } switch (alt48) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:726:13: block { pushFollow(FOLLOW_block_in_methodDeclaration2622); block(); state._fsp--; if (state.failed) return retval; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:727:13: ';' { match(input,SEMI,FOLLOW_SEMI_in_methodDeclaration2636); if (state.failed) return retval; } break; } } break; } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { retval.method = popMethod(); if (retval.method != null) { updateOnAfter(retval.method, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); processMethod(retval.method); log("End of method declaration. : " ); } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 26, methodDeclaration_StartIndex); } } return retval; } // $ANTLR end "methodDeclaration" public static class fieldDeclaration_return extends ParserRuleReturnScope { public FieldDescr field; }; // $ANTLR start "fieldDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:732:1: fieldDeclaration returns [ FieldDescr field ] : modifiers type v1= variableDeclarator (c= ',' v2= variableDeclarator )* s= ';' ; public final JavaParser.fieldDeclaration_return fieldDeclaration() throws RecognitionException { JavaParser.fieldDeclaration_return retval = new JavaParser.fieldDeclaration_return(); retval.start = input.LT(1); int fieldDeclaration_StartIndex = input.index(); Token c=null; Token s=null; ParserRuleReturnScope v1 =null; ParserRuleReturnScope v2 =null; retval.field = null; if (!isBacktracking()) { log("Start field declaration."); retval.field = new FieldDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); context.push(retval.field); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 27) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:751:5: ( modifiers type v1= variableDeclarator (c= ',' v2= variableDeclarator )* s= ';' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:751:9: modifiers type v1= variableDeclarator (c= ',' v2= variableDeclarator )* s= ';' { pushFollow(FOLLOW_modifiers_in_fieldDeclaration2689); modifiers(); state._fsp--; if (state.failed) return retval; pushFollow(FOLLOW_type_in_fieldDeclaration2699); type(); state._fsp--; if (state.failed) return retval; pushFollow(FOLLOW_variableDeclarator_in_fieldDeclaration2711); v1=variableDeclarator(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { if (retval.field != null) retval.field.addVariableDeclaration((v1!=null?((JavaParser.variableDeclarator_return)v1).varDec:null)); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:754:9: (c= ',' v2= variableDeclarator )* loop50: while (true) { int alt50=2; int LA50_0 = input.LA(1); if ( (LA50_0==COMMA) ) { alt50=1; } switch (alt50) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:754:10: c= ',' v2= variableDeclarator { c=(Token)match(input,COMMA,FOLLOW_COMMA_in_fieldDeclaration2733); if (state.failed) return retval; pushFollow(FOLLOW_variableDeclarator_in_fieldDeclaration2737); v2=variableDeclarator(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { JavaTokenDescr comma = new JavaTokenDescr(ElementType.JAVA_COMMA, (c!=null?c.getText():null), start((CommonToken)c), stop((CommonToken)c), line(c), position(c)); (v2!=null?((JavaParser.variableDeclarator_return)v2).varDec:null).setStartComma(comma); (v2!=null?((JavaParser.variableDeclarator_return)v2).varDec:null).setStart(comma.getStart()); if (retval.field != null) retval.field.addVariableDeclaration((v2!=null?((JavaParser.variableDeclarator_return)v2).varDec:null)); } } break; default : break loop50; } } s=(Token)match(input,SEMI,FOLLOW_SEMI_in_fieldDeclaration2762); if (state.failed) return retval; if ( state.backtracking==0 ) { if (retval.field != null) retval.field.setEndSemiColon(new JavaTokenDescr(ElementType.JAVA_SEMI_COLON, (s!=null?s.getText():null), start((CommonToken)s), stop((CommonToken)s), line(s), position(s))); } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { retval.field = popField(); if (retval.field != null) { updateOnAfter(retval.field, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); processField(retval.field); log("End of field declaration."); } else { log("A FieldDescr is expected"); } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 27, fieldDeclaration_StartIndex); } } return retval; } // $ANTLR end "fieldDeclaration" public static class variableDeclarator_return extends ParserRuleReturnScope { public VariableDeclarationDescr varDec; }; // $ANTLR start "variableDeclarator" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:764:1: variableDeclarator returns [ VariableDeclarationDescr varDec ] : i= IDENTIFIER (p1= '[' p2= ']' )* (e= '=' v= variableInitializer )? ; public final JavaParser.variableDeclarator_return variableDeclarator() throws RecognitionException { JavaParser.variableDeclarator_return retval = new JavaParser.variableDeclarator_return(); retval.start = input.LT(1); int variableDeclarator_StartIndex = input.index(); Token i=null; Token p1=null; Token p2=null; Token e=null; ParserRuleReturnScope v =null; if (!isBacktracking()) { retval.varDec = new VariableDeclarationDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 28) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:773:5: (i= IDENTIFIER (p1= '[' p2= ']' )* (e= '=' v= variableInitializer )? ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:773:9: i= IDENTIFIER (p1= '[' p2= ']' )* (e= '=' v= variableInitializer )? { i=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_variableDeclarator2807); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.varDec.setIdentifier(new IdentifierDescr((i!=null?i.getText():null), start((CommonToken)i), stop((CommonToken)i), line(i), position(i) )); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:774:9: (p1= '[' p2= ']' )* loop51: while (true) { int alt51=2; int LA51_0 = input.LA(1); if ( (LA51_0==LBRACKET) ) { alt51=1; } switch (alt51) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:774:10: p1= '[' p2= ']' { p1=(Token)match(input,LBRACKET,FOLLOW_LBRACKET_in_variableDeclarator2822); if (state.failed) return retval; p2=(Token)match(input,RBRACKET,FOLLOW_RBRACKET_in_variableDeclarator2826); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.varDec.addDimension(new DimensionDescr("", start((CommonToken)p1), stop((CommonToken)p2), line(p1), position(p1), new JavaTokenDescr(ElementType.JAVA_LBRACKET, (p1!=null?p1.getText():null), start((CommonToken)p1), stop((CommonToken)p1), line(p1), position(p1)), new JavaTokenDescr(ElementType.JAVA_RBRACKET, (p2!=null?p2.getText():null), start((CommonToken)p2), stop((CommonToken)p2), line(p2), position(p2)))); } } break; default : break loop51; } } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:779:9: (e= '=' v= variableInitializer )? int alt52=2; int LA52_0 = input.LA(1); if ( (LA52_0==EQ) ) { alt52=1; } switch (alt52) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:779:10: e= '=' v= variableInitializer { e=(Token)match(input,EQ,FOLLOW_EQ_in_variableDeclarator2852); if (state.failed) return retval; pushFollow(FOLLOW_variableInitializer_in_variableDeclarator2856); v=variableInitializer(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { retval.varDec.setEqualsSign(new JavaTokenDescr(ElementType.JAVA_EQUALS, (e!=null?e.getText():null), start((CommonToken)e), stop((CommonToken)e), line(e), position(e)) ); retval.varDec.setVariableInitializer( new VariableInitializerDescr( (v!=null?input.toString(v.start,v.stop):null), start(((CommonToken)(v!=null?(v.start):null))), stop((CommonToken)(v!=null?(v.stop):null)), line((CommonToken)(v!=null?(v.start):null)), position((CommonToken)(v!=null?(v.start):null)), (v!=null?input.toString(v.start,v.stop):null) ) ); } } break; } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { updateOnAfter(retval.varDec, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 28, variableDeclarator_StartIndex); } } return retval; } // $ANTLR end "variableDeclarator" // $ANTLR start "interfaceBodyDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:789:1: interfaceBodyDeclaration : ( interfaceFieldDeclaration | interfaceMethodDeclaration | interfaceDeclaration | classDeclaration | ';' ); public final void interfaceBodyDeclaration() throws RecognitionException { int interfaceBodyDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 29) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:790:5: ( interfaceFieldDeclaration | interfaceMethodDeclaration | interfaceDeclaration | classDeclaration | ';' ) int alt53=5; switch ( input.LA(1) ) { case MONKEYS_AT: { int LA53_1 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else if ( (synpred70_Java()) ) { alt53=3; } else if ( (synpred71_Java()) ) { alt53=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 1, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case PUBLIC: { int LA53_2 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else if ( (synpred70_Java()) ) { alt53=3; } else if ( (synpred71_Java()) ) { alt53=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 2, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case PROTECTED: { int LA53_3 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else if ( (synpred70_Java()) ) { alt53=3; } else if ( (synpred71_Java()) ) { alt53=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 3, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case PRIVATE: { int LA53_4 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else if ( (synpred70_Java()) ) { alt53=3; } else if ( (synpred71_Java()) ) { alt53=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 4, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case STATIC: { int LA53_5 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else if ( (synpred70_Java()) ) { alt53=3; } else if ( (synpred71_Java()) ) { alt53=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 5, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case ABSTRACT: { int LA53_6 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else if ( (synpred70_Java()) ) { alt53=3; } else if ( (synpred71_Java()) ) { alt53=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 6, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case FINAL: { int LA53_7 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else if ( (synpred70_Java()) ) { alt53=3; } else if ( (synpred71_Java()) ) { alt53=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 7, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case NATIVE: { int LA53_8 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else if ( (synpred70_Java()) ) { alt53=3; } else if ( (synpred71_Java()) ) { alt53=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 8, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case SYNCHRONIZED: { int LA53_9 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else if ( (synpred70_Java()) ) { alt53=3; } else if ( (synpred71_Java()) ) { alt53=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 9, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case TRANSIENT: { int LA53_10 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else if ( (synpred70_Java()) ) { alt53=3; } else if ( (synpred71_Java()) ) { alt53=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 10, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case VOLATILE: { int LA53_11 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else if ( (synpred70_Java()) ) { alt53=3; } else if ( (synpred71_Java()) ) { alt53=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 11, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case STRICTFP: { int LA53_12 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else if ( (synpred70_Java()) ) { alt53=3; } else if ( (synpred71_Java()) ) { alt53=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 12, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case IDENTIFIER: { int LA53_13 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 13, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: { int LA53_14 = input.LA(2); if ( (synpred68_Java()) ) { alt53=1; } else if ( (synpred69_Java()) ) { alt53=2; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 53, 14, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case LT: case VOID: { alt53=2; } break; case INTERFACE: { alt53=3; } break; case CLASS: case ENUM: { alt53=4; } break; case SEMI: { alt53=5; } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 53, 0, input); throw nvae; } switch (alt53) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:791:9: interfaceFieldDeclaration { pushFollow(FOLLOW_interfaceFieldDeclaration_in_interfaceBodyDeclaration2897); interfaceFieldDeclaration(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:792:9: interfaceMethodDeclaration { pushFollow(FOLLOW_interfaceMethodDeclaration_in_interfaceBodyDeclaration2907); interfaceMethodDeclaration(); state._fsp--; if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:793:9: interfaceDeclaration { pushFollow(FOLLOW_interfaceDeclaration_in_interfaceBodyDeclaration2917); interfaceDeclaration(); state._fsp--; if (state.failed) return; } break; case 4 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:794:9: classDeclaration { pushFollow(FOLLOW_classDeclaration_in_interfaceBodyDeclaration2927); classDeclaration(); state._fsp--; if (state.failed) return; } break; case 5 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:795:9: ';' { match(input,SEMI,FOLLOW_SEMI_in_interfaceBodyDeclaration2937); if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 29, interfaceBodyDeclaration_StartIndex); } } } // $ANTLR end "interfaceBodyDeclaration" // $ANTLR start "interfaceMethodDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:798:1: interfaceMethodDeclaration : modifiers ( typeParameters )? ( type | 'void' ) IDENTIFIER formalParameters ( '[' ']' )* ( 'throws' qualifiedNameList )? ';' ; public final void interfaceMethodDeclaration() throws RecognitionException { int interfaceMethodDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 30) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:799:5: ( modifiers ( typeParameters )? ( type | 'void' ) IDENTIFIER formalParameters ( '[' ']' )* ( 'throws' qualifiedNameList )? ';' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:799:9: modifiers ( typeParameters )? ( type | 'void' ) IDENTIFIER formalParameters ( '[' ']' )* ( 'throws' qualifiedNameList )? ';' { pushFollow(FOLLOW_modifiers_in_interfaceMethodDeclaration2957); modifiers(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:800:9: ( typeParameters )? int alt54=2; int LA54_0 = input.LA(1); if ( (LA54_0==LT) ) { alt54=1; } switch (alt54) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:800:10: typeParameters { pushFollow(FOLLOW_typeParameters_in_interfaceMethodDeclaration2968); typeParameters(); state._fsp--; if (state.failed) return; } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:802:9: ( type | 'void' ) int alt55=2; int LA55_0 = input.LA(1); if ( (LA55_0==BOOLEAN||LA55_0==BYTE||LA55_0==CHAR||LA55_0==DOUBLE||LA55_0==FLOAT||LA55_0==IDENTIFIER||LA55_0==INT||LA55_0==LONG||LA55_0==SHORT) ) { alt55=1; } else if ( (LA55_0==VOID) ) { alt55=2; } else { if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 55, 0, input); throw nvae; } switch (alt55) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:802:10: type { pushFollow(FOLLOW_type_in_interfaceMethodDeclaration2990); type(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:803:10: 'void' { match(input,VOID,FOLLOW_VOID_in_interfaceMethodDeclaration3001); if (state.failed) return; } break; } match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_interfaceMethodDeclaration3021); if (state.failed) return; pushFollow(FOLLOW_formalParameters_in_interfaceMethodDeclaration3031); formalParameters(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:807:9: ( '[' ']' )* loop56: while (true) { int alt56=2; int LA56_0 = input.LA(1); if ( (LA56_0==LBRACKET) ) { alt56=1; } switch (alt56) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:807:10: '[' ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_interfaceMethodDeclaration3042); if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_interfaceMethodDeclaration3044); if (state.failed) return; } break; default : break loop56; } } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:809:9: ( 'throws' qualifiedNameList )? int alt57=2; int LA57_0 = input.LA(1); if ( (LA57_0==THROWS) ) { alt57=1; } switch (alt57) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:809:10: 'throws' qualifiedNameList { match(input,THROWS,FOLLOW_THROWS_in_interfaceMethodDeclaration3066); if (state.failed) return; pushFollow(FOLLOW_qualifiedNameList_in_interfaceMethodDeclaration3068); qualifiedNameList(); state._fsp--; if (state.failed) return; } break; } match(input,SEMI,FOLLOW_SEMI_in_interfaceMethodDeclaration3081); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 30, interfaceMethodDeclaration_StartIndex); } } } // $ANTLR end "interfaceMethodDeclaration" // $ANTLR start "interfaceFieldDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:818:1: interfaceFieldDeclaration : modifiers type variableDeclarator ( ',' variableDeclarator )* ';' ; public final void interfaceFieldDeclaration() throws RecognitionException { int interfaceFieldDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 31) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:819:5: ( modifiers type variableDeclarator ( ',' variableDeclarator )* ';' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:819:9: modifiers type variableDeclarator ( ',' variableDeclarator )* ';' { pushFollow(FOLLOW_modifiers_in_interfaceFieldDeclaration3103); modifiers(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_type_in_interfaceFieldDeclaration3105); type(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_variableDeclarator_in_interfaceFieldDeclaration3107); variableDeclarator(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:820:9: ( ',' variableDeclarator )* loop58: while (true) { int alt58=2; int LA58_0 = input.LA(1); if ( (LA58_0==COMMA) ) { alt58=1; } switch (alt58) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:820:10: ',' variableDeclarator { match(input,COMMA,FOLLOW_COMMA_in_interfaceFieldDeclaration3118); if (state.failed) return; pushFollow(FOLLOW_variableDeclarator_in_interfaceFieldDeclaration3120); variableDeclarator(); state._fsp--; if (state.failed) return; } break; default : break loop58; } } match(input,SEMI,FOLLOW_SEMI_in_interfaceFieldDeclaration3141); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 31, interfaceFieldDeclaration_StartIndex); } } } // $ANTLR end "interfaceFieldDeclaration" public static class type_return extends ParserRuleReturnScope { public TypeDescr typeDescr; }; // $ANTLR start "type" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:826:1: type returns [ TypeDescr typeDescr ] : ( classOrInterfaceType (p1= '[' p2= ']' )* | primitiveType (p1= '[' p2= ']' )* ); public final JavaParser.type_return type() throws RecognitionException { JavaParser.type_return retval = new JavaParser.type_return(); retval.start = input.LT(1); int type_StartIndex = input.index(); Token p1=null; Token p2=null; retval.typeDescr = null; if (!isBacktracking()) { log("Start type declaration."); retval.typeDescr = new TypeDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); context.push(retval.typeDescr); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 32) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:844:5: ( classOrInterfaceType (p1= '[' p2= ']' )* | primitiveType (p1= '[' p2= ']' )* ) int alt61=2; int LA61_0 = input.LA(1); if ( (LA61_0==IDENTIFIER) ) { alt61=1; } else if ( (LA61_0==BOOLEAN||LA61_0==BYTE||LA61_0==CHAR||LA61_0==DOUBLE||LA61_0==FLOAT||LA61_0==INT||LA61_0==LONG||LA61_0==SHORT) ) { alt61=2; } else { if (state.backtracking>0) {state.failed=true; return retval;} NoViableAltException nvae = new NoViableAltException("", 61, 0, input); throw nvae; } switch (alt61) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:844:9: classOrInterfaceType (p1= '[' p2= ']' )* { pushFollow(FOLLOW_classOrInterfaceType_in_type3183); classOrInterfaceType(); state._fsp--; if (state.failed) return retval; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:845:9: (p1= '[' p2= ']' )* loop59: while (true) { int alt59=2; int LA59_0 = input.LA(1); if ( (LA59_0==LBRACKET) ) { alt59=1; } switch (alt59) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:845:10: p1= '[' p2= ']' { p1=(Token)match(input,LBRACKET,FOLLOW_LBRACKET_in_type3196); if (state.failed) return retval; p2=(Token)match(input,RBRACKET,FOLLOW_RBRACKET_in_type3200); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.typeDescr.addDimension(new DimensionDescr("", start((CommonToken)p1), stop((CommonToken)p2), line(p1), position(p1), new JavaTokenDescr(ElementType.JAVA_LBRACKET, (p1!=null?p1.getText():null), start((CommonToken)p1), stop((CommonToken)p1), line(p1), position(p1)), new JavaTokenDescr(ElementType.JAVA_RBRACKET, (p2!=null?p2.getText():null), start((CommonToken)p2), stop((CommonToken)p2), line(p2), position(p2)))); } } break; default : break loop59; } } } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:850:9: primitiveType (p1= '[' p2= ']' )* { pushFollow(FOLLOW_primitiveType_in_type3223); primitiveType(); state._fsp--; if (state.failed) return retval; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:851:9: (p1= '[' p2= ']' )* loop60: while (true) { int alt60=2; int LA60_0 = input.LA(1); if ( (LA60_0==LBRACKET) ) { alt60=1; } switch (alt60) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:851:10: p1= '[' p2= ']' { p1=(Token)match(input,LBRACKET,FOLLOW_LBRACKET_in_type3236); if (state.failed) return retval; p2=(Token)match(input,RBRACKET,FOLLOW_RBRACKET_in_type3240); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.typeDescr.addDimension(new DimensionDescr("", start((CommonToken)p1), stop((CommonToken)p2), line(p1), position(p1), new JavaTokenDescr(ElementType.JAVA_LBRACKET, (p1!=null?p1.getText():null), start((CommonToken)p1), stop((CommonToken)p1), line(p1), position(p1)), new JavaTokenDescr(ElementType.JAVA_RBRACKET, (p2!=null?p2.getText():null), start((CommonToken)p2), stop((CommonToken)p2), line(p2), position(p2)))); } } break; default : break loop60; } } } break; } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { retval.typeDescr = popType(); if (retval.typeDescr != null) { updateOnAfter(retval.typeDescr, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); processType(retval.typeDescr); } else { //TODO warning, by construction current type is expected } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 32, type_StartIndex); } } return retval; } // $ANTLR end "type" public static class classOrInterfaceType_return extends ParserRuleReturnScope { }; // $ANTLR start "classOrInterfaceType" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:859:1: classOrInterfaceType : id1= IDENTIFIER (t= typeArguments )? (d= '.' id2= IDENTIFIER (t= typeArguments )? )* ; public final JavaParser.classOrInterfaceType_return classOrInterfaceType() throws RecognitionException { JavaParser.classOrInterfaceType_return retval = new JavaParser.classOrInterfaceType_return(); retval.start = input.LT(1); int classOrInterfaceType_StartIndex = input.index(); Token id1=null; Token d=null; Token id2=null; ParserRuleReturnScope t =null; ClassOrInterfaceTypeDescr classDescr = null; IdentifierDescr ident = null; IdentifierWithTypeArgumentsDescr identWithArgs = null; if (!isBacktracking()) { log("Start ClassOrInterfaceType declaration"); classDescr = new ClassOrInterfaceTypeDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); context.push(classDescr); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 33) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:882:5: (id1= IDENTIFIER (t= typeArguments )? (d= '.' id2= IDENTIFIER (t= typeArguments )? )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:882:9: id1= IDENTIFIER (t= typeArguments )? (d= '.' id2= IDENTIFIER (t= typeArguments )? )* { id1=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_classOrInterfaceType3293); if (state.failed) return retval; if ( state.backtracking==0 ) { ident = new IdentifierDescr((id1!=null?id1.getText():null), start((CommonToken)id1), stop((CommonToken)id1), line(id1), position(id1)); identWithArgs = new IdentifierWithTypeArgumentsDescr((id1!=null?id1.getText():null), start((CommonToken)id1), stop((CommonToken)id1), line(id1), position(id1)); identWithArgs.setIdentifier(ident); classDescr.addIdentifierWithTypeArgument(identWithArgs); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:888:9: (t= typeArguments )? int alt62=2; int LA62_0 = input.LA(1); if ( (LA62_0==LT) ) { int LA62_1 = input.LA(2); if ( (LA62_1==BOOLEAN||LA62_1==BYTE||LA62_1==CHAR||LA62_1==DOUBLE||LA62_1==FLOAT||LA62_1==IDENTIFIER||LA62_1==INT||LA62_1==LONG||LA62_1==QUES||LA62_1==SHORT) ) { alt62=1; } } switch (alt62) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:888:11: t= typeArguments { if ( state.backtracking==0 ) {context.push(identWithArgs);} pushFollow(FOLLOW_typeArguments_in_classOrInterfaceType3312); t=typeArguments(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { if (isIdentifierWithTypeArgumentsOnTop()) { identWithArgs = popIdentifierWithTypeArguments(); identWithArgs.setStop(stop((CommonToken)(t!=null?(t.stop):null))); identWithArgs.setArguments( (t!=null?((JavaParser.typeArguments_return)t).argumentsDec:null) ); } } } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:896:9: (d= '.' id2= IDENTIFIER (t= typeArguments )? )* loop64: while (true) { int alt64=2; int LA64_0 = input.LA(1); if ( (LA64_0==DOT) ) { alt64=1; } switch (alt64) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:896:10: d= '.' id2= IDENTIFIER (t= typeArguments )? { d=(Token)match(input,DOT,FOLLOW_DOT_in_classOrInterfaceType3338); if (state.failed) return retval; id2=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_classOrInterfaceType3342); if (state.failed) return retval; if ( state.backtracking==0 ) { identWithArgs = new IdentifierWithTypeArgumentsDescr((id2!=null?id2.getText():null), start((CommonToken)d), stop((CommonToken)id2), line(d), position(d)); JavaTokenDescr dot = new JavaTokenDescr(ElementType.JAVA_DOT, (d!=null?d.getText():null), start((CommonToken)d), stop((CommonToken)d), line(d), position(d)); ident = new IdentifierDescr((id2!=null?id2.getText():null), start((CommonToken)id2), stop((CommonToken)id2), line(id2), position(id2)); identWithArgs.setStartDot(dot); identWithArgs.setIdentifier(ident); classDescr.addIdentifierWithTypeArgument(identWithArgs); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:904:13: (t= typeArguments )? int alt63=2; int LA63_0 = input.LA(1); if ( (LA63_0==LT) ) { int LA63_1 = input.LA(2); if ( (LA63_1==BOOLEAN||LA63_1==BYTE||LA63_1==CHAR||LA63_1==DOUBLE||LA63_1==FLOAT||LA63_1==IDENTIFIER||LA63_1==INT||LA63_1==LONG||LA63_1==QUES||LA63_1==SHORT) ) { alt63=1; } } switch (alt63) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:904:15: t= typeArguments { if ( state.backtracking==0 ) {context.push(identWithArgs);} pushFollow(FOLLOW_typeArguments_in_classOrInterfaceType3364); t=typeArguments(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { if (isIdentifierWithTypeArgumentsOnTop()) { identWithArgs = popIdentifierWithTypeArguments(); identWithArgs.setStop(stop((CommonToken)(t!=null?(t.stop):null))); identWithArgs.setArguments( (t!=null?((JavaParser.typeArguments_return)t).argumentsDec:null) ); } } } break; } } break; default : break loop64; } } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { classDescr = popClassOrInterfaceType(); if (classDescr != null) { updateOnAfter(classDescr, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); HasClassOrInterfaceType top = peekHasClassOrInterfaceType(); if ( top != null) { top.setClassOrInterfaceType(classDescr); } } else { //TODO warning, by construction current classDescr is expected } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 33, classOrInterfaceType_StartIndex); } } return retval; } // $ANTLR end "classOrInterfaceType" public static class primitiveType_return extends ParserRuleReturnScope { }; // $ANTLR start "primitiveType" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:915:1: primitiveType : ( 'boolean' | 'char' | 'byte' | 'short' | 'int' | 'long' | 'float' | 'double' ); public final JavaParser.primitiveType_return primitiveType() throws RecognitionException { JavaParser.primitiveType_return retval = new JavaParser.primitiveType_return(); retval.start = input.LT(1); int primitiveType_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 34) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:922:5: ( 'boolean' | 'char' | 'byte' | 'short' | 'int' | 'long' | 'float' | 'double' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g: { if ( input.LA(1)==BOOLEAN||input.LA(1)==BYTE||input.LA(1)==CHAR||input.LA(1)==DOUBLE||input.LA(1)==FLOAT||input.LA(1)==INT||input.LA(1)==LONG||input.LA(1)==SHORT ) { input.consume(); state.errorRecovery=false; state.failed=false; } else { if (state.backtracking>0) {state.failed=true; return retval;} MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { HasPrimitiveType hasPrimitive = peekHasPrimitiveType(); if (hasPrimitive != null) { hasPrimitive.setPrimitiveType(new PrimitiveTypeDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), stop((CommonToken)(retval.stop)), line((CommonToken)(retval.start)), position((CommonToken)(retval.start)), input.toString(retval.start,input.LT(-1)))); } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 34, primitiveType_StartIndex); } } return retval; } // $ANTLR end "primitiveType" public static class typeArguments_return extends ParserRuleReturnScope { public TypeArgumentListDescr argumentsDec; }; // $ANTLR start "typeArguments" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:932:1: typeArguments returns [ TypeArgumentListDescr argumentsDec ] : lt= '<' a1= typeArgument (c= ',' a2= typeArgument )* gt= '>' ; public final JavaParser.typeArguments_return typeArguments() throws RecognitionException { JavaParser.typeArguments_return retval = new JavaParser.typeArguments_return(); retval.start = input.LT(1); int typeArguments_StartIndex = input.index(); Token lt=null; Token c=null; Token gt=null; ParserRuleReturnScope a1 =null; ParserRuleReturnScope a2 =null; retval.argumentsDec = null; if (!isBacktracking()) { log("Start TypeArgumentListDescr declaration"); retval.argumentsDec = new TypeArgumentListDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); context.push(retval.argumentsDec); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 35) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:951:5: (lt= '<' a1= typeArgument (c= ',' a2= typeArgument )* gt= '>' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:951:9: lt= '<' a1= typeArgument (c= ',' a2= typeArgument )* gt= '>' { lt=(Token)match(input,LT,FOLLOW_LT_in_typeArguments3534); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.argumentsDec.setLTStart(new JavaTokenDescr(ElementType.JAVA_LT, (lt!=null?lt.getText():null), start((CommonToken)lt), stop((CommonToken)lt), line(lt), position(lt))); } pushFollow(FOLLOW_typeArgument_in_typeArguments3548); a1=typeArgument(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { retval.argumentsDec.addArgument((a1!=null?((JavaParser.typeArgument_return)a1).argumentDec:null)); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:954:9: (c= ',' a2= typeArgument )* loop65: while (true) { int alt65=2; int LA65_0 = input.LA(1); if ( (LA65_0==COMMA) ) { alt65=1; } switch (alt65) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:954:10: c= ',' a2= typeArgument { c=(Token)match(input,COMMA,FOLLOW_COMMA_in_typeArguments3578); if (state.failed) return retval; pushFollow(FOLLOW_typeArgument_in_typeArguments3582); a2=typeArgument(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { JavaTokenDescr comma = new JavaTokenDescr(ElementType.JAVA_COMMA, (c!=null?c.getText():null), start((CommonToken)c), stop((CommonToken)c), line(c), position(c)); (a2!=null?((JavaParser.typeArgument_return)a2).argumentDec:null).setStartComma(comma); (a2!=null?((JavaParser.typeArgument_return)a2).argumentDec:null).setStart(comma.getStart()); retval.argumentsDec.addArgument((a2!=null?((JavaParser.typeArgument_return)a2).argumentDec:null)); } } break; default : break loop65; } } gt=(Token)match(input,GT,FOLLOW_GT_in_typeArguments3623); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.argumentsDec.setGTStop(new JavaTokenDescr(ElementType.JAVA_GT, (gt!=null?gt.getText():null), start((CommonToken)gt), stop((CommonToken)gt), line(gt), position(gt))); } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { retval.argumentsDec = popTypeArgumentList(); if (retval.argumentsDec != null) { updateOnAfter(retval.argumentsDec, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); //processTypeArgumentList(retval.argumentsDec); } else { //TODO warning, by construction current typeArgumentList is expected } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 35, typeArguments_StartIndex); } } return retval; } // $ANTLR end "typeArguments" public static class typeArgument_return extends ParserRuleReturnScope { public TypeArgumentDescr argumentDec; }; // $ANTLR start "typeArgument" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:965:1: typeArgument returns [ TypeArgumentDescr argumentDec ] : ( type | '?' ( ( 'extends' | 'super' ) type )? ); public final JavaParser.typeArgument_return typeArgument() throws RecognitionException { JavaParser.typeArgument_return retval = new JavaParser.typeArgument_return(); retval.start = input.LT(1); int typeArgument_StartIndex = input.index(); retval.argumentDec = null; if (!isBacktracking()) { log("Start TypeArgumentDescr declaration"); retval.argumentDec = new TypeArgumentDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); context.push(retval.argumentDec); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 36) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:983:5: ( type | '?' ( ( 'extends' | 'super' ) type )? ) int alt67=2; int LA67_0 = input.LA(1); if ( (LA67_0==BOOLEAN||LA67_0==BYTE||LA67_0==CHAR||LA67_0==DOUBLE||LA67_0==FLOAT||LA67_0==IDENTIFIER||LA67_0==INT||LA67_0==LONG||LA67_0==SHORT) ) { alt67=1; } else if ( (LA67_0==QUES) ) { alt67=2; } else { if (state.backtracking>0) {state.failed=true; return retval;} NoViableAltException nvae = new NoViableAltException("", 67, 0, input); throw nvae; } switch (alt67) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:983:9: type { pushFollow(FOLLOW_type_in_typeArgument3667); type(); state._fsp--; if (state.failed) return retval; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:984:9: '?' ( ( 'extends' | 'super' ) type )? { match(input,QUES,FOLLOW_QUES_in_typeArgument3677); if (state.failed) return retval; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:985:9: ( ( 'extends' | 'super' ) type )? int alt66=2; int LA66_0 = input.LA(1); if ( (LA66_0==EXTENDS||LA66_0==SUPER) ) { alt66=1; } switch (alt66) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:986:13: ( 'extends' | 'super' ) type { if ( input.LA(1)==EXTENDS||input.LA(1)==SUPER ) { input.consume(); state.errorRecovery=false; state.failed=false; } else { if (state.backtracking>0) {state.failed=true; return retval;} MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } pushFollow(FOLLOW_type_in_typeArgument3746); type(); state._fsp--; if (state.failed) return retval; } break; } } break; } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { retval.argumentDec = popTypeArgument(); if (retval.argumentDec != null) { updateOnAfter(retval.argumentDec, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); } else { //TODO warning, by construction current typeArgumentDescr is expected } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 36, typeArgument_StartIndex); } } return retval; } // $ANTLR end "typeArgument" // $ANTLR start "qualifiedNameList" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:993:1: qualifiedNameList : qualifiedName ( ',' qualifiedName )* ; public final void qualifiedNameList() throws RecognitionException { int qualifiedNameList_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 37) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:994:5: ( qualifiedName ( ',' qualifiedName )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:994:9: qualifiedName ( ',' qualifiedName )* { pushFollow(FOLLOW_qualifiedName_in_qualifiedNameList3777); qualifiedName(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:995:9: ( ',' qualifiedName )* loop68: while (true) { int alt68=2; int LA68_0 = input.LA(1); if ( (LA68_0==COMMA) ) { alt68=1; } switch (alt68) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:995:10: ',' qualifiedName { match(input,COMMA,FOLLOW_COMMA_in_qualifiedNameList3788); if (state.failed) return; pushFollow(FOLLOW_qualifiedName_in_qualifiedNameList3790); qualifiedName(); state._fsp--; if (state.failed) return; } break; default : break loop68; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 37, qualifiedNameList_StartIndex); } } } // $ANTLR end "qualifiedNameList" // $ANTLR start "formalParameters" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:999:1: formalParameters : p1= '(' (l= formalParameterDecls )? p2= ')' ; public final void formalParameters() throws RecognitionException { int formalParameters_StartIndex = input.index(); Token p1=null; Token p2=null; ParserRuleReturnScope l =null; try { if ( state.backtracking>0 && alreadyParsedRule(input, 38) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1000:5: (p1= '(' (l= formalParameterDecls )? p2= ')' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1000:9: p1= '(' (l= formalParameterDecls )? p2= ')' { p1=(Token)match(input,LPAREN,FOLLOW_LPAREN_in_formalParameters3822); if (state.failed) return; if ( state.backtracking==0 ) { setFormalParamsStart(ElementType.JAVA_LPAREN, (p1!=null?p1.getText():null), start((CommonToken)p1), stop((CommonToken)p1), line(p1), position(p1)); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1001:9: (l= formalParameterDecls )? int alt69=2; int LA69_0 = input.LA(1); if ( (LA69_0==BOOLEAN||LA69_0==BYTE||LA69_0==CHAR||LA69_0==DOUBLE||LA69_0==FINAL||LA69_0==FLOAT||LA69_0==IDENTIFIER||LA69_0==INT||LA69_0==LONG||LA69_0==MONKEYS_AT||LA69_0==SHORT) ) { alt69=1; } switch (alt69) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1001:10: l= formalParameterDecls { pushFollow(FOLLOW_formalParameterDecls_in_formalParameters3838); l=formalParameterDecls(); state._fsp--; if (state.failed) return; if ( state.backtracking==0 ) { processParameterList((l!=null?((JavaParser.formalParameterDecls_return)l).params:null)); } } break; } p2=(Token)match(input,RPAREN,FOLLOW_RPAREN_in_formalParameters3865); if (state.failed) return; if ( state.backtracking==0 ) { setFormalParamsStop(ElementType.JAVA_RPAREN, (p2!=null?p2.getText():null), start((CommonToken)p2), stop((CommonToken)p2), line(p2), position(p2)); } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 38, formalParameters_StartIndex); } } } // $ANTLR end "formalParameters" public static class formalParameterDecls_return extends ParserRuleReturnScope { public ParameterListDescr params; }; // $ANTLR start "formalParameterDecls" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1006:1: formalParameterDecls returns [ ParameterListDescr params ] : (e1= ellipsisParameterDecl |p1= normalParameterDecl (c2= ',' p2= normalParameterDecl )* | (p3= normalParameterDecl c3= ',' )+ e2= ellipsisParameterDecl ); public final JavaParser.formalParameterDecls_return formalParameterDecls() throws RecognitionException { JavaParser.formalParameterDecls_return retval = new JavaParser.formalParameterDecls_return(); retval.start = input.LT(1); int formalParameterDecls_StartIndex = input.index(); Token c2=null; Token c3=null; ParserRuleReturnScope e1 =null; ParserRuleReturnScope p1 =null; ParserRuleReturnScope p2 =null; ParserRuleReturnScope p3 =null; ParserRuleReturnScope e2 =null; retval.params = null; JavaTokenDescr lastComma = null; if (!isBacktracking()) { retval.params = new ParameterListDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((CommonToken)(retval.start)), position((CommonToken)(retval.start))); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 39) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1017:5: (e1= ellipsisParameterDecl |p1= normalParameterDecl (c2= ',' p2= normalParameterDecl )* | (p3= normalParameterDecl c3= ',' )+ e2= ellipsisParameterDecl ) int alt72=3; switch ( input.LA(1) ) { case FINAL: { int LA72_1 = input.LA(2); if ( (synpred96_Java()) ) { alt72=1; } else if ( (synpred98_Java()) ) { alt72=2; } else if ( (true) ) { alt72=3; } } break; case MONKEYS_AT: { int LA72_2 = input.LA(2); if ( (synpred96_Java()) ) { alt72=1; } else if ( (synpred98_Java()) ) { alt72=2; } else if ( (true) ) { alt72=3; } } break; case IDENTIFIER: { int LA72_3 = input.LA(2); if ( (synpred96_Java()) ) { alt72=1; } else if ( (synpred98_Java()) ) { alt72=2; } else if ( (true) ) { alt72=3; } } break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: { int LA72_4 = input.LA(2); if ( (synpred96_Java()) ) { alt72=1; } else if ( (synpred98_Java()) ) { alt72=2; } else if ( (true) ) { alt72=3; } } break; default: if (state.backtracking>0) {state.failed=true; return retval;} NoViableAltException nvae = new NoViableAltException("", 72, 0, input); throw nvae; } switch (alt72) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1017:9: e1= ellipsisParameterDecl { pushFollow(FOLLOW_ellipsisParameterDecl_in_formalParameterDecls3910); e1=ellipsisParameterDecl(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { retval.params.addParameter((e1!=null?((JavaParser.ellipsisParameterDecl_return)e1).param:null)); } } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1018:9: p1= normalParameterDecl (c2= ',' p2= normalParameterDecl )* { pushFollow(FOLLOW_normalParameterDecl_in_formalParameterDecls3924); p1=normalParameterDecl(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { retval.params.addParameter((p1!=null?((JavaParser.normalParameterDecl_return)p1).param:null)); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1019:9: (c2= ',' p2= normalParameterDecl )* loop70: while (true) { int alt70=2; int LA70_0 = input.LA(1); if ( (LA70_0==COMMA) ) { alt70=1; } switch (alt70) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1019:10: c2= ',' p2= normalParameterDecl { c2=(Token)match(input,COMMA,FOLLOW_COMMA_in_formalParameterDecls3941); if (state.failed) return retval; pushFollow(FOLLOW_normalParameterDecl_in_formalParameterDecls3945); p2=normalParameterDecl(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { (p2!=null?((JavaParser.normalParameterDecl_return)p2).param:null).setStart(start((CommonToken)c2)); (p2!=null?((JavaParser.normalParameterDecl_return)p2).param:null).setStartComma( new JavaTokenDescr(ElementType.JAVA_COMMA, (c2!=null?c2.getText():null), start((CommonToken)c2), stop((CommonToken)c2), line(c2), position(c2)) ); retval.params.addParameter((p2!=null?((JavaParser.normalParameterDecl_return)p2).param:null)); } } break; default : break loop70; } } } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1025:9: (p3= normalParameterDecl c3= ',' )+ e2= ellipsisParameterDecl { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1025:9: (p3= normalParameterDecl c3= ',' )+ int cnt71=0; loop71: while (true) { int alt71=2; switch ( input.LA(1) ) { case FINAL: { int LA71_1 = input.LA(2); if ( (synpred99_Java()) ) { alt71=1; } } break; case MONKEYS_AT: { int LA71_2 = input.LA(2); if ( (synpred99_Java()) ) { alt71=1; } } break; case IDENTIFIER: { int LA71_3 = input.LA(2); if ( (synpred99_Java()) ) { alt71=1; } } break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: { int LA71_4 = input.LA(2); if ( (synpred99_Java()) ) { alt71=1; } } break; } switch (alt71) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1025:10: p3= normalParameterDecl c3= ',' { pushFollow(FOLLOW_normalParameterDecl_in_formalParameterDecls3971); p3=normalParameterDecl(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { if (lastComma != null) { (p3!=null?((JavaParser.normalParameterDecl_return)p3).param:null).setStart(lastComma.getStart()); (p3!=null?((JavaParser.normalParameterDecl_return)p3).param:null).setStartComma(lastComma); } retval.params.addParameter((p3!=null?((JavaParser.normalParameterDecl_return)p3).param:null)); } c3=(Token)match(input,COMMA,FOLLOW_COMMA_in_formalParameterDecls3985); if (state.failed) return retval; if ( state.backtracking==0 ) { lastComma = new JavaTokenDescr(ElementType.JAVA_COMMA, (c3!=null?c3.getText():null), start((CommonToken)c3), stop((CommonToken)c3), line(c3), position(c3)); } } break; default : if ( cnt71 >= 1 ) break loop71; if (state.backtracking>0) {state.failed=true; return retval;} EarlyExitException eee = new EarlyExitException(71, input); throw eee; } cnt71++; } pushFollow(FOLLOW_ellipsisParameterDecl_in_formalParameterDecls4011); e2=ellipsisParameterDecl(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { (e2!=null?((JavaParser.ellipsisParameterDecl_return)e2).param:null).setStart(lastComma.getStart()); (e2!=null?((JavaParser.ellipsisParameterDecl_return)e2).param:null).setStartComma(lastComma); retval.params.addParameter((e2!=null?((JavaParser.ellipsisParameterDecl_return)e2).param:null)); } } break; } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { updateOnAfter(retval.params, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 39, formalParameterDecls_StartIndex); } } return retval; } // $ANTLR end "formalParameterDecls" public static class normalParameterDecl_return extends ParserRuleReturnScope { public NormalParameterDescr param; }; // $ANTLR start "normalParameterDecl" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1041:1: normalParameterDecl returns [ NormalParameterDescr param ] : variableModifiers type i= IDENTIFIER (p1= '[' p2= ']' )* ; public final JavaParser.normalParameterDecl_return normalParameterDecl() throws RecognitionException { JavaParser.normalParameterDecl_return retval = new JavaParser.normalParameterDecl_return(); retval.start = input.LT(1); int normalParameterDecl_StartIndex = input.index(); Token i=null; Token p1=null; Token p2=null; retval.param = null; if (!isBacktracking()) { log("Start NormalParameterDeclaration"); retval.param = new NormalParameterDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((retval.start)), position((retval.start))); context.push(retval.param); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 40) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1058:5: ( variableModifiers type i= IDENTIFIER (p1= '[' p2= ']' )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1058:9: variableModifiers type i= IDENTIFIER (p1= '[' p2= ']' )* { pushFollow(FOLLOW_variableModifiers_in_normalParameterDecl4056); variableModifiers(); state._fsp--; if (state.failed) return retval; pushFollow(FOLLOW_type_in_normalParameterDecl4058); type(); state._fsp--; if (state.failed) return retval; i=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_normalParameterDecl4062); if (state.failed) return retval; if ( state.backtracking==0 ) {retval.param.setIdentifier(new IdentifierDescr((i!=null?i.getText():null), start((CommonToken)i), stop((CommonToken)i), line(i), position(i))); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1059:9: (p1= '[' p2= ']' )* loop73: while (true) { int alt73=2; int LA73_0 = input.LA(1); if ( (LA73_0==LBRACKET) ) { alt73=1; } switch (alt73) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1059:10: p1= '[' p2= ']' { p1=(Token)match(input,LBRACKET,FOLLOW_LBRACKET_in_normalParameterDecl4077); if (state.failed) return retval; p2=(Token)match(input,RBRACKET,FOLLOW_RBRACKET_in_normalParameterDecl4081); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.param.addDimension(new DimensionDescr("", start((CommonToken)p1), stop((CommonToken)p2), line(p1), position(p1), new JavaTokenDescr(ElementType.JAVA_LBRACKET, (p1!=null?p1.getText():null), start((CommonToken)p1), stop((CommonToken)p1), line(p1), position(p1)), new JavaTokenDescr(ElementType.JAVA_RBRACKET, (p2!=null?p2.getText():null), start((CommonToken)p2), stop((CommonToken)p2), line(p2), position(p2)))); } } break; default : break loop73; } } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { retval.param = popNormalParameter(); if (retval.param != null) { updateOnAfter(retval.param, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); } else { //TODO warning, by construction current param is expected } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 40, normalParameterDecl_StartIndex); } } return retval; } // $ANTLR end "normalParameterDecl" public static class ellipsisParameterDecl_return extends ParserRuleReturnScope { public EllipsisParameterDescr param; }; // $ANTLR start "ellipsisParameterDecl" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1066:1: ellipsisParameterDecl returns [ EllipsisParameterDescr param ] : variableModifiers type e= '...' i= IDENTIFIER ; public final JavaParser.ellipsisParameterDecl_return ellipsisParameterDecl() throws RecognitionException { JavaParser.ellipsisParameterDecl_return retval = new JavaParser.ellipsisParameterDecl_return(); retval.start = input.LT(1); int ellipsisParameterDecl_StartIndex = input.index(); Token e=null; Token i=null; retval.param = null; if (!isBacktracking()) { log("Start EllipsisParameterDeclarationDesc"); retval.param = new EllipsisParameterDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((retval.start)), position((retval.start))); context.push(retval.param); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 41) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1084:5: ( variableModifiers type e= '...' i= IDENTIFIER ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1084:9: variableModifiers type e= '...' i= IDENTIFIER { pushFollow(FOLLOW_variableModifiers_in_ellipsisParameterDecl4139); variableModifiers(); state._fsp--; if (state.failed) return retval; pushFollow(FOLLOW_type_in_ellipsisParameterDecl4149); type(); state._fsp--; if (state.failed) return retval; e=(Token)match(input,ELLIPSIS,FOLLOW_ELLIPSIS_in_ellipsisParameterDecl4154); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.param.setEllipsisToken(new JavaTokenDescr(ElementType.JAVA_ELLIPSIS, (e!=null?e.getText():null), start((CommonToken)e), stop((CommonToken)e), line(e), position(e))); } i=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_ellipsisParameterDecl4168); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.param.setIdentifier(new IdentifierDescr((i!=null?i.getText():null), start((CommonToken)i), stop((CommonToken)i), line(i), position(i))); } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { retval.param = popEllipsisParameter(); if (retval.param != null) { updateOnAfter(retval.param, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); } else { //TODO warning, by construction current ellipsis parameterDesc is expected } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 41, ellipsisParameterDecl_StartIndex); } } return retval; } // $ANTLR end "ellipsisParameterDecl" // $ANTLR start "explicitConstructorInvocation" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1090:1: explicitConstructorInvocation : ( ( nonWildcardTypeArguments )? ( 'this' | 'super' ) arguments ';' | primary '.' ( nonWildcardTypeArguments )? 'super' arguments ';' ); public final void explicitConstructorInvocation() throws RecognitionException { int explicitConstructorInvocation_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 42) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1091:5: ( ( nonWildcardTypeArguments )? ( 'this' | 'super' ) arguments ';' | primary '.' ( nonWildcardTypeArguments )? 'super' arguments ';' ) int alt76=2; switch ( input.LA(1) ) { case LT: { alt76=1; } break; case THIS: { int LA76_2 = input.LA(2); if ( (synpred103_Java()) ) { alt76=1; } else if ( (true) ) { alt76=2; } } break; case BOOLEAN: case BYTE: case CHAR: case CHARLITERAL: case DOUBLE: case DOUBLELITERAL: case FALSE: case FLOAT: case FLOATLITERAL: case IDENTIFIER: case INT: case INTLITERAL: case LONG: case LONGLITERAL: case LPAREN: case NEW: case NULL: case SHORT: case STRINGLITERAL: case TRUE: case VOID: { alt76=2; } break; case SUPER: { int LA76_4 = input.LA(2); if ( (synpred103_Java()) ) { alt76=1; } else if ( (true) ) { alt76=2; } } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 76, 0, input); throw nvae; } switch (alt76) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1091:9: ( nonWildcardTypeArguments )? ( 'this' | 'super' ) arguments ';' { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1091:9: ( nonWildcardTypeArguments )? int alt74=2; int LA74_0 = input.LA(1); if ( (LA74_0==LT) ) { alt74=1; } switch (alt74) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1091:10: nonWildcardTypeArguments { pushFollow(FOLLOW_nonWildcardTypeArguments_in_explicitConstructorInvocation4192); nonWildcardTypeArguments(); state._fsp--; if (state.failed) return; } break; } if ( input.LA(1)==SUPER||input.LA(1)==THIS ) { input.consume(); state.errorRecovery=false; state.failed=false; } else { if (state.backtracking>0) {state.failed=true; return;} MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } pushFollow(FOLLOW_arguments_in_explicitConstructorInvocation4250); arguments(); state._fsp--; if (state.failed) return; match(input,SEMI,FOLLOW_SEMI_in_explicitConstructorInvocation4252); if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1098:9: primary '.' ( nonWildcardTypeArguments )? 'super' arguments ';' { pushFollow(FOLLOW_primary_in_explicitConstructorInvocation4263); primary(); state._fsp--; if (state.failed) return; match(input,DOT,FOLLOW_DOT_in_explicitConstructorInvocation4273); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1100:9: ( nonWildcardTypeArguments )? int alt75=2; int LA75_0 = input.LA(1); if ( (LA75_0==LT) ) { alt75=1; } switch (alt75) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1100:10: nonWildcardTypeArguments { pushFollow(FOLLOW_nonWildcardTypeArguments_in_explicitConstructorInvocation4284); nonWildcardTypeArguments(); state._fsp--; if (state.failed) return; } break; } match(input,SUPER,FOLLOW_SUPER_in_explicitConstructorInvocation4305); if (state.failed) return; pushFollow(FOLLOW_arguments_in_explicitConstructorInvocation4315); arguments(); state._fsp--; if (state.failed) return; match(input,SEMI,FOLLOW_SEMI_in_explicitConstructorInvocation4317); if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 42, explicitConstructorInvocation_StartIndex); } } } // $ANTLR end "explicitConstructorInvocation" public static class qualifiedName_return extends ParserRuleReturnScope { public QualifiedNameDescr qnameDec; }; // $ANTLR start "qualifiedName" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1106:1: qualifiedName returns [ QualifiedNameDescr qnameDec ] : id1= IDENTIFIER ( '.' id2= IDENTIFIER )* ; public final JavaParser.qualifiedName_return qualifiedName() throws RecognitionException { JavaParser.qualifiedName_return retval = new JavaParser.qualifiedName_return(); retval.start = input.LT(1); int qualifiedName_StartIndex = input.index(); Token id1=null; Token id2=null; retval.qnameDec = null; if (!isBacktracking()) { log("Start qualifiedName declaration"); retval.qnameDec = new QualifiedNameDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((retval.start)), position((retval.start))); context.push(retval.qnameDec); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 43) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1124:5: (id1= IDENTIFIER ( '.' id2= IDENTIFIER )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1124:9: id1= IDENTIFIER ( '.' id2= IDENTIFIER )* { id1=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_qualifiedName4362); if (state.failed) return retval; if ( state.backtracking==0 ) { /* simplification by now I won't process the qualified name in parts retval.qnameDec.addPart( new IdentifierDescr((id1!=null?id1.getText():null), start((CommonToken)id1), stop((CommonToken)id1),line(id1), position(id1)) ); */ } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1125:9: ( '.' id2= IDENTIFIER )* loop77: while (true) { int alt77=2; int LA77_0 = input.LA(1); if ( (LA77_0==DOT) ) { alt77=1; } switch (alt77) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1125:10: '.' id2= IDENTIFIER { match(input,DOT,FOLLOW_DOT_in_qualifiedName4375); if (state.failed) return retval; id2=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_qualifiedName4379); if (state.failed) return retval; if ( state.backtracking==0 ) { /* retval.qnameDec.addPart( new IdentifierDescr((id2!=null?id2.getText():null), start((CommonToken)id2), stop((CommonToken)id2), line(id2), position(id2)) ); */ } } break; default : break loop77; } } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { retval.qnameDec = popQualifiedName(); if (retval.qnameDec != null) { updateOnAfter(retval.qnameDec, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); processQualifiedName(retval.qnameDec); } else { //TODO warning, by construction current qualifiedname param is expected } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 43, qualifiedName_StartIndex); } } return retval; } // $ANTLR end "qualifiedName" // $ANTLR start "annotations" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1129:1: annotations : ( annotation )+ ; public final void annotations() throws RecognitionException { int annotations_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 44) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1130:5: ( ( annotation )+ ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1130:9: ( annotation )+ { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1130:9: ( annotation )+ int cnt78=0; loop78: while (true) { int alt78=2; int LA78_0 = input.LA(1); if ( (LA78_0==MONKEYS_AT) ) { alt78=1; } switch (alt78) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1130:10: annotation { pushFollow(FOLLOW_annotation_in_annotations4413); annotation(); state._fsp--; if (state.failed) return; } break; default : if ( cnt78 >= 1 ) break loop78; if (state.backtracking>0) {state.failed=true; return;} EarlyExitException eee = new EarlyExitException(78, input); throw eee; } cnt78++; } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 44, annotations_StartIndex); } } } // $ANTLR end "annotations" public static class annotation_return extends ParserRuleReturnScope { public AnnotationDescr annotationDescr; }; // $ANTLR start "annotation" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1138:1: annotation returns [ AnnotationDescr annotationDescr ] : at= '@' q= qualifiedName (lp= '(' (vp= elementValuePairs |ev= elementValue )? rp= ')' )? ; public final JavaParser.annotation_return annotation() throws RecognitionException { JavaParser.annotation_return retval = new JavaParser.annotation_return(); retval.start = input.LT(1); int annotation_StartIndex = input.index(); Token at=null; Token lp=null; Token rp=null; ParserRuleReturnScope q =null; ParserRuleReturnScope vp =null; ParserRuleReturnScope ev =null; retval.annotationDescr = null; if (!isBacktracking()) { log("Start annotation declaration"); retval.annotationDescr = new AnnotationDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((retval.start)), position((retval.start))); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 45) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1153:5: (at= '@' q= qualifiedName (lp= '(' (vp= elementValuePairs |ev= elementValue )? rp= ')' )? ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1153:9: at= '@' q= qualifiedName (lp= '(' (vp= elementValuePairs |ev= elementValue )? rp= ')' )? { at=(Token)match(input,MONKEYS_AT,FOLLOW_MONKEYS_AT_in_annotation4469); if (state.failed) return retval; pushFollow(FOLLOW_qualifiedName_in_annotation4473); q=qualifiedName(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { retval.annotationDescr.setStartAt( new JavaTokenDescr(ElementType.JAVA_AT, (at!=null?at.getText():null), start((CommonToken)at), stop((CommonToken)at), line(at), position(at)) ); retval.annotationDescr.setQualifiedName( (q!=null?((JavaParser.qualifiedName_return)q).qnameDec:null) ); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1157:9: (lp= '(' (vp= elementValuePairs |ev= elementValue )? rp= ')' )? int alt80=2; int LA80_0 = input.LA(1); if ( (LA80_0==LPAREN) ) { alt80=1; } switch (alt80) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1157:13: lp= '(' (vp= elementValuePairs |ev= elementValue )? rp= ')' { lp=(Token)match(input,LPAREN,FOLLOW_LPAREN_in_annotation4491); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.annotationDescr.setParamsStartParen( new JavaTokenDescr(ElementType.JAVA_LPAREN, (lp!=null?lp.getText():null), start((CommonToken)lp), stop((CommonToken)lp), line(lp), position(lp)) ); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1158:19: (vp= elementValuePairs |ev= elementValue )? int alt79=3; int LA79_0 = input.LA(1); if ( (LA79_0==IDENTIFIER) ) { int LA79_1 = input.LA(2); if ( (LA79_1==EQ) ) { alt79=1; } else if ( ((LA79_1 >= AMP && LA79_1 <= AMPAMP)||(LA79_1 >= BANGEQ && LA79_1 <= BARBAR)||LA79_1==CARET||LA79_1==DOT||LA79_1==EQEQ||LA79_1==GT||LA79_1==INSTANCEOF||LA79_1==LBRACKET||(LA79_1 >= LPAREN && LA79_1 <= LT)||LA79_1==PERCENT||LA79_1==PLUS||LA79_1==PLUSPLUS||LA79_1==QUES||LA79_1==RPAREN||LA79_1==SLASH||LA79_1==STAR||LA79_1==SUB||LA79_1==SUBSUB) ) { alt79=2; } } else if ( (LA79_0==BANG||LA79_0==BOOLEAN||LA79_0==BYTE||(LA79_0 >= CHAR && LA79_0 <= CHARLITERAL)||(LA79_0 >= DOUBLE && LA79_0 <= DOUBLELITERAL)||LA79_0==FALSE||(LA79_0 >= FLOAT && LA79_0 <= FLOATLITERAL)||LA79_0==INT||LA79_0==INTLITERAL||LA79_0==LBRACE||(LA79_0 >= LONG && LA79_0 <= LPAREN)||LA79_0==MONKEYS_AT||(LA79_0 >= NEW && LA79_0 <= NULL)||LA79_0==PLUS||LA79_0==PLUSPLUS||LA79_0==SHORT||(LA79_0 >= STRINGLITERAL && LA79_0 <= SUB)||(LA79_0 >= SUBSUB && LA79_0 <= SUPER)||LA79_0==THIS||LA79_0==TILDE||LA79_0==TRUE||LA79_0==VOID) ) { alt79=2; } switch (alt79) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1158:23: vp= elementValuePairs { pushFollow(FOLLOW_elementValuePairs_in_annotation4519); vp=elementValuePairs(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { if ((vp!=null?((JavaParser.elementValuePairs_return)vp).values:null) != null && (vp!=null?((JavaParser.elementValuePairs_return)vp).values:null).size() > 0) retval.annotationDescr.setElementValuePairs((vp!=null?((JavaParser.elementValuePairs_return)vp).values:null)); } } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1159:23: ev= elementValue { pushFollow(FOLLOW_elementValue_in_annotation4547); ev=elementValue(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { if ((ev!=null?((JavaParser.elementValue_return)ev).value:null) != null) retval.annotationDescr.setElementValue((ev!=null?((JavaParser.elementValue_return)ev).value:null)); } } break; } rp=(Token)match(input,RPAREN,FOLLOW_RPAREN_in_annotation4587); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.annotationDescr.setParamsStopParen( new JavaTokenDescr(ElementType.JAVA_RPAREN, (rp!=null?rp.getText():null), start((CommonToken)rp), stop((CommonToken)rp), line(rp), position(rp)) ); } } break; } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { if (retval.annotationDescr != null) { updateOnAfter(retval.annotationDescr, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); } else { //TODO warning, by construction current an annotation is expected } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 45, annotation_StartIndex); } } return retval; } // $ANTLR end "annotation" public static class elementValuePairs_return extends ParserRuleReturnScope { public ElementValuePairListDescr values; }; // $ANTLR start "elementValuePairs" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1165:1: elementValuePairs returns [ ElementValuePairListDescr values ] : e1= elementValuePair (c= ',' e2= elementValuePair )* ; public final JavaParser.elementValuePairs_return elementValuePairs() throws RecognitionException { JavaParser.elementValuePairs_return retval = new JavaParser.elementValuePairs_return(); retval.start = input.LT(1); int elementValuePairs_StartIndex = input.index(); Token c=null; ParserRuleReturnScope e1 =null; ParserRuleReturnScope e2 =null; retval.values = null; if (!isBacktracking()) { log("Start elementValuePairs declaration"); retval.values = new ElementValuePairListDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((retval.start)), position((retval.start))); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 46) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1180:5: (e1= elementValuePair (c= ',' e2= elementValuePair )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1180:9: e1= elementValuePair (c= ',' e2= elementValuePair )* { pushFollow(FOLLOW_elementValuePair_in_elementValuePairs4643); e1=elementValuePair(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { retval.values.addValuePair( (e1!=null?((JavaParser.elementValuePair_return)e1).valuePair:null) ); } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1181:9: (c= ',' e2= elementValuePair )* loop81: while (true) { int alt81=2; int LA81_0 = input.LA(1); if ( (LA81_0==COMMA) ) { alt81=1; } switch (alt81) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1181:10: c= ',' e2= elementValuePair { c=(Token)match(input,COMMA,FOLLOW_COMMA_in_elementValuePairs4658); if (state.failed) return retval; pushFollow(FOLLOW_elementValuePair_in_elementValuePairs4662); e2=elementValuePair(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { JavaTokenDescr comma = new JavaTokenDescr(ElementType.JAVA_COMMA, (c!=null?c.getText():null), start((CommonToken)c), stop((CommonToken)c), line(c), position(c)); (e2!=null?((JavaParser.elementValuePair_return)e2).valuePair:null).setStartComma(comma); (e2!=null?((JavaParser.elementValuePair_return)e2).valuePair:null).setStart(comma.getStart()); retval.values.addValuePair((e2!=null?((JavaParser.elementValuePair_return)e2).valuePair:null)); } } break; default : break loop81; } } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { if (retval.values != null) { updateOnAfter(retval.values, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); } else { //TODO warning, by construction current elementValuePairs is expected } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 46, elementValuePairs_StartIndex); } } return retval; } // $ANTLR end "elementValuePairs" public static class elementValuePair_return extends ParserRuleReturnScope { public ElementValuePairDescr valuePair; }; // $ANTLR start "elementValuePair" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1190:1: elementValuePair returns [ ElementValuePairDescr valuePair ] : id= IDENTIFIER e= '=' v= elementValue ; public final JavaParser.elementValuePair_return elementValuePair() throws RecognitionException { JavaParser.elementValuePair_return retval = new JavaParser.elementValuePair_return(); retval.start = input.LT(1); int elementValuePair_StartIndex = input.index(); Token id=null; Token e=null; ParserRuleReturnScope v =null; retval.valuePair = null; if (!isBacktracking()) { log("Start elementValuePair declaration"); retval.valuePair = new ElementValuePairDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((retval.start)), position((retval.start))); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 47) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1205:5: (id= IDENTIFIER e= '=' v= elementValue ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1205:9: id= IDENTIFIER e= '=' v= elementValue { id=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_elementValuePair4718); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.valuePair.setIdentifier( new IdentifierDescr((id!=null?id.getText():null), start((CommonToken)id), stop((CommonToken)id),line(id), position(id)) ); } e=(Token)match(input,EQ,FOLLOW_EQ_in_elementValuePair4734); if (state.failed) return retval; if ( state.backtracking==0 ) { retval.valuePair.setEqualsSign( new JavaTokenDescr(ElementType.JAVA_EQUALS, (e!=null?e.getText():null), start((CommonToken)e), stop((CommonToken)e), line(e), position(e)) ); } pushFollow(FOLLOW_elementValue_in_elementValuePair4758); v=elementValue(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) { retval.valuePair.setValue( (v!=null?((JavaParser.elementValue_return)v).value:null) ); } } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { if (retval.valuePair != null) { updateOnAfter(retval.valuePair, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); } else { //TODO warning, by construction current elementValuePair is expected } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 47, elementValuePair_StartIndex); } } return retval; } // $ANTLR end "elementValuePair" public static class elementValue_return extends ParserRuleReturnScope { public ElementValueDescr value; }; // $ANTLR start "elementValue" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1210:1: elementValue returns [ ElementValueDescr value ] : ( conditionalExpression | annotation | elementValueArrayInitializer ); public final JavaParser.elementValue_return elementValue() throws RecognitionException { JavaParser.elementValue_return retval = new JavaParser.elementValue_return(); retval.start = input.LT(1); int elementValue_StartIndex = input.index(); retval.value = null; if (!isBacktracking()) { log("Start elementValue declaration"); retval.value = new ElementValueDescr(input.toString(retval.start,input.LT(-1)), start((CommonToken)(retval.start)), -1, line((retval.start)), position((retval.start))); } try { if ( state.backtracking>0 && alreadyParsedRule(input, 48) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1225:5: ( conditionalExpression | annotation | elementValueArrayInitializer ) int alt82=3; switch ( input.LA(1) ) { case BANG: case BOOLEAN: case BYTE: case CHAR: case CHARLITERAL: case DOUBLE: case DOUBLELITERAL: case FALSE: case FLOAT: case FLOATLITERAL: case IDENTIFIER: case INT: case INTLITERAL: case LONG: case LONGLITERAL: case LPAREN: case NEW: case NULL: case PLUS: case PLUSPLUS: case SHORT: case STRINGLITERAL: case SUB: case SUBSUB: case SUPER: case THIS: case TILDE: case TRUE: case VOID: { alt82=1; } break; case MONKEYS_AT: { alt82=2; } break; case LBRACE: { alt82=3; } break; default: if (state.backtracking>0) {state.failed=true; return retval;} NoViableAltException nvae = new NoViableAltException("", 82, 0, input); throw nvae; } switch (alt82) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1225:9: conditionalExpression { pushFollow(FOLLOW_conditionalExpression_in_elementValue4802); conditionalExpression(); state._fsp--; if (state.failed) return retval; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1226:9: annotation { pushFollow(FOLLOW_annotation_in_elementValue4812); annotation(); state._fsp--; if (state.failed) return retval; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1227:9: elementValueArrayInitializer { pushFollow(FOLLOW_elementValueArrayInitializer_in_elementValue4822); elementValueArrayInitializer(); state._fsp--; if (state.failed) return retval; } break; } retval.stop = input.LT(-1); if ( state.backtracking==0 ) { if (retval.value != null) { updateOnAfter(retval.value, input.toString(retval.start,input.LT(-1)), (CommonToken)(retval.stop)); } else { //TODO warning, by construction current elementValue is expected } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 48, elementValue_StartIndex); } } return retval; } // $ANTLR end "elementValue" // $ANTLR start "elementValueArrayInitializer" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1230:1: elementValueArrayInitializer : '{' ( elementValue ( ',' elementValue )* )? ( ',' )? '}' ; public final void elementValueArrayInitializer() throws RecognitionException { int elementValueArrayInitializer_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 49) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1231:5: ( '{' ( elementValue ( ',' elementValue )* )? ( ',' )? '}' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1231:9: '{' ( elementValue ( ',' elementValue )* )? ( ',' )? '}' { match(input,LBRACE,FOLLOW_LBRACE_in_elementValueArrayInitializer4842); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1232:9: ( elementValue ( ',' elementValue )* )? int alt84=2; int LA84_0 = input.LA(1); if ( (LA84_0==BANG||LA84_0==BOOLEAN||LA84_0==BYTE||(LA84_0 >= CHAR && LA84_0 <= CHARLITERAL)||(LA84_0 >= DOUBLE && LA84_0 <= DOUBLELITERAL)||LA84_0==FALSE||(LA84_0 >= FLOAT && LA84_0 <= FLOATLITERAL)||LA84_0==IDENTIFIER||LA84_0==INT||LA84_0==INTLITERAL||LA84_0==LBRACE||(LA84_0 >= LONG && LA84_0 <= LPAREN)||LA84_0==MONKEYS_AT||(LA84_0 >= NEW && LA84_0 <= NULL)||LA84_0==PLUS||LA84_0==PLUSPLUS||LA84_0==SHORT||(LA84_0 >= STRINGLITERAL && LA84_0 <= SUB)||(LA84_0 >= SUBSUB && LA84_0 <= SUPER)||LA84_0==THIS||LA84_0==TILDE||LA84_0==TRUE||LA84_0==VOID) ) { alt84=1; } switch (alt84) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1232:10: elementValue ( ',' elementValue )* { pushFollow(FOLLOW_elementValue_in_elementValueArrayInitializer4853); elementValue(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1233:13: ( ',' elementValue )* loop83: while (true) { int alt83=2; int LA83_0 = input.LA(1); if ( (LA83_0==COMMA) ) { int LA83_1 = input.LA(2); if ( (LA83_1==BANG||LA83_1==BOOLEAN||LA83_1==BYTE||(LA83_1 >= CHAR && LA83_1 <= CHARLITERAL)||(LA83_1 >= DOUBLE && LA83_1 <= DOUBLELITERAL)||LA83_1==FALSE||(LA83_1 >= FLOAT && LA83_1 <= FLOATLITERAL)||LA83_1==IDENTIFIER||LA83_1==INT||LA83_1==INTLITERAL||LA83_1==LBRACE||(LA83_1 >= LONG && LA83_1 <= LPAREN)||LA83_1==MONKEYS_AT||(LA83_1 >= NEW && LA83_1 <= NULL)||LA83_1==PLUS||LA83_1==PLUSPLUS||LA83_1==SHORT||(LA83_1 >= STRINGLITERAL && LA83_1 <= SUB)||(LA83_1 >= SUBSUB && LA83_1 <= SUPER)||LA83_1==THIS||LA83_1==TILDE||LA83_1==TRUE||LA83_1==VOID) ) { alt83=1; } } switch (alt83) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1233:14: ',' elementValue { match(input,COMMA,FOLLOW_COMMA_in_elementValueArrayInitializer4868); if (state.failed) return; pushFollow(FOLLOW_elementValue_in_elementValueArrayInitializer4870); elementValue(); state._fsp--; if (state.failed) return; } break; default : break loop83; } } } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1235:12: ( ',' )? int alt85=2; int LA85_0 = input.LA(1); if ( (LA85_0==COMMA) ) { alt85=1; } switch (alt85) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1235:13: ',' { match(input,COMMA,FOLLOW_COMMA_in_elementValueArrayInitializer4899); if (state.failed) return; } break; } match(input,RBRACE,FOLLOW_RBRACE_in_elementValueArrayInitializer4903); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 49, elementValueArrayInitializer_StartIndex); } } } // $ANTLR end "elementValueArrayInitializer" // $ANTLR start "annotationTypeDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1242:1: annotationTypeDeclaration : modifiers '@' 'interface' IDENTIFIER annotationTypeBody ; public final void annotationTypeDeclaration() throws RecognitionException { int annotationTypeDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 50) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1243:5: ( modifiers '@' 'interface' IDENTIFIER annotationTypeBody ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1243:9: modifiers '@' 'interface' IDENTIFIER annotationTypeBody { pushFollow(FOLLOW_modifiers_in_annotationTypeDeclaration4926); modifiers(); state._fsp--; if (state.failed) return; match(input,MONKEYS_AT,FOLLOW_MONKEYS_AT_in_annotationTypeDeclaration4928); if (state.failed) return; match(input,INTERFACE,FOLLOW_INTERFACE_in_annotationTypeDeclaration4938); if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_annotationTypeDeclaration4948); if (state.failed) return; pushFollow(FOLLOW_annotationTypeBody_in_annotationTypeDeclaration4958); annotationTypeBody(); state._fsp--; if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 50, annotationTypeDeclaration_StartIndex); } } } // $ANTLR end "annotationTypeDeclaration" // $ANTLR start "annotationTypeBody" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1250:1: annotationTypeBody : '{' ( annotationTypeElementDeclaration )* '}' ; public final void annotationTypeBody() throws RecognitionException { int annotationTypeBody_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 51) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1251:5: ( '{' ( annotationTypeElementDeclaration )* '}' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1251:9: '{' ( annotationTypeElementDeclaration )* '}' { match(input,LBRACE,FOLLOW_LBRACE_in_annotationTypeBody4979); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1252:9: ( annotationTypeElementDeclaration )* loop86: while (true) { int alt86=2; int LA86_0 = input.LA(1); if ( (LA86_0==ABSTRACT||LA86_0==BOOLEAN||LA86_0==BYTE||LA86_0==CHAR||LA86_0==CLASS||LA86_0==DOUBLE||LA86_0==ENUM||LA86_0==FINAL||LA86_0==FLOAT||LA86_0==IDENTIFIER||(LA86_0 >= INT && LA86_0 <= INTERFACE)||LA86_0==LONG||LA86_0==LT||(LA86_0 >= MONKEYS_AT && LA86_0 <= NATIVE)||(LA86_0 >= PRIVATE && LA86_0 <= PUBLIC)||(LA86_0 >= SEMI && LA86_0 <= SHORT)||(LA86_0 >= STATIC && LA86_0 <= STRICTFP)||LA86_0==SYNCHRONIZED||LA86_0==TRANSIENT||(LA86_0 >= VOID && LA86_0 <= VOLATILE)) ) { alt86=1; } switch (alt86) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1252:10: annotationTypeElementDeclaration { pushFollow(FOLLOW_annotationTypeElementDeclaration_in_annotationTypeBody4991); annotationTypeElementDeclaration(); state._fsp--; if (state.failed) return; } break; default : break loop86; } } match(input,RBRACE,FOLLOW_RBRACE_in_annotationTypeBody5013); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 51, annotationTypeBody_StartIndex); } } } // $ANTLR end "annotationTypeBody" // $ANTLR start "annotationTypeElementDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1260:1: annotationTypeElementDeclaration : ( annotationMethodDeclaration | interfaceFieldDeclaration | normalClassDeclaration | normalInterfaceDeclaration | enumDeclaration | annotationTypeDeclaration | ';' ); public final void annotationTypeElementDeclaration() throws RecognitionException { int annotationTypeElementDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 52) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1261:5: ( annotationMethodDeclaration | interfaceFieldDeclaration | normalClassDeclaration | normalInterfaceDeclaration | enumDeclaration | annotationTypeDeclaration | ';' ) int alt87=7; switch ( input.LA(1) ) { case MONKEYS_AT: { int LA87_1 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else if ( (synpred119_Java()) ) { alt87=3; } else if ( (synpred120_Java()) ) { alt87=4; } else if ( (synpred121_Java()) ) { alt87=5; } else if ( (synpred122_Java()) ) { alt87=6; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 1, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case PUBLIC: { int LA87_2 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else if ( (synpred119_Java()) ) { alt87=3; } else if ( (synpred120_Java()) ) { alt87=4; } else if ( (synpred121_Java()) ) { alt87=5; } else if ( (synpred122_Java()) ) { alt87=6; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 2, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case PROTECTED: { int LA87_3 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else if ( (synpred119_Java()) ) { alt87=3; } else if ( (synpred120_Java()) ) { alt87=4; } else if ( (synpred121_Java()) ) { alt87=5; } else if ( (synpred122_Java()) ) { alt87=6; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 3, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case PRIVATE: { int LA87_4 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else if ( (synpred119_Java()) ) { alt87=3; } else if ( (synpred120_Java()) ) { alt87=4; } else if ( (synpred121_Java()) ) { alt87=5; } else if ( (synpred122_Java()) ) { alt87=6; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 4, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case STATIC: { int LA87_5 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else if ( (synpred119_Java()) ) { alt87=3; } else if ( (synpred120_Java()) ) { alt87=4; } else if ( (synpred121_Java()) ) { alt87=5; } else if ( (synpred122_Java()) ) { alt87=6; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 5, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case ABSTRACT: { int LA87_6 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else if ( (synpred119_Java()) ) { alt87=3; } else if ( (synpred120_Java()) ) { alt87=4; } else if ( (synpred121_Java()) ) { alt87=5; } else if ( (synpred122_Java()) ) { alt87=6; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 6, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case FINAL: { int LA87_7 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else if ( (synpred119_Java()) ) { alt87=3; } else if ( (synpred120_Java()) ) { alt87=4; } else if ( (synpred121_Java()) ) { alt87=5; } else if ( (synpred122_Java()) ) { alt87=6; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 7, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case NATIVE: { int LA87_8 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else if ( (synpred119_Java()) ) { alt87=3; } else if ( (synpred120_Java()) ) { alt87=4; } else if ( (synpred121_Java()) ) { alt87=5; } else if ( (synpred122_Java()) ) { alt87=6; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 8, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case SYNCHRONIZED: { int LA87_9 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else if ( (synpred119_Java()) ) { alt87=3; } else if ( (synpred120_Java()) ) { alt87=4; } else if ( (synpred121_Java()) ) { alt87=5; } else if ( (synpred122_Java()) ) { alt87=6; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 9, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case TRANSIENT: { int LA87_10 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else if ( (synpred119_Java()) ) { alt87=3; } else if ( (synpred120_Java()) ) { alt87=4; } else if ( (synpred121_Java()) ) { alt87=5; } else if ( (synpred122_Java()) ) { alt87=6; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 10, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case VOLATILE: { int LA87_11 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else if ( (synpred119_Java()) ) { alt87=3; } else if ( (synpred120_Java()) ) { alt87=4; } else if ( (synpred121_Java()) ) { alt87=5; } else if ( (synpred122_Java()) ) { alt87=6; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 11, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case STRICTFP: { int LA87_12 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else if ( (synpred119_Java()) ) { alt87=3; } else if ( (synpred120_Java()) ) { alt87=4; } else if ( (synpred121_Java()) ) { alt87=5; } else if ( (synpred122_Java()) ) { alt87=6; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 12, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case IDENTIFIER: { int LA87_13 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 13, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: { int LA87_14 = input.LA(2); if ( (synpred117_Java()) ) { alt87=1; } else if ( (synpred118_Java()) ) { alt87=2; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 87, 14, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case CLASS: { alt87=3; } break; case INTERFACE: { alt87=4; } break; case ENUM: { alt87=5; } break; case SEMI: { alt87=7; } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 87, 0, input); throw nvae; } switch (alt87) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1261:9: annotationMethodDeclaration { pushFollow(FOLLOW_annotationMethodDeclaration_in_annotationTypeElementDeclaration5035); annotationMethodDeclaration(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1262:9: interfaceFieldDeclaration { pushFollow(FOLLOW_interfaceFieldDeclaration_in_annotationTypeElementDeclaration5045); interfaceFieldDeclaration(); state._fsp--; if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1263:9: normalClassDeclaration { pushFollow(FOLLOW_normalClassDeclaration_in_annotationTypeElementDeclaration5055); normalClassDeclaration(); state._fsp--; if (state.failed) return; } break; case 4 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1264:9: normalInterfaceDeclaration { pushFollow(FOLLOW_normalInterfaceDeclaration_in_annotationTypeElementDeclaration5065); normalInterfaceDeclaration(); state._fsp--; if (state.failed) return; } break; case 5 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1265:9: enumDeclaration { pushFollow(FOLLOW_enumDeclaration_in_annotationTypeElementDeclaration5075); enumDeclaration(); state._fsp--; if (state.failed) return; } break; case 6 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1266:9: annotationTypeDeclaration { pushFollow(FOLLOW_annotationTypeDeclaration_in_annotationTypeElementDeclaration5085); annotationTypeDeclaration(); state._fsp--; if (state.failed) return; } break; case 7 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1267:9: ';' { match(input,SEMI,FOLLOW_SEMI_in_annotationTypeElementDeclaration5095); if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 52, annotationTypeElementDeclaration_StartIndex); } } } // $ANTLR end "annotationTypeElementDeclaration" // $ANTLR start "annotationMethodDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1270:1: annotationMethodDeclaration : modifiers type IDENTIFIER '(' ')' ( 'default' elementValue )? ';' ; public final void annotationMethodDeclaration() throws RecognitionException { int annotationMethodDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 53) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1271:5: ( modifiers type IDENTIFIER '(' ')' ( 'default' elementValue )? ';' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1271:9: modifiers type IDENTIFIER '(' ')' ( 'default' elementValue )? ';' { pushFollow(FOLLOW_modifiers_in_annotationMethodDeclaration5115); modifiers(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_type_in_annotationMethodDeclaration5117); type(); state._fsp--; if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_annotationMethodDeclaration5119); if (state.failed) return; match(input,LPAREN,FOLLOW_LPAREN_in_annotationMethodDeclaration5129); if (state.failed) return; match(input,RPAREN,FOLLOW_RPAREN_in_annotationMethodDeclaration5131); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1272:17: ( 'default' elementValue )? int alt88=2; int LA88_0 = input.LA(1); if ( (LA88_0==DEFAULT) ) { alt88=1; } switch (alt88) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1272:18: 'default' elementValue { match(input,DEFAULT,FOLLOW_DEFAULT_in_annotationMethodDeclaration5134); if (state.failed) return; pushFollow(FOLLOW_elementValue_in_annotationMethodDeclaration5136); elementValue(); state._fsp--; if (state.failed) return; } break; } match(input,SEMI,FOLLOW_SEMI_in_annotationMethodDeclaration5165); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 53, annotationMethodDeclaration_StartIndex); } } } // $ANTLR end "annotationMethodDeclaration" // $ANTLR start "block" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1277:1: block : '{' ( blockStatement )* '}' ; public final void block() throws RecognitionException { int block_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 54) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1278:5: ( '{' ( blockStatement )* '}' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1278:9: '{' ( blockStatement )* '}' { match(input,LBRACE,FOLLOW_LBRACE_in_block5189); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1279:9: ( blockStatement )* loop89: while (true) { int alt89=2; int LA89_0 = input.LA(1); if ( (LA89_0==ABSTRACT||(LA89_0 >= ASSERT && LA89_0 <= BANG)||(LA89_0 >= BOOLEAN && LA89_0 <= BYTE)||(LA89_0 >= CHAR && LA89_0 <= CLASS)||LA89_0==CONTINUE||LA89_0==DO||(LA89_0 >= DOUBLE && LA89_0 <= DOUBLELITERAL)||LA89_0==ENUM||(LA89_0 >= FALSE && LA89_0 <= FINAL)||(LA89_0 >= FLOAT && LA89_0 <= FOR)||(LA89_0 >= IDENTIFIER && LA89_0 <= IF)||(LA89_0 >= INT && LA89_0 <= INTLITERAL)||LA89_0==LBRACE||(LA89_0 >= LONG && LA89_0 <= LT)||(LA89_0 >= MONKEYS_AT && LA89_0 <= NULL)||LA89_0==PLUS||(LA89_0 >= PLUSPLUS && LA89_0 <= PUBLIC)||LA89_0==RETURN||(LA89_0 >= SEMI && LA89_0 <= SHORT)||(LA89_0 >= STATIC && LA89_0 <= SUB)||(LA89_0 >= SUBSUB && LA89_0 <= SYNCHRONIZED)||(LA89_0 >= THIS && LA89_0 <= THROW)||(LA89_0 >= TILDE && LA89_0 <= WHILE)) ) { alt89=1; } switch (alt89) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1279:10: blockStatement { pushFollow(FOLLOW_blockStatement_in_block5200); blockStatement(); state._fsp--; if (state.failed) return; } break; default : break loop89; } } match(input,RBRACE,FOLLOW_RBRACE_in_block5221); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 54, block_StartIndex); } } } // $ANTLR end "block" // $ANTLR start "blockStatement" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1308:1: blockStatement : ( localVariableDeclarationStatement | classOrInterfaceDeclaration | statement ); public final void blockStatement() throws RecognitionException { int blockStatement_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 55) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1309:5: ( localVariableDeclarationStatement | classOrInterfaceDeclaration | statement ) int alt90=3; switch ( input.LA(1) ) { case FINAL: { int LA90_1 = input.LA(2); if ( (synpred125_Java()) ) { alt90=1; } else if ( (synpred126_Java()) ) { alt90=2; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 90, 1, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case MONKEYS_AT: { int LA90_2 = input.LA(2); if ( (synpred125_Java()) ) { alt90=1; } else if ( (synpred126_Java()) ) { alt90=2; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 90, 2, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case IDENTIFIER: { int LA90_3 = input.LA(2); if ( (synpred125_Java()) ) { alt90=1; } else if ( (true) ) { alt90=3; } } break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: { int LA90_4 = input.LA(2); if ( (synpred125_Java()) ) { alt90=1; } else if ( (true) ) { alt90=3; } } break; case ABSTRACT: case CLASS: case ENUM: case INTERFACE: case NATIVE: case PRIVATE: case PROTECTED: case PUBLIC: case STATIC: case STRICTFP: case TRANSIENT: case VOLATILE: { alt90=2; } break; case SYNCHRONIZED: { int LA90_11 = input.LA(2); if ( (synpred126_Java()) ) { alt90=2; } else if ( (true) ) { alt90=3; } } break; case ASSERT: case BANG: case BREAK: case CHARLITERAL: case CONTINUE: case DO: case DOUBLELITERAL: case FALSE: case FLOATLITERAL: case FOR: case IF: case INTLITERAL: case LBRACE: case LONGLITERAL: case LPAREN: case NEW: case NULL: case PLUS: case PLUSPLUS: case RETURN: case SEMI: case STRINGLITERAL: case SUB: case SUBSUB: case SUPER: case SWITCH: case THIS: case THROW: case TILDE: case TRUE: case TRY: case VOID: case WHILE: { alt90=3; } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 90, 0, input); throw nvae; } switch (alt90) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1309:9: localVariableDeclarationStatement { pushFollow(FOLLOW_localVariableDeclarationStatement_in_blockStatement5243); localVariableDeclarationStatement(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1310:9: classOrInterfaceDeclaration { pushFollow(FOLLOW_classOrInterfaceDeclaration_in_blockStatement5253); classOrInterfaceDeclaration(); state._fsp--; if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1311:9: statement { pushFollow(FOLLOW_statement_in_blockStatement5263); statement(); state._fsp--; if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 55, blockStatement_StartIndex); } } } // $ANTLR end "blockStatement" // $ANTLR start "localVariableDeclarationStatement" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1315:1: localVariableDeclarationStatement : localVariableDeclaration ';' ; public final void localVariableDeclarationStatement() throws RecognitionException { int localVariableDeclarationStatement_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 56) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1316:5: ( localVariableDeclaration ';' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1316:9: localVariableDeclaration ';' { pushFollow(FOLLOW_localVariableDeclaration_in_localVariableDeclarationStatement5284); localVariableDeclaration(); state._fsp--; if (state.failed) return; match(input,SEMI,FOLLOW_SEMI_in_localVariableDeclarationStatement5294); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 56, localVariableDeclarationStatement_StartIndex); } } } // $ANTLR end "localVariableDeclarationStatement" // $ANTLR start "localVariableDeclaration" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1320:1: localVariableDeclaration : variableModifiers type variableDeclarator ( ',' variableDeclarator )* ; public final void localVariableDeclaration() throws RecognitionException { int localVariableDeclaration_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 57) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1321:5: ( variableModifiers type variableDeclarator ( ',' variableDeclarator )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1321:9: variableModifiers type variableDeclarator ( ',' variableDeclarator )* { pushFollow(FOLLOW_variableModifiers_in_localVariableDeclaration5314); variableModifiers(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_type_in_localVariableDeclaration5316); type(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_variableDeclarator_in_localVariableDeclaration5326); variableDeclarator(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1323:9: ( ',' variableDeclarator )* loop91: while (true) { int alt91=2; int LA91_0 = input.LA(1); if ( (LA91_0==COMMA) ) { alt91=1; } switch (alt91) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1323:10: ',' variableDeclarator { match(input,COMMA,FOLLOW_COMMA_in_localVariableDeclaration5337); if (state.failed) return; pushFollow(FOLLOW_variableDeclarator_in_localVariableDeclaration5339); variableDeclarator(); state._fsp--; if (state.failed) return; } break; default : break loop91; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 57, localVariableDeclaration_StartIndex); } } } // $ANTLR end "localVariableDeclaration" // $ANTLR start "statement" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1327:1: statement : ( block | ( 'assert' ) expression ( ':' expression )? ';' | 'assert' expression ( ':' expression )? ';' | 'if' parExpression statement ( 'else' statement )? | forstatement | 'while' parExpression statement | 'do' statement 'while' parExpression ';' | trystatement | 'switch' parExpression '{' switchBlockStatementGroups '}' | 'synchronized' parExpression block | 'return' ( expression )? ';' | 'throw' expression ';' | 'break' ( IDENTIFIER )? ';' | 'continue' ( IDENTIFIER )? ';' | expression ';' | IDENTIFIER ':' statement | ';' ); public final void statement() throws RecognitionException { int statement_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 58) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1328:5: ( block | ( 'assert' ) expression ( ':' expression )? ';' | 'assert' expression ( ':' expression )? ';' | 'if' parExpression statement ( 'else' statement )? | forstatement | 'while' parExpression statement | 'do' statement 'while' parExpression ';' | trystatement | 'switch' parExpression '{' switchBlockStatementGroups '}' | 'synchronized' parExpression block | 'return' ( expression )? ';' | 'throw' expression ';' | 'break' ( IDENTIFIER )? ';' | 'continue' ( IDENTIFIER )? ';' | expression ';' | IDENTIFIER ':' statement | ';' ) int alt98=17; switch ( input.LA(1) ) { case LBRACE: { alt98=1; } break; case ASSERT: { int LA98_2 = input.LA(2); if ( (synpred130_Java()) ) { alt98=2; } else if ( (synpred132_Java()) ) { alt98=3; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 98, 2, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case IF: { alt98=4; } break; case FOR: { alt98=5; } break; case WHILE: { alt98=6; } break; case DO: { alt98=7; } break; case TRY: { alt98=8; } break; case SWITCH: { alt98=9; } break; case SYNCHRONIZED: { alt98=10; } break; case RETURN: { alt98=11; } break; case THROW: { alt98=12; } break; case BREAK: { alt98=13; } break; case CONTINUE: { alt98=14; } break; case BANG: case BOOLEAN: case BYTE: case CHAR: case CHARLITERAL: case DOUBLE: case DOUBLELITERAL: case FALSE: case FLOAT: case FLOATLITERAL: case INT: case INTLITERAL: case LONG: case LONGLITERAL: case LPAREN: case NEW: case NULL: case PLUS: case PLUSPLUS: case SHORT: case STRINGLITERAL: case SUB: case SUBSUB: case SUPER: case THIS: case TILDE: case TRUE: case VOID: { alt98=15; } break; case IDENTIFIER: { int LA98_22 = input.LA(2); if ( (synpred148_Java()) ) { alt98=15; } else if ( (synpred149_Java()) ) { alt98=16; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 98, 22, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case SEMI: { alt98=17; } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 98, 0, input); throw nvae; } switch (alt98) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1328:9: block { pushFollow(FOLLOW_block_in_statement5370); block(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1330:9: ( 'assert' ) expression ( ':' expression )? ';' { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1330:9: ( 'assert' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1330:10: 'assert' { match(input,ASSERT,FOLLOW_ASSERT_in_statement5394); if (state.failed) return; } pushFollow(FOLLOW_expression_in_statement5414); expression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1332:20: ( ':' expression )? int alt92=2; int LA92_0 = input.LA(1); if ( (LA92_0==COLON) ) { alt92=1; } switch (alt92) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1332:21: ':' expression { match(input,COLON,FOLLOW_COLON_in_statement5417); if (state.failed) return; pushFollow(FOLLOW_expression_in_statement5419); expression(); state._fsp--; if (state.failed) return; } break; } match(input,SEMI,FOLLOW_SEMI_in_statement5423); if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1333:9: 'assert' expression ( ':' expression )? ';' { match(input,ASSERT,FOLLOW_ASSERT_in_statement5433); if (state.failed) return; pushFollow(FOLLOW_expression_in_statement5436); expression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1333:30: ( ':' expression )? int alt93=2; int LA93_0 = input.LA(1); if ( (LA93_0==COLON) ) { alt93=1; } switch (alt93) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1333:31: ':' expression { match(input,COLON,FOLLOW_COLON_in_statement5439); if (state.failed) return; pushFollow(FOLLOW_expression_in_statement5441); expression(); state._fsp--; if (state.failed) return; } break; } match(input,SEMI,FOLLOW_SEMI_in_statement5445); if (state.failed) return; } break; case 4 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1334:9: 'if' parExpression statement ( 'else' statement )? { match(input,IF,FOLLOW_IF_in_statement5467); if (state.failed) return; pushFollow(FOLLOW_parExpression_in_statement5469); parExpression(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_statement_in_statement5471); statement(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1334:38: ( 'else' statement )? int alt94=2; int LA94_0 = input.LA(1); if ( (LA94_0==ELSE) ) { int LA94_1 = input.LA(2); if ( (synpred133_Java()) ) { alt94=1; } } switch (alt94) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1334:39: 'else' statement { match(input,ELSE,FOLLOW_ELSE_in_statement5474); if (state.failed) return; pushFollow(FOLLOW_statement_in_statement5476); statement(); state._fsp--; if (state.failed) return; } break; } } break; case 5 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1335:9: forstatement { pushFollow(FOLLOW_forstatement_in_statement5498); forstatement(); state._fsp--; if (state.failed) return; } break; case 6 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1336:9: 'while' parExpression statement { match(input,WHILE,FOLLOW_WHILE_in_statement5508); if (state.failed) return; pushFollow(FOLLOW_parExpression_in_statement5510); parExpression(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_statement_in_statement5512); statement(); state._fsp--; if (state.failed) return; } break; case 7 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1337:9: 'do' statement 'while' parExpression ';' { match(input,DO,FOLLOW_DO_in_statement5522); if (state.failed) return; pushFollow(FOLLOW_statement_in_statement5524); statement(); state._fsp--; if (state.failed) return; match(input,WHILE,FOLLOW_WHILE_in_statement5526); if (state.failed) return; pushFollow(FOLLOW_parExpression_in_statement5528); parExpression(); state._fsp--; if (state.failed) return; match(input,SEMI,FOLLOW_SEMI_in_statement5530); if (state.failed) return; } break; case 8 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1338:9: trystatement { pushFollow(FOLLOW_trystatement_in_statement5540); trystatement(); state._fsp--; if (state.failed) return; } break; case 9 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1339:9: 'switch' parExpression '{' switchBlockStatementGroups '}' { match(input,SWITCH,FOLLOW_SWITCH_in_statement5550); if (state.failed) return; pushFollow(FOLLOW_parExpression_in_statement5552); parExpression(); state._fsp--; if (state.failed) return; match(input,LBRACE,FOLLOW_LBRACE_in_statement5554); if (state.failed) return; pushFollow(FOLLOW_switchBlockStatementGroups_in_statement5556); switchBlockStatementGroups(); state._fsp--; if (state.failed) return; match(input,RBRACE,FOLLOW_RBRACE_in_statement5558); if (state.failed) return; } break; case 10 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1340:9: 'synchronized' parExpression block { match(input,SYNCHRONIZED,FOLLOW_SYNCHRONIZED_in_statement5568); if (state.failed) return; pushFollow(FOLLOW_parExpression_in_statement5570); parExpression(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_block_in_statement5572); block(); state._fsp--; if (state.failed) return; } break; case 11 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1341:9: 'return' ( expression )? ';' { match(input,RETURN,FOLLOW_RETURN_in_statement5582); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1341:18: ( expression )? int alt95=2; int LA95_0 = input.LA(1); if ( (LA95_0==BANG||LA95_0==BOOLEAN||LA95_0==BYTE||(LA95_0 >= CHAR && LA95_0 <= CHARLITERAL)||(LA95_0 >= DOUBLE && LA95_0 <= DOUBLELITERAL)||LA95_0==FALSE||(LA95_0 >= FLOAT && LA95_0 <= FLOATLITERAL)||LA95_0==IDENTIFIER||LA95_0==INT||LA95_0==INTLITERAL||(LA95_0 >= LONG && LA95_0 <= LPAREN)||(LA95_0 >= NEW && LA95_0 <= NULL)||LA95_0==PLUS||LA95_0==PLUSPLUS||LA95_0==SHORT||(LA95_0 >= STRINGLITERAL && LA95_0 <= SUB)||(LA95_0 >= SUBSUB && LA95_0 <= SUPER)||LA95_0==THIS||LA95_0==TILDE||LA95_0==TRUE||LA95_0==VOID) ) { alt95=1; } switch (alt95) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1341:19: expression { pushFollow(FOLLOW_expression_in_statement5585); expression(); state._fsp--; if (state.failed) return; } break; } match(input,SEMI,FOLLOW_SEMI_in_statement5590); if (state.failed) return; } break; case 12 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1342:9: 'throw' expression ';' { match(input,THROW,FOLLOW_THROW_in_statement5600); if (state.failed) return; pushFollow(FOLLOW_expression_in_statement5602); expression(); state._fsp--; if (state.failed) return; match(input,SEMI,FOLLOW_SEMI_in_statement5604); if (state.failed) return; } break; case 13 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1343:9: 'break' ( IDENTIFIER )? ';' { match(input,BREAK,FOLLOW_BREAK_in_statement5614); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1344:13: ( IDENTIFIER )? int alt96=2; int LA96_0 = input.LA(1); if ( (LA96_0==IDENTIFIER) ) { alt96=1; } switch (alt96) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1344:14: IDENTIFIER { match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_statement5629); if (state.failed) return; } break; } match(input,SEMI,FOLLOW_SEMI_in_statement5646); if (state.failed) return; } break; case 14 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1346:9: 'continue' ( IDENTIFIER )? ';' { match(input,CONTINUE,FOLLOW_CONTINUE_in_statement5656); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1347:13: ( IDENTIFIER )? int alt97=2; int LA97_0 = input.LA(1); if ( (LA97_0==IDENTIFIER) ) { alt97=1; } switch (alt97) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1347:14: IDENTIFIER { match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_statement5671); if (state.failed) return; } break; } match(input,SEMI,FOLLOW_SEMI_in_statement5688); if (state.failed) return; } break; case 15 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1349:9: expression ';' { pushFollow(FOLLOW_expression_in_statement5698); expression(); state._fsp--; if (state.failed) return; match(input,SEMI,FOLLOW_SEMI_in_statement5701); if (state.failed) return; } break; case 16 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1350:9: IDENTIFIER ':' statement { match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_statement5716); if (state.failed) return; match(input,COLON,FOLLOW_COLON_in_statement5718); if (state.failed) return; pushFollow(FOLLOW_statement_in_statement5720); statement(); state._fsp--; if (state.failed) return; } break; case 17 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1351:9: ';' { match(input,SEMI,FOLLOW_SEMI_in_statement5730); if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 58, statement_StartIndex); } } } // $ANTLR end "statement" // $ANTLR start "switchBlockStatementGroups" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1355:1: switchBlockStatementGroups : ( switchBlockStatementGroup )* ; public final void switchBlockStatementGroups() throws RecognitionException { int switchBlockStatementGroups_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 59) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1356:5: ( ( switchBlockStatementGroup )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1356:9: ( switchBlockStatementGroup )* { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1356:9: ( switchBlockStatementGroup )* loop99: while (true) { int alt99=2; int LA99_0 = input.LA(1); if ( (LA99_0==CASE||LA99_0==DEFAULT) ) { alt99=1; } switch (alt99) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1356:10: switchBlockStatementGroup { pushFollow(FOLLOW_switchBlockStatementGroup_in_switchBlockStatementGroups5752); switchBlockStatementGroup(); state._fsp--; if (state.failed) return; } break; default : break loop99; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 59, switchBlockStatementGroups_StartIndex); } } } // $ANTLR end "switchBlockStatementGroups" // $ANTLR start "switchBlockStatementGroup" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1359:1: switchBlockStatementGroup : switchLabel ( blockStatement )* ; public final void switchBlockStatementGroup() throws RecognitionException { int switchBlockStatementGroup_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 60) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1360:5: ( switchLabel ( blockStatement )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1361:9: switchLabel ( blockStatement )* { pushFollow(FOLLOW_switchLabel_in_switchBlockStatementGroup5781); switchLabel(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1362:9: ( blockStatement )* loop100: while (true) { int alt100=2; int LA100_0 = input.LA(1); if ( (LA100_0==ABSTRACT||(LA100_0 >= ASSERT && LA100_0 <= BANG)||(LA100_0 >= BOOLEAN && LA100_0 <= BYTE)||(LA100_0 >= CHAR && LA100_0 <= CLASS)||LA100_0==CONTINUE||LA100_0==DO||(LA100_0 >= DOUBLE && LA100_0 <= DOUBLELITERAL)||LA100_0==ENUM||(LA100_0 >= FALSE && LA100_0 <= FINAL)||(LA100_0 >= FLOAT && LA100_0 <= FOR)||(LA100_0 >= IDENTIFIER && LA100_0 <= IF)||(LA100_0 >= INT && LA100_0 <= INTLITERAL)||LA100_0==LBRACE||(LA100_0 >= LONG && LA100_0 <= LT)||(LA100_0 >= MONKEYS_AT && LA100_0 <= NULL)||LA100_0==PLUS||(LA100_0 >= PLUSPLUS && LA100_0 <= PUBLIC)||LA100_0==RETURN||(LA100_0 >= SEMI && LA100_0 <= SHORT)||(LA100_0 >= STATIC && LA100_0 <= SUB)||(LA100_0 >= SUBSUB && LA100_0 <= SYNCHRONIZED)||(LA100_0 >= THIS && LA100_0 <= THROW)||(LA100_0 >= TILDE && LA100_0 <= WHILE)) ) { alt100=1; } switch (alt100) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1362:10: blockStatement { pushFollow(FOLLOW_blockStatement_in_switchBlockStatementGroup5792); blockStatement(); state._fsp--; if (state.failed) return; } break; default : break loop100; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 60, switchBlockStatementGroup_StartIndex); } } } // $ANTLR end "switchBlockStatementGroup" // $ANTLR start "switchLabel" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1366:1: switchLabel : ( 'case' expression ':' | 'default' ':' ); public final void switchLabel() throws RecognitionException { int switchLabel_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 61) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1367:5: ( 'case' expression ':' | 'default' ':' ) int alt101=2; int LA101_0 = input.LA(1); if ( (LA101_0==CASE) ) { alt101=1; } else if ( (LA101_0==DEFAULT) ) { alt101=2; } else { if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 101, 0, input); throw nvae; } switch (alt101) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1367:9: 'case' expression ':' { match(input,CASE,FOLLOW_CASE_in_switchLabel5823); if (state.failed) return; pushFollow(FOLLOW_expression_in_switchLabel5825); expression(); state._fsp--; if (state.failed) return; match(input,COLON,FOLLOW_COLON_in_switchLabel5827); if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1368:9: 'default' ':' { match(input,DEFAULT,FOLLOW_DEFAULT_in_switchLabel5837); if (state.failed) return; match(input,COLON,FOLLOW_COLON_in_switchLabel5839); if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 61, switchLabel_StartIndex); } } } // $ANTLR end "switchLabel" // $ANTLR start "trystatement" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1372:1: trystatement : 'try' block ( catches 'finally' block | catches | 'finally' block ) ; public final void trystatement() throws RecognitionException { int trystatement_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 62) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1373:5: ( 'try' block ( catches 'finally' block | catches | 'finally' block ) ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1373:9: 'try' block ( catches 'finally' block | catches | 'finally' block ) { match(input,TRY,FOLLOW_TRY_in_trystatement5860); if (state.failed) return; pushFollow(FOLLOW_block_in_trystatement5862); block(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1374:9: ( catches 'finally' block | catches | 'finally' block ) int alt102=3; int LA102_0 = input.LA(1); if ( (LA102_0==CATCH) ) { int LA102_1 = input.LA(2); if ( (synpred153_Java()) ) { alt102=1; } else if ( (synpred154_Java()) ) { alt102=2; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 102, 1, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else if ( (LA102_0==FINALLY) ) { alt102=3; } else { if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 102, 0, input); throw nvae; } switch (alt102) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1374:13: catches 'finally' block { pushFollow(FOLLOW_catches_in_trystatement5876); catches(); state._fsp--; if (state.failed) return; match(input,FINALLY,FOLLOW_FINALLY_in_trystatement5878); if (state.failed) return; pushFollow(FOLLOW_block_in_trystatement5880); block(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1375:13: catches { pushFollow(FOLLOW_catches_in_trystatement5894); catches(); state._fsp--; if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1376:13: 'finally' block { match(input,FINALLY,FOLLOW_FINALLY_in_trystatement5908); if (state.failed) return; pushFollow(FOLLOW_block_in_trystatement5910); block(); state._fsp--; if (state.failed) return; } break; } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 62, trystatement_StartIndex); } } } // $ANTLR end "trystatement" // $ANTLR start "catches" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1380:1: catches : catchClause ( catchClause )* ; public final void catches() throws RecognitionException { int catches_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 63) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1381:5: ( catchClause ( catchClause )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1381:9: catchClause ( catchClause )* { pushFollow(FOLLOW_catchClause_in_catches5941); catchClause(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1382:9: ( catchClause )* loop103: while (true) { int alt103=2; int LA103_0 = input.LA(1); if ( (LA103_0==CATCH) ) { alt103=1; } switch (alt103) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1382:10: catchClause { pushFollow(FOLLOW_catchClause_in_catches5952); catchClause(); state._fsp--; if (state.failed) return; } break; default : break loop103; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 63, catches_StartIndex); } } } // $ANTLR end "catches" // $ANTLR start "catchClause" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1386:1: catchClause : 'catch' '(' formalParameter ')' block ; public final void catchClause() throws RecognitionException { int catchClause_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 64) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1387:5: ( 'catch' '(' formalParameter ')' block ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1387:9: 'catch' '(' formalParameter ')' block { match(input,CATCH,FOLLOW_CATCH_in_catchClause5983); if (state.failed) return; match(input,LPAREN,FOLLOW_LPAREN_in_catchClause5985); if (state.failed) return; pushFollow(FOLLOW_formalParameter_in_catchClause5987); formalParameter(); state._fsp--; if (state.failed) return; match(input,RPAREN,FOLLOW_RPAREN_in_catchClause5997); if (state.failed) return; pushFollow(FOLLOW_block_in_catchClause5999); block(); state._fsp--; if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 64, catchClause_StartIndex); } } } // $ANTLR end "catchClause" // $ANTLR start "formalParameter" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1391:1: formalParameter : variableModifiers type IDENTIFIER ( '[' ']' )* ; public final void formalParameter() throws RecognitionException { int formalParameter_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 65) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1392:5: ( variableModifiers type IDENTIFIER ( '[' ']' )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1392:9: variableModifiers type IDENTIFIER ( '[' ']' )* { pushFollow(FOLLOW_variableModifiers_in_formalParameter6020); variableModifiers(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_type_in_formalParameter6022); type(); state._fsp--; if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_formalParameter6024); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1393:9: ( '[' ']' )* loop104: while (true) { int alt104=2; int LA104_0 = input.LA(1); if ( (LA104_0==LBRACKET) ) { alt104=1; } switch (alt104) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1393:10: '[' ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_formalParameter6035); if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_formalParameter6037); if (state.failed) return; } break; default : break loop104; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 65, formalParameter_StartIndex); } } } // $ANTLR end "formalParameter" // $ANTLR start "forstatement" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1397:1: forstatement : ( 'for' '(' variableModifiers type IDENTIFIER ':' expression ')' statement | 'for' '(' ( forInit )? ';' ( expression )? ';' ( expressionList )? ')' statement ); public final void forstatement() throws RecognitionException { int forstatement_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 66) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1398:5: ( 'for' '(' variableModifiers type IDENTIFIER ':' expression ')' statement | 'for' '(' ( forInit )? ';' ( expression )? ';' ( expressionList )? ')' statement ) int alt108=2; int LA108_0 = input.LA(1); if ( (LA108_0==FOR) ) { int LA108_1 = input.LA(2); if ( (synpred157_Java()) ) { alt108=1; } else if ( (true) ) { alt108=2; } } else { if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 108, 0, input); throw nvae; } switch (alt108) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1400:9: 'for' '(' variableModifiers type IDENTIFIER ':' expression ')' statement { match(input,FOR,FOLLOW_FOR_in_forstatement6086); if (state.failed) return; match(input,LPAREN,FOLLOW_LPAREN_in_forstatement6088); if (state.failed) return; pushFollow(FOLLOW_variableModifiers_in_forstatement6090); variableModifiers(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_type_in_forstatement6092); type(); state._fsp--; if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_forstatement6094); if (state.failed) return; match(input,COLON,FOLLOW_COLON_in_forstatement6096); if (state.failed) return; pushFollow(FOLLOW_expression_in_forstatement6107); expression(); state._fsp--; if (state.failed) return; match(input,RPAREN,FOLLOW_RPAREN_in_forstatement6109); if (state.failed) return; pushFollow(FOLLOW_statement_in_forstatement6111); statement(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1404:9: 'for' '(' ( forInit )? ';' ( expression )? ';' ( expressionList )? ')' statement { match(input,FOR,FOLLOW_FOR_in_forstatement6143); if (state.failed) return; match(input,LPAREN,FOLLOW_LPAREN_in_forstatement6145); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1405:17: ( forInit )? int alt105=2; int LA105_0 = input.LA(1); if ( (LA105_0==BANG||LA105_0==BOOLEAN||LA105_0==BYTE||(LA105_0 >= CHAR && LA105_0 <= CHARLITERAL)||(LA105_0 >= DOUBLE && LA105_0 <= DOUBLELITERAL)||(LA105_0 >= FALSE && LA105_0 <= FINAL)||(LA105_0 >= FLOAT && LA105_0 <= FLOATLITERAL)||LA105_0==IDENTIFIER||LA105_0==INT||LA105_0==INTLITERAL||(LA105_0 >= LONG && LA105_0 <= LPAREN)||LA105_0==MONKEYS_AT||(LA105_0 >= NEW && LA105_0 <= NULL)||LA105_0==PLUS||LA105_0==PLUSPLUS||LA105_0==SHORT||(LA105_0 >= STRINGLITERAL && LA105_0 <= SUB)||(LA105_0 >= SUBSUB && LA105_0 <= SUPER)||LA105_0==THIS||LA105_0==TILDE||LA105_0==TRUE||LA105_0==VOID) ) { alt105=1; } switch (alt105) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1405:18: forInit { pushFollow(FOLLOW_forInit_in_forstatement6165); forInit(); state._fsp--; if (state.failed) return; } break; } match(input,SEMI,FOLLOW_SEMI_in_forstatement6186); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1407:17: ( expression )? int alt106=2; int LA106_0 = input.LA(1); if ( (LA106_0==BANG||LA106_0==BOOLEAN||LA106_0==BYTE||(LA106_0 >= CHAR && LA106_0 <= CHARLITERAL)||(LA106_0 >= DOUBLE && LA106_0 <= DOUBLELITERAL)||LA106_0==FALSE||(LA106_0 >= FLOAT && LA106_0 <= FLOATLITERAL)||LA106_0==IDENTIFIER||LA106_0==INT||LA106_0==INTLITERAL||(LA106_0 >= LONG && LA106_0 <= LPAREN)||(LA106_0 >= NEW && LA106_0 <= NULL)||LA106_0==PLUS||LA106_0==PLUSPLUS||LA106_0==SHORT||(LA106_0 >= STRINGLITERAL && LA106_0 <= SUB)||(LA106_0 >= SUBSUB && LA106_0 <= SUPER)||LA106_0==THIS||LA106_0==TILDE||LA106_0==TRUE||LA106_0==VOID) ) { alt106=1; } switch (alt106) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1407:18: expression { pushFollow(FOLLOW_expression_in_forstatement6206); expression(); state._fsp--; if (state.failed) return; } break; } match(input,SEMI,FOLLOW_SEMI_in_forstatement6227); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1409:17: ( expressionList )? int alt107=2; int LA107_0 = input.LA(1); if ( (LA107_0==BANG||LA107_0==BOOLEAN||LA107_0==BYTE||(LA107_0 >= CHAR && LA107_0 <= CHARLITERAL)||(LA107_0 >= DOUBLE && LA107_0 <= DOUBLELITERAL)||LA107_0==FALSE||(LA107_0 >= FLOAT && LA107_0 <= FLOATLITERAL)||LA107_0==IDENTIFIER||LA107_0==INT||LA107_0==INTLITERAL||(LA107_0 >= LONG && LA107_0 <= LPAREN)||(LA107_0 >= NEW && LA107_0 <= NULL)||LA107_0==PLUS||LA107_0==PLUSPLUS||LA107_0==SHORT||(LA107_0 >= STRINGLITERAL && LA107_0 <= SUB)||(LA107_0 >= SUBSUB && LA107_0 <= SUPER)||LA107_0==THIS||LA107_0==TILDE||LA107_0==TRUE||LA107_0==VOID) ) { alt107=1; } switch (alt107) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1409:18: expressionList { pushFollow(FOLLOW_expressionList_in_forstatement6247); expressionList(); state._fsp--; if (state.failed) return; } break; } match(input,RPAREN,FOLLOW_RPAREN_in_forstatement6268); if (state.failed) return; pushFollow(FOLLOW_statement_in_forstatement6270); statement(); state._fsp--; if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 66, forstatement_StartIndex); } } } // $ANTLR end "forstatement" // $ANTLR start "forInit" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1413:1: forInit : ( localVariableDeclaration | expressionList ); public final void forInit() throws RecognitionException { int forInit_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 67) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1414:5: ( localVariableDeclaration | expressionList ) int alt109=2; switch ( input.LA(1) ) { case FINAL: case MONKEYS_AT: { alt109=1; } break; case IDENTIFIER: { int LA109_3 = input.LA(2); if ( (synpred161_Java()) ) { alt109=1; } else if ( (true) ) { alt109=2; } } break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: { int LA109_4 = input.LA(2); if ( (synpred161_Java()) ) { alt109=1; } else if ( (true) ) { alt109=2; } } break; case BANG: case CHARLITERAL: case DOUBLELITERAL: case FALSE: case FLOATLITERAL: case INTLITERAL: case LONGLITERAL: case LPAREN: case NEW: case NULL: case PLUS: case PLUSPLUS: case STRINGLITERAL: case SUB: case SUBSUB: case SUPER: case THIS: case TILDE: case TRUE: case VOID: { alt109=2; } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 109, 0, input); throw nvae; } switch (alt109) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1414:9: localVariableDeclaration { pushFollow(FOLLOW_localVariableDeclaration_in_forInit6290); localVariableDeclaration(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1415:9: expressionList { pushFollow(FOLLOW_expressionList_in_forInit6300); expressionList(); state._fsp--; if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 67, forInit_StartIndex); } } } // $ANTLR end "forInit" // $ANTLR start "parExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1418:1: parExpression : '(' expression ')' ; public final void parExpression() throws RecognitionException { int parExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 68) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1419:5: ( '(' expression ')' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1419:9: '(' expression ')' { match(input,LPAREN,FOLLOW_LPAREN_in_parExpression6320); if (state.failed) return; pushFollow(FOLLOW_expression_in_parExpression6322); expression(); state._fsp--; if (state.failed) return; match(input,RPAREN,FOLLOW_RPAREN_in_parExpression6324); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 68, parExpression_StartIndex); } } } // $ANTLR end "parExpression" // $ANTLR start "expressionList" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1422:1: expressionList : expression ( ',' expression )* ; public final void expressionList() throws RecognitionException { int expressionList_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 69) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1423:5: ( expression ( ',' expression )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1423:9: expression ( ',' expression )* { pushFollow(FOLLOW_expression_in_expressionList6344); expression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1424:9: ( ',' expression )* loop110: while (true) { int alt110=2; int LA110_0 = input.LA(1); if ( (LA110_0==COMMA) ) { alt110=1; } switch (alt110) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1424:10: ',' expression { match(input,COMMA,FOLLOW_COMMA_in_expressionList6355); if (state.failed) return; pushFollow(FOLLOW_expression_in_expressionList6357); expression(); state._fsp--; if (state.failed) return; } break; default : break loop110; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 69, expressionList_StartIndex); } } } // $ANTLR end "expressionList" // $ANTLR start "expression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1429:1: expression : conditionalExpression ( assignmentOperator expression )? ; public final void expression() throws RecognitionException { int expression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 70) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1430:5: ( conditionalExpression ( assignmentOperator expression )? ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1430:9: conditionalExpression ( assignmentOperator expression )? { pushFollow(FOLLOW_conditionalExpression_in_expression6389); conditionalExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1431:9: ( assignmentOperator expression )? int alt111=2; int LA111_0 = input.LA(1); if ( (LA111_0==AMPEQ||LA111_0==BAREQ||LA111_0==CARETEQ||LA111_0==EQ||LA111_0==GT||LA111_0==LT||LA111_0==PERCENTEQ||LA111_0==PLUSEQ||LA111_0==SLASHEQ||LA111_0==STAREQ||LA111_0==SUBEQ) ) { alt111=1; } switch (alt111) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1431:10: assignmentOperator expression { pushFollow(FOLLOW_assignmentOperator_in_expression6400); assignmentOperator(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_expression_in_expression6402); expression(); state._fsp--; if (state.failed) return; } break; } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 70, expression_StartIndex); } } } // $ANTLR end "expression" // $ANTLR start "assignmentOperator" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1436:1: assignmentOperator : ( '=' | '+=' | '-=' | '*=' | '/=' | '&=' | '|=' | '^=' | '%=' | '<' '<' '=' | '>' '>' '>' '=' | '>' '>' '=' ); public final void assignmentOperator() throws RecognitionException { int assignmentOperator_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 71) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1437:5: ( '=' | '+=' | '-=' | '*=' | '/=' | '&=' | '|=' | '^=' | '%=' | '<' '<' '=' | '>' '>' '>' '=' | '>' '>' '=' ) int alt112=12; switch ( input.LA(1) ) { case EQ: { alt112=1; } break; case PLUSEQ: { alt112=2; } break; case SUBEQ: { alt112=3; } break; case STAREQ: { alt112=4; } break; case SLASHEQ: { alt112=5; } break; case AMPEQ: { alt112=6; } break; case BAREQ: { alt112=7; } break; case CARETEQ: { alt112=8; } break; case PERCENTEQ: { alt112=9; } break; case LT: { alt112=10; } break; case GT: { int LA112_11 = input.LA(2); if ( (LA112_11==GT) ) { int LA112_12 = input.LA(3); if ( (LA112_12==GT) ) { alt112=11; } else if ( (LA112_12==EQ) ) { alt112=12; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { for (int nvaeConsume = 0; nvaeConsume < 3 - 1; nvaeConsume++) { input.consume(); } NoViableAltException nvae = new NoViableAltException("", 112, 12, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 112, 11, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 112, 0, input); throw nvae; } switch (alt112) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1437:9: '=' { match(input,EQ,FOLLOW_EQ_in_assignmentOperator6434); if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1438:9: '+=' { match(input,PLUSEQ,FOLLOW_PLUSEQ_in_assignmentOperator6444); if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1439:9: '-=' { match(input,SUBEQ,FOLLOW_SUBEQ_in_assignmentOperator6454); if (state.failed) return; } break; case 4 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1440:9: '*=' { match(input,STAREQ,FOLLOW_STAREQ_in_assignmentOperator6464); if (state.failed) return; } break; case 5 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1441:9: '/=' { match(input,SLASHEQ,FOLLOW_SLASHEQ_in_assignmentOperator6474); if (state.failed) return; } break; case 6 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1442:9: '&=' { match(input,AMPEQ,FOLLOW_AMPEQ_in_assignmentOperator6484); if (state.failed) return; } break; case 7 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1443:9: '|=' { match(input,BAREQ,FOLLOW_BAREQ_in_assignmentOperator6494); if (state.failed) return; } break; case 8 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1444:9: '^=' { match(input,CARETEQ,FOLLOW_CARETEQ_in_assignmentOperator6504); if (state.failed) return; } break; case 9 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1445:9: '%=' { match(input,PERCENTEQ,FOLLOW_PERCENTEQ_in_assignmentOperator6514); if (state.failed) return; } break; case 10 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1446:10: '<' '<' '=' { match(input,LT,FOLLOW_LT_in_assignmentOperator6525); if (state.failed) return; match(input,LT,FOLLOW_LT_in_assignmentOperator6527); if (state.failed) return; match(input,EQ,FOLLOW_EQ_in_assignmentOperator6529); if (state.failed) return; } break; case 11 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1447:10: '>' '>' '>' '=' { match(input,GT,FOLLOW_GT_in_assignmentOperator6540); if (state.failed) return; match(input,GT,FOLLOW_GT_in_assignmentOperator6542); if (state.failed) return; match(input,GT,FOLLOW_GT_in_assignmentOperator6544); if (state.failed) return; match(input,EQ,FOLLOW_EQ_in_assignmentOperator6546); if (state.failed) return; } break; case 12 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1448:10: '>' '>' '=' { match(input,GT,FOLLOW_GT_in_assignmentOperator6557); if (state.failed) return; match(input,GT,FOLLOW_GT_in_assignmentOperator6559); if (state.failed) return; match(input,EQ,FOLLOW_EQ_in_assignmentOperator6561); if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 71, assignmentOperator_StartIndex); } } } // $ANTLR end "assignmentOperator" // $ANTLR start "conditionalExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1452:1: conditionalExpression : conditionalOrExpression ( '?' expression ':' conditionalExpression )? ; public final void conditionalExpression() throws RecognitionException { int conditionalExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 72) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1453:5: ( conditionalOrExpression ( '?' expression ':' conditionalExpression )? ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1453:9: conditionalOrExpression ( '?' expression ':' conditionalExpression )? { pushFollow(FOLLOW_conditionalOrExpression_in_conditionalExpression6582); conditionalOrExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1454:9: ( '?' expression ':' conditionalExpression )? int alt113=2; int LA113_0 = input.LA(1); if ( (LA113_0==QUES) ) { alt113=1; } switch (alt113) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1454:10: '?' expression ':' conditionalExpression { match(input,QUES,FOLLOW_QUES_in_conditionalExpression6593); if (state.failed) return; pushFollow(FOLLOW_expression_in_conditionalExpression6595); expression(); state._fsp--; if (state.failed) return; match(input,COLON,FOLLOW_COLON_in_conditionalExpression6597); if (state.failed) return; pushFollow(FOLLOW_conditionalExpression_in_conditionalExpression6599); conditionalExpression(); state._fsp--; if (state.failed) return; } break; } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 72, conditionalExpression_StartIndex); } } } // $ANTLR end "conditionalExpression" // $ANTLR start "conditionalOrExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1458:1: conditionalOrExpression : conditionalAndExpression ( '||' conditionalAndExpression )* ; public final void conditionalOrExpression() throws RecognitionException { int conditionalOrExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 73) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1459:5: ( conditionalAndExpression ( '||' conditionalAndExpression )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1459:9: conditionalAndExpression ( '||' conditionalAndExpression )* { pushFollow(FOLLOW_conditionalAndExpression_in_conditionalOrExpression6630); conditionalAndExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1460:9: ( '||' conditionalAndExpression )* loop114: while (true) { int alt114=2; int LA114_0 = input.LA(1); if ( (LA114_0==BARBAR) ) { alt114=1; } switch (alt114) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1460:10: '||' conditionalAndExpression { match(input,BARBAR,FOLLOW_BARBAR_in_conditionalOrExpression6641); if (state.failed) return; pushFollow(FOLLOW_conditionalAndExpression_in_conditionalOrExpression6643); conditionalAndExpression(); state._fsp--; if (state.failed) return; } break; default : break loop114; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 73, conditionalOrExpression_StartIndex); } } } // $ANTLR end "conditionalOrExpression" // $ANTLR start "conditionalAndExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1464:1: conditionalAndExpression : inclusiveOrExpression ( '&&' inclusiveOrExpression )* ; public final void conditionalAndExpression() throws RecognitionException { int conditionalAndExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 74) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1465:5: ( inclusiveOrExpression ( '&&' inclusiveOrExpression )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1465:9: inclusiveOrExpression ( '&&' inclusiveOrExpression )* { pushFollow(FOLLOW_inclusiveOrExpression_in_conditionalAndExpression6674); inclusiveOrExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1466:9: ( '&&' inclusiveOrExpression )* loop115: while (true) { int alt115=2; int LA115_0 = input.LA(1); if ( (LA115_0==AMPAMP) ) { alt115=1; } switch (alt115) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1466:10: '&&' inclusiveOrExpression { match(input,AMPAMP,FOLLOW_AMPAMP_in_conditionalAndExpression6685); if (state.failed) return; pushFollow(FOLLOW_inclusiveOrExpression_in_conditionalAndExpression6687); inclusiveOrExpression(); state._fsp--; if (state.failed) return; } break; default : break loop115; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 74, conditionalAndExpression_StartIndex); } } } // $ANTLR end "conditionalAndExpression" // $ANTLR start "inclusiveOrExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1470:1: inclusiveOrExpression : exclusiveOrExpression ( '|' exclusiveOrExpression )* ; public final void inclusiveOrExpression() throws RecognitionException { int inclusiveOrExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 75) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1471:5: ( exclusiveOrExpression ( '|' exclusiveOrExpression )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1471:9: exclusiveOrExpression ( '|' exclusiveOrExpression )* { pushFollow(FOLLOW_exclusiveOrExpression_in_inclusiveOrExpression6718); exclusiveOrExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1472:9: ( '|' exclusiveOrExpression )* loop116: while (true) { int alt116=2; int LA116_0 = input.LA(1); if ( (LA116_0==BAR) ) { alt116=1; } switch (alt116) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1472:10: '|' exclusiveOrExpression { match(input,BAR,FOLLOW_BAR_in_inclusiveOrExpression6729); if (state.failed) return; pushFollow(FOLLOW_exclusiveOrExpression_in_inclusiveOrExpression6731); exclusiveOrExpression(); state._fsp--; if (state.failed) return; } break; default : break loop116; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 75, inclusiveOrExpression_StartIndex); } } } // $ANTLR end "inclusiveOrExpression" // $ANTLR start "exclusiveOrExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1476:1: exclusiveOrExpression : andExpression ( '^' andExpression )* ; public final void exclusiveOrExpression() throws RecognitionException { int exclusiveOrExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 76) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1477:5: ( andExpression ( '^' andExpression )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1477:9: andExpression ( '^' andExpression )* { pushFollow(FOLLOW_andExpression_in_exclusiveOrExpression6762); andExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1478:9: ( '^' andExpression )* loop117: while (true) { int alt117=2; int LA117_0 = input.LA(1); if ( (LA117_0==CARET) ) { alt117=1; } switch (alt117) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1478:10: '^' andExpression { match(input,CARET,FOLLOW_CARET_in_exclusiveOrExpression6773); if (state.failed) return; pushFollow(FOLLOW_andExpression_in_exclusiveOrExpression6775); andExpression(); state._fsp--; if (state.failed) return; } break; default : break loop117; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 76, exclusiveOrExpression_StartIndex); } } } // $ANTLR end "exclusiveOrExpression" // $ANTLR start "andExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1482:1: andExpression : equalityExpression ( '&' equalityExpression )* ; public final void andExpression() throws RecognitionException { int andExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 77) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1483:5: ( equalityExpression ( '&' equalityExpression )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1483:9: equalityExpression ( '&' equalityExpression )* { pushFollow(FOLLOW_equalityExpression_in_andExpression6806); equalityExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1484:9: ( '&' equalityExpression )* loop118: while (true) { int alt118=2; int LA118_0 = input.LA(1); if ( (LA118_0==AMP) ) { alt118=1; } switch (alt118) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1484:10: '&' equalityExpression { match(input,AMP,FOLLOW_AMP_in_andExpression6817); if (state.failed) return; pushFollow(FOLLOW_equalityExpression_in_andExpression6819); equalityExpression(); state._fsp--; if (state.failed) return; } break; default : break loop118; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 77, andExpression_StartIndex); } } } // $ANTLR end "andExpression" // $ANTLR start "equalityExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1488:1: equalityExpression : instanceOfExpression ( ( '==' | '!=' ) instanceOfExpression )* ; public final void equalityExpression() throws RecognitionException { int equalityExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 78) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1489:5: ( instanceOfExpression ( ( '==' | '!=' ) instanceOfExpression )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1489:9: instanceOfExpression ( ( '==' | '!=' ) instanceOfExpression )* { pushFollow(FOLLOW_instanceOfExpression_in_equalityExpression6850); instanceOfExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1490:9: ( ( '==' | '!=' ) instanceOfExpression )* loop119: while (true) { int alt119=2; int LA119_0 = input.LA(1); if ( (LA119_0==BANGEQ||LA119_0==EQEQ) ) { alt119=1; } switch (alt119) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1491:13: ( '==' | '!=' ) instanceOfExpression { if ( input.LA(1)==BANGEQ||input.LA(1)==EQEQ ) { input.consume(); state.errorRecovery=false; state.failed=false; } else { if (state.backtracking>0) {state.failed=true; return;} MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } pushFollow(FOLLOW_instanceOfExpression_in_equalityExpression6927); instanceOfExpression(); state._fsp--; if (state.failed) return; } break; default : break loop119; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 78, equalityExpression_StartIndex); } } } // $ANTLR end "equalityExpression" // $ANTLR start "instanceOfExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1498:1: instanceOfExpression : relationalExpression ( 'instanceof' type )? ; public final void instanceOfExpression() throws RecognitionException { int instanceOfExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 79) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1499:5: ( relationalExpression ( 'instanceof' type )? ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1499:9: relationalExpression ( 'instanceof' type )? { pushFollow(FOLLOW_relationalExpression_in_instanceOfExpression6958); relationalExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1500:9: ( 'instanceof' type )? int alt120=2; int LA120_0 = input.LA(1); if ( (LA120_0==INSTANCEOF) ) { alt120=1; } switch (alt120) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1500:10: 'instanceof' type { match(input,INSTANCEOF,FOLLOW_INSTANCEOF_in_instanceOfExpression6969); if (state.failed) return; pushFollow(FOLLOW_type_in_instanceOfExpression6971); type(); state._fsp--; if (state.failed) return; } break; } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 79, instanceOfExpression_StartIndex); } } } // $ANTLR end "instanceOfExpression" // $ANTLR start "relationalExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1504:1: relationalExpression : shiftExpression ( relationalOp shiftExpression )* ; public final void relationalExpression() throws RecognitionException { int relationalExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 80) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1505:5: ( shiftExpression ( relationalOp shiftExpression )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1505:9: shiftExpression ( relationalOp shiftExpression )* { pushFollow(FOLLOW_shiftExpression_in_relationalExpression7002); shiftExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1506:9: ( relationalOp shiftExpression )* loop121: while (true) { int alt121=2; int LA121_0 = input.LA(1); if ( (LA121_0==LT) ) { int LA121_2 = input.LA(2); if ( (LA121_2==BANG||LA121_2==BOOLEAN||LA121_2==BYTE||(LA121_2 >= CHAR && LA121_2 <= CHARLITERAL)||(LA121_2 >= DOUBLE && LA121_2 <= DOUBLELITERAL)||LA121_2==EQ||LA121_2==FALSE||(LA121_2 >= FLOAT && LA121_2 <= FLOATLITERAL)||LA121_2==IDENTIFIER||LA121_2==INT||LA121_2==INTLITERAL||(LA121_2 >= LONG && LA121_2 <= LPAREN)||(LA121_2 >= NEW && LA121_2 <= NULL)||LA121_2==PLUS||LA121_2==PLUSPLUS||LA121_2==SHORT||(LA121_2 >= STRINGLITERAL && LA121_2 <= SUB)||(LA121_2 >= SUBSUB && LA121_2 <= SUPER)||LA121_2==THIS||LA121_2==TILDE||LA121_2==TRUE||LA121_2==VOID) ) { alt121=1; } } else if ( (LA121_0==GT) ) { int LA121_3 = input.LA(2); if ( (LA121_3==BANG||LA121_3==BOOLEAN||LA121_3==BYTE||(LA121_3 >= CHAR && LA121_3 <= CHARLITERAL)||(LA121_3 >= DOUBLE && LA121_3 <= DOUBLELITERAL)||LA121_3==EQ||LA121_3==FALSE||(LA121_3 >= FLOAT && LA121_3 <= FLOATLITERAL)||LA121_3==IDENTIFIER||LA121_3==INT||LA121_3==INTLITERAL||(LA121_3 >= LONG && LA121_3 <= LPAREN)||(LA121_3 >= NEW && LA121_3 <= NULL)||LA121_3==PLUS||LA121_3==PLUSPLUS||LA121_3==SHORT||(LA121_3 >= STRINGLITERAL && LA121_3 <= SUB)||(LA121_3 >= SUBSUB && LA121_3 <= SUPER)||LA121_3==THIS||LA121_3==TILDE||LA121_3==TRUE||LA121_3==VOID) ) { alt121=1; } } switch (alt121) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1506:10: relationalOp shiftExpression { pushFollow(FOLLOW_relationalOp_in_relationalExpression7013); relationalOp(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_shiftExpression_in_relationalExpression7015); shiftExpression(); state._fsp--; if (state.failed) return; } break; default : break loop121; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 80, relationalExpression_StartIndex); } } } // $ANTLR end "relationalExpression" // $ANTLR start "relationalOp" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1510:1: relationalOp : ( '<' '=' | '>' '=' | '<' | '>' ); public final void relationalOp() throws RecognitionException { int relationalOp_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 81) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1511:5: ( '<' '=' | '>' '=' | '<' | '>' ) int alt122=4; int LA122_0 = input.LA(1); if ( (LA122_0==LT) ) { int LA122_1 = input.LA(2); if ( (LA122_1==EQ) ) { alt122=1; } else if ( (LA122_1==BANG||LA122_1==BOOLEAN||LA122_1==BYTE||(LA122_1 >= CHAR && LA122_1 <= CHARLITERAL)||(LA122_1 >= DOUBLE && LA122_1 <= DOUBLELITERAL)||LA122_1==FALSE||(LA122_1 >= FLOAT && LA122_1 <= FLOATLITERAL)||LA122_1==IDENTIFIER||LA122_1==INT||LA122_1==INTLITERAL||(LA122_1 >= LONG && LA122_1 <= LPAREN)||(LA122_1 >= NEW && LA122_1 <= NULL)||LA122_1==PLUS||LA122_1==PLUSPLUS||LA122_1==SHORT||(LA122_1 >= STRINGLITERAL && LA122_1 <= SUB)||(LA122_1 >= SUBSUB && LA122_1 <= SUPER)||LA122_1==THIS||LA122_1==TILDE||LA122_1==TRUE||LA122_1==VOID) ) { alt122=3; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 122, 1, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else if ( (LA122_0==GT) ) { int LA122_2 = input.LA(2); if ( (LA122_2==EQ) ) { alt122=2; } else if ( (LA122_2==BANG||LA122_2==BOOLEAN||LA122_2==BYTE||(LA122_2 >= CHAR && LA122_2 <= CHARLITERAL)||(LA122_2 >= DOUBLE && LA122_2 <= DOUBLELITERAL)||LA122_2==FALSE||(LA122_2 >= FLOAT && LA122_2 <= FLOATLITERAL)||LA122_2==IDENTIFIER||LA122_2==INT||LA122_2==INTLITERAL||(LA122_2 >= LONG && LA122_2 <= LPAREN)||(LA122_2 >= NEW && LA122_2 <= NULL)||LA122_2==PLUS||LA122_2==PLUSPLUS||LA122_2==SHORT||(LA122_2 >= STRINGLITERAL && LA122_2 <= SUB)||(LA122_2 >= SUBSUB && LA122_2 <= SUPER)||LA122_2==THIS||LA122_2==TILDE||LA122_2==TRUE||LA122_2==VOID) ) { alt122=4; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 122, 2, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else { if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 122, 0, input); throw nvae; } switch (alt122) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1511:10: '<' '=' { match(input,LT,FOLLOW_LT_in_relationalOp7047); if (state.failed) return; match(input,EQ,FOLLOW_EQ_in_relationalOp7049); if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1512:10: '>' '=' { match(input,GT,FOLLOW_GT_in_relationalOp7060); if (state.failed) return; match(input,EQ,FOLLOW_EQ_in_relationalOp7062); if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1513:9: '<' { match(input,LT,FOLLOW_LT_in_relationalOp7072); if (state.failed) return; } break; case 4 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1514:9: '>' { match(input,GT,FOLLOW_GT_in_relationalOp7082); if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 81, relationalOp_StartIndex); } } } // $ANTLR end "relationalOp" // $ANTLR start "shiftExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1517:1: shiftExpression : additiveExpression ( shiftOp additiveExpression )* ; public final void shiftExpression() throws RecognitionException { int shiftExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 82) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1518:5: ( additiveExpression ( shiftOp additiveExpression )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1518:9: additiveExpression ( shiftOp additiveExpression )* { pushFollow(FOLLOW_additiveExpression_in_shiftExpression7102); additiveExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1519:9: ( shiftOp additiveExpression )* loop123: while (true) { int alt123=2; int LA123_0 = input.LA(1); if ( (LA123_0==LT) ) { int LA123_1 = input.LA(2); if ( (LA123_1==LT) ) { int LA123_4 = input.LA(3); if ( (LA123_4==BANG||LA123_4==BOOLEAN||LA123_4==BYTE||(LA123_4 >= CHAR && LA123_4 <= CHARLITERAL)||(LA123_4 >= DOUBLE && LA123_4 <= DOUBLELITERAL)||LA123_4==FALSE||(LA123_4 >= FLOAT && LA123_4 <= FLOATLITERAL)||LA123_4==IDENTIFIER||LA123_4==INT||LA123_4==INTLITERAL||(LA123_4 >= LONG && LA123_4 <= LPAREN)||(LA123_4 >= NEW && LA123_4 <= NULL)||LA123_4==PLUS||LA123_4==PLUSPLUS||LA123_4==SHORT||(LA123_4 >= STRINGLITERAL && LA123_4 <= SUB)||(LA123_4 >= SUBSUB && LA123_4 <= SUPER)||LA123_4==THIS||LA123_4==TILDE||LA123_4==TRUE||LA123_4==VOID) ) { alt123=1; } } } else if ( (LA123_0==GT) ) { int LA123_2 = input.LA(2); if ( (LA123_2==GT) ) { int LA123_5 = input.LA(3); if ( (LA123_5==GT) ) { int LA123_7 = input.LA(4); if ( (LA123_7==BANG||LA123_7==BOOLEAN||LA123_7==BYTE||(LA123_7 >= CHAR && LA123_7 <= CHARLITERAL)||(LA123_7 >= DOUBLE && LA123_7 <= DOUBLELITERAL)||LA123_7==FALSE||(LA123_7 >= FLOAT && LA123_7 <= FLOATLITERAL)||LA123_7==IDENTIFIER||LA123_7==INT||LA123_7==INTLITERAL||(LA123_7 >= LONG && LA123_7 <= LPAREN)||(LA123_7 >= NEW && LA123_7 <= NULL)||LA123_7==PLUS||LA123_7==PLUSPLUS||LA123_7==SHORT||(LA123_7 >= STRINGLITERAL && LA123_7 <= SUB)||(LA123_7 >= SUBSUB && LA123_7 <= SUPER)||LA123_7==THIS||LA123_7==TILDE||LA123_7==TRUE||LA123_7==VOID) ) { alt123=1; } } else if ( (LA123_5==BANG||LA123_5==BOOLEAN||LA123_5==BYTE||(LA123_5 >= CHAR && LA123_5 <= CHARLITERAL)||(LA123_5 >= DOUBLE && LA123_5 <= DOUBLELITERAL)||LA123_5==FALSE||(LA123_5 >= FLOAT && LA123_5 <= FLOATLITERAL)||LA123_5==IDENTIFIER||LA123_5==INT||LA123_5==INTLITERAL||(LA123_5 >= LONG && LA123_5 <= LPAREN)||(LA123_5 >= NEW && LA123_5 <= NULL)||LA123_5==PLUS||LA123_5==PLUSPLUS||LA123_5==SHORT||(LA123_5 >= STRINGLITERAL && LA123_5 <= SUB)||(LA123_5 >= SUBSUB && LA123_5 <= SUPER)||LA123_5==THIS||LA123_5==TILDE||LA123_5==TRUE||LA123_5==VOID) ) { alt123=1; } } } switch (alt123) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1519:10: shiftOp additiveExpression { pushFollow(FOLLOW_shiftOp_in_shiftExpression7113); shiftOp(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_additiveExpression_in_shiftExpression7115); additiveExpression(); state._fsp--; if (state.failed) return; } break; default : break loop123; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 82, shiftExpression_StartIndex); } } } // $ANTLR end "shiftExpression" // $ANTLR start "shiftOp" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1524:1: shiftOp : ( '<' '<' | '>' '>' '>' | '>' '>' ); public final void shiftOp() throws RecognitionException { int shiftOp_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 83) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1525:5: ( '<' '<' | '>' '>' '>' | '>' '>' ) int alt124=3; int LA124_0 = input.LA(1); if ( (LA124_0==LT) ) { alt124=1; } else if ( (LA124_0==GT) ) { int LA124_2 = input.LA(2); if ( (LA124_2==GT) ) { int LA124_3 = input.LA(3); if ( (LA124_3==GT) ) { alt124=2; } else if ( (LA124_3==BANG||LA124_3==BOOLEAN||LA124_3==BYTE||(LA124_3 >= CHAR && LA124_3 <= CHARLITERAL)||(LA124_3 >= DOUBLE && LA124_3 <= DOUBLELITERAL)||LA124_3==FALSE||(LA124_3 >= FLOAT && LA124_3 <= FLOATLITERAL)||LA124_3==IDENTIFIER||LA124_3==INT||LA124_3==INTLITERAL||(LA124_3 >= LONG && LA124_3 <= LPAREN)||(LA124_3 >= NEW && LA124_3 <= NULL)||LA124_3==PLUS||LA124_3==PLUSPLUS||LA124_3==SHORT||(LA124_3 >= STRINGLITERAL && LA124_3 <= SUB)||(LA124_3 >= SUBSUB && LA124_3 <= SUPER)||LA124_3==THIS||LA124_3==TILDE||LA124_3==TRUE||LA124_3==VOID) ) { alt124=3; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { for (int nvaeConsume = 0; nvaeConsume < 3 - 1; nvaeConsume++) { input.consume(); } NoViableAltException nvae = new NoViableAltException("", 124, 3, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 124, 2, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else { if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 124, 0, input); throw nvae; } switch (alt124) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1525:10: '<' '<' { match(input,LT,FOLLOW_LT_in_shiftOp7148); if (state.failed) return; match(input,LT,FOLLOW_LT_in_shiftOp7150); if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1526:10: '>' '>' '>' { match(input,GT,FOLLOW_GT_in_shiftOp7161); if (state.failed) return; match(input,GT,FOLLOW_GT_in_shiftOp7163); if (state.failed) return; match(input,GT,FOLLOW_GT_in_shiftOp7165); if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1527:10: '>' '>' { match(input,GT,FOLLOW_GT_in_shiftOp7176); if (state.failed) return; match(input,GT,FOLLOW_GT_in_shiftOp7178); if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 83, shiftOp_StartIndex); } } } // $ANTLR end "shiftOp" // $ANTLR start "additiveExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1531:1: additiveExpression : multiplicativeExpression ( ( '+' | '-' ) multiplicativeExpression )* ; public final void additiveExpression() throws RecognitionException { int additiveExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 84) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1532:5: ( multiplicativeExpression ( ( '+' | '-' ) multiplicativeExpression )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1532:9: multiplicativeExpression ( ( '+' | '-' ) multiplicativeExpression )* { pushFollow(FOLLOW_multiplicativeExpression_in_additiveExpression7199); multiplicativeExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1533:9: ( ( '+' | '-' ) multiplicativeExpression )* loop125: while (true) { int alt125=2; int LA125_0 = input.LA(1); if ( (LA125_0==PLUS||LA125_0==SUB) ) { alt125=1; } switch (alt125) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1534:13: ( '+' | '-' ) multiplicativeExpression { if ( input.LA(1)==PLUS||input.LA(1)==SUB ) { input.consume(); state.errorRecovery=false; state.failed=false; } else { if (state.backtracking>0) {state.failed=true; return;} MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } pushFollow(FOLLOW_multiplicativeExpression_in_additiveExpression7276); multiplicativeExpression(); state._fsp--; if (state.failed) return; } break; default : break loop125; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 84, additiveExpression_StartIndex); } } } // $ANTLR end "additiveExpression" // $ANTLR start "multiplicativeExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1541:1: multiplicativeExpression : unaryExpression ( ( '*' | '/' | '%' ) unaryExpression )* ; public final void multiplicativeExpression() throws RecognitionException { int multiplicativeExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 85) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1542:5: ( unaryExpression ( ( '*' | '/' | '%' ) unaryExpression )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1543:9: unaryExpression ( ( '*' | '/' | '%' ) unaryExpression )* { pushFollow(FOLLOW_unaryExpression_in_multiplicativeExpression7314); unaryExpression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1544:9: ( ( '*' | '/' | '%' ) unaryExpression )* loop126: while (true) { int alt126=2; int LA126_0 = input.LA(1); if ( (LA126_0==PERCENT||LA126_0==SLASH||LA126_0==STAR) ) { alt126=1; } switch (alt126) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1545:13: ( '*' | '/' | '%' ) unaryExpression { if ( input.LA(1)==PERCENT||input.LA(1)==SLASH||input.LA(1)==STAR ) { input.consume(); state.errorRecovery=false; state.failed=false; } else { if (state.backtracking>0) {state.failed=true; return;} MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } pushFollow(FOLLOW_unaryExpression_in_multiplicativeExpression7409); unaryExpression(); state._fsp--; if (state.failed) return; } break; default : break loop126; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 85, multiplicativeExpression_StartIndex); } } } // $ANTLR end "multiplicativeExpression" // $ANTLR start "unaryExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1557:1: unaryExpression : ( '+' unaryExpression | '-' unaryExpression | '++' unaryExpression | '--' unaryExpression | unaryExpressionNotPlusMinus ); public final void unaryExpression() throws RecognitionException { int unaryExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 86) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1558:5: ( '+' unaryExpression | '-' unaryExpression | '++' unaryExpression | '--' unaryExpression | unaryExpressionNotPlusMinus ) int alt127=5; switch ( input.LA(1) ) { case PLUS: { alt127=1; } break; case SUB: { alt127=2; } break; case PLUSPLUS: { alt127=3; } break; case SUBSUB: { alt127=4; } break; case BANG: case BOOLEAN: case BYTE: case CHAR: case CHARLITERAL: case DOUBLE: case DOUBLELITERAL: case FALSE: case FLOAT: case FLOATLITERAL: case IDENTIFIER: case INT: case INTLITERAL: case LONG: case LONGLITERAL: case LPAREN: case NEW: case NULL: case SHORT: case STRINGLITERAL: case SUPER: case THIS: case TILDE: case TRUE: case VOID: { alt127=5; } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 127, 0, input); throw nvae; } switch (alt127) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1558:9: '+' unaryExpression { match(input,PLUS,FOLLOW_PLUS_in_unaryExpression7442); if (state.failed) return; pushFollow(FOLLOW_unaryExpression_in_unaryExpression7445); unaryExpression(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1559:9: '-' unaryExpression { match(input,SUB,FOLLOW_SUB_in_unaryExpression7455); if (state.failed) return; pushFollow(FOLLOW_unaryExpression_in_unaryExpression7457); unaryExpression(); state._fsp--; if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1560:9: '++' unaryExpression { match(input,PLUSPLUS,FOLLOW_PLUSPLUS_in_unaryExpression7467); if (state.failed) return; pushFollow(FOLLOW_unaryExpression_in_unaryExpression7469); unaryExpression(); state._fsp--; if (state.failed) return; } break; case 4 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1561:9: '--' unaryExpression { match(input,SUBSUB,FOLLOW_SUBSUB_in_unaryExpression7479); if (state.failed) return; pushFollow(FOLLOW_unaryExpression_in_unaryExpression7481); unaryExpression(); state._fsp--; if (state.failed) return; } break; case 5 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1562:9: unaryExpressionNotPlusMinus { pushFollow(FOLLOW_unaryExpressionNotPlusMinus_in_unaryExpression7491); unaryExpressionNotPlusMinus(); state._fsp--; if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 86, unaryExpression_StartIndex); } } } // $ANTLR end "unaryExpression" // $ANTLR start "unaryExpressionNotPlusMinus" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1565:1: unaryExpressionNotPlusMinus : ( '~' unaryExpression | '!' unaryExpression | castExpression | primary ( selector )* ( '++' | '--' )? ); public final void unaryExpressionNotPlusMinus() throws RecognitionException { int unaryExpressionNotPlusMinus_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 87) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1566:5: ( '~' unaryExpression | '!' unaryExpression | castExpression | primary ( selector )* ( '++' | '--' )? ) int alt130=4; switch ( input.LA(1) ) { case TILDE: { alt130=1; } break; case BANG: { alt130=2; } break; case LPAREN: { int LA130_3 = input.LA(2); if ( (synpred202_Java()) ) { alt130=3; } else if ( (true) ) { alt130=4; } } break; case BOOLEAN: case BYTE: case CHAR: case CHARLITERAL: case DOUBLE: case DOUBLELITERAL: case FALSE: case FLOAT: case FLOATLITERAL: case IDENTIFIER: case INT: case INTLITERAL: case LONG: case LONGLITERAL: case NEW: case NULL: case SHORT: case STRINGLITERAL: case SUPER: case THIS: case TRUE: case VOID: { alt130=4; } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 130, 0, input); throw nvae; } switch (alt130) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1566:9: '~' unaryExpression { match(input,TILDE,FOLLOW_TILDE_in_unaryExpressionNotPlusMinus7511); if (state.failed) return; pushFollow(FOLLOW_unaryExpression_in_unaryExpressionNotPlusMinus7513); unaryExpression(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1567:9: '!' unaryExpression { match(input,BANG,FOLLOW_BANG_in_unaryExpressionNotPlusMinus7523); if (state.failed) return; pushFollow(FOLLOW_unaryExpression_in_unaryExpressionNotPlusMinus7525); unaryExpression(); state._fsp--; if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1568:9: castExpression { pushFollow(FOLLOW_castExpression_in_unaryExpressionNotPlusMinus7535); castExpression(); state._fsp--; if (state.failed) return; } break; case 4 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1569:9: primary ( selector )* ( '++' | '--' )? { pushFollow(FOLLOW_primary_in_unaryExpressionNotPlusMinus7545); primary(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1570:9: ( selector )* loop128: while (true) { int alt128=2; int LA128_0 = input.LA(1); if ( (LA128_0==DOT||LA128_0==LBRACKET) ) { alt128=1; } switch (alt128) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1570:10: selector { pushFollow(FOLLOW_selector_in_unaryExpressionNotPlusMinus7556); selector(); state._fsp--; if (state.failed) return; } break; default : break loop128; } } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1572:9: ( '++' | '--' )? int alt129=2; int LA129_0 = input.LA(1); if ( (LA129_0==PLUSPLUS||LA129_0==SUBSUB) ) { alt129=1; } switch (alt129) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g: { if ( input.LA(1)==PLUSPLUS||input.LA(1)==SUBSUB ) { input.consume(); state.errorRecovery=false; state.failed=false; } else { if (state.backtracking>0) {state.failed=true; return;} MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } } break; } } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 87, unaryExpressionNotPlusMinus_StartIndex); } } } // $ANTLR end "unaryExpressionNotPlusMinus" // $ANTLR start "castExpression" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1577:1: castExpression : ( '(' primitiveType ')' unaryExpression | '(' type ')' unaryExpressionNotPlusMinus ); public final void castExpression() throws RecognitionException { int castExpression_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 88) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1578:5: ( '(' primitiveType ')' unaryExpression | '(' type ')' unaryExpressionNotPlusMinus ) int alt131=2; int LA131_0 = input.LA(1); if ( (LA131_0==LPAREN) ) { int LA131_1 = input.LA(2); if ( (synpred206_Java()) ) { alt131=1; } else if ( (true) ) { alt131=2; } } else { if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 131, 0, input); throw nvae; } switch (alt131) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1578:9: '(' primitiveType ')' unaryExpression { match(input,LPAREN,FOLLOW_LPAREN_in_castExpression7626); if (state.failed) return; pushFollow(FOLLOW_primitiveType_in_castExpression7628); primitiveType(); state._fsp--; if (state.failed) return; match(input,RPAREN,FOLLOW_RPAREN_in_castExpression7630); if (state.failed) return; pushFollow(FOLLOW_unaryExpression_in_castExpression7632); unaryExpression(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1579:9: '(' type ')' unaryExpressionNotPlusMinus { match(input,LPAREN,FOLLOW_LPAREN_in_castExpression7642); if (state.failed) return; pushFollow(FOLLOW_type_in_castExpression7644); type(); state._fsp--; if (state.failed) return; match(input,RPAREN,FOLLOW_RPAREN_in_castExpression7646); if (state.failed) return; pushFollow(FOLLOW_unaryExpressionNotPlusMinus_in_castExpression7648); unaryExpressionNotPlusMinus(); state._fsp--; if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 88, castExpression_StartIndex); } } } // $ANTLR end "castExpression" // $ANTLR start "primary" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1585:1: primary : ( parExpression | 'this' ( '.' IDENTIFIER )* ( identifierSuffix )? | IDENTIFIER ( '.' IDENTIFIER )* ( identifierSuffix )? | 'super' superSuffix | literal | creator | primitiveType ( '[' ']' )* '.' 'class' | 'void' '.' 'class' ); public final void primary() throws RecognitionException { int primary_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 89) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1586:5: ( parExpression | 'this' ( '.' IDENTIFIER )* ( identifierSuffix )? | IDENTIFIER ( '.' IDENTIFIER )* ( identifierSuffix )? | 'super' superSuffix | literal | creator | primitiveType ( '[' ']' )* '.' 'class' | 'void' '.' 'class' ) int alt137=8; switch ( input.LA(1) ) { case LPAREN: { alt137=1; } break; case THIS: { alt137=2; } break; case IDENTIFIER: { alt137=3; } break; case SUPER: { alt137=4; } break; case CHARLITERAL: case DOUBLELITERAL: case FALSE: case FLOATLITERAL: case INTLITERAL: case LONGLITERAL: case NULL: case STRINGLITERAL: case TRUE: { alt137=5; } break; case NEW: { alt137=6; } break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: { alt137=7; } break; case VOID: { alt137=8; } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 137, 0, input); throw nvae; } switch (alt137) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1586:9: parExpression { pushFollow(FOLLOW_parExpression_in_primary7670); parExpression(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1587:9: 'this' ( '.' IDENTIFIER )* ( identifierSuffix )? { match(input,THIS,FOLLOW_THIS_in_primary7692); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1588:9: ( '.' IDENTIFIER )* loop132: while (true) { int alt132=2; int LA132_0 = input.LA(1); if ( (LA132_0==DOT) ) { int LA132_2 = input.LA(2); if ( (LA132_2==IDENTIFIER) ) { int LA132_3 = input.LA(3); if ( (synpred208_Java()) ) { alt132=1; } } } switch (alt132) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1588:10: '.' IDENTIFIER { match(input,DOT,FOLLOW_DOT_in_primary7703); if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_primary7705); if (state.failed) return; } break; default : break loop132; } } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1590:9: ( identifierSuffix )? int alt133=2; switch ( input.LA(1) ) { case LBRACKET: { int LA133_1 = input.LA(2); if ( (synpred209_Java()) ) { alt133=1; } } break; case LPAREN: { alt133=1; } break; case DOT: { int LA133_3 = input.LA(2); if ( (synpred209_Java()) ) { alt133=1; } } break; } switch (alt133) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1590:10: identifierSuffix { pushFollow(FOLLOW_identifierSuffix_in_primary7727); identifierSuffix(); state._fsp--; if (state.failed) return; } break; } } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1592:9: IDENTIFIER ( '.' IDENTIFIER )* ( identifierSuffix )? { match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_primary7748); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1593:9: ( '.' IDENTIFIER )* loop134: while (true) { int alt134=2; int LA134_0 = input.LA(1); if ( (LA134_0==DOT) ) { int LA134_2 = input.LA(2); if ( (LA134_2==IDENTIFIER) ) { int LA134_3 = input.LA(3); if ( (synpred211_Java()) ) { alt134=1; } } } switch (alt134) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1593:10: '.' IDENTIFIER { match(input,DOT,FOLLOW_DOT_in_primary7759); if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_primary7761); if (state.failed) return; } break; default : break loop134; } } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1595:9: ( identifierSuffix )? int alt135=2; switch ( input.LA(1) ) { case LBRACKET: { int LA135_1 = input.LA(2); if ( (synpred212_Java()) ) { alt135=1; } } break; case LPAREN: { alt135=1; } break; case DOT: { int LA135_3 = input.LA(2); if ( (synpred212_Java()) ) { alt135=1; } } break; } switch (alt135) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1595:10: identifierSuffix { pushFollow(FOLLOW_identifierSuffix_in_primary7783); identifierSuffix(); state._fsp--; if (state.failed) return; } break; } } break; case 4 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1597:9: 'super' superSuffix { match(input,SUPER,FOLLOW_SUPER_in_primary7804); if (state.failed) return; pushFollow(FOLLOW_superSuffix_in_primary7814); superSuffix(); state._fsp--; if (state.failed) return; } break; case 5 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1599:9: literal { pushFollow(FOLLOW_literal_in_primary7824); literal(); state._fsp--; if (state.failed) return; } break; case 6 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1600:9: creator { pushFollow(FOLLOW_creator_in_primary7834); creator(); state._fsp--; if (state.failed) return; } break; case 7 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1601:9: primitiveType ( '[' ']' )* '.' 'class' { pushFollow(FOLLOW_primitiveType_in_primary7844); primitiveType(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1602:9: ( '[' ']' )* loop136: while (true) { int alt136=2; int LA136_0 = input.LA(1); if ( (LA136_0==LBRACKET) ) { alt136=1; } switch (alt136) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1602:10: '[' ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_primary7855); if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_primary7857); if (state.failed) return; } break; default : break loop136; } } match(input,DOT,FOLLOW_DOT_in_primary7878); if (state.failed) return; match(input,CLASS,FOLLOW_CLASS_in_primary7880); if (state.failed) return; } break; case 8 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1605:9: 'void' '.' 'class' { match(input,VOID,FOLLOW_VOID_in_primary7890); if (state.failed) return; match(input,DOT,FOLLOW_DOT_in_primary7892); if (state.failed) return; match(input,CLASS,FOLLOW_CLASS_in_primary7894); if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 89, primary_StartIndex); } } } // $ANTLR end "primary" // $ANTLR start "superSuffix" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1609:1: superSuffix : ( arguments | '.' ( typeArguments )? IDENTIFIER ( arguments )? ); public final void superSuffix() throws RecognitionException { int superSuffix_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 90) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1610:5: ( arguments | '.' ( typeArguments )? IDENTIFIER ( arguments )? ) int alt140=2; int LA140_0 = input.LA(1); if ( (LA140_0==LPAREN) ) { alt140=1; } else if ( (LA140_0==DOT) ) { alt140=2; } else { if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 140, 0, input); throw nvae; } switch (alt140) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1610:9: arguments { pushFollow(FOLLOW_arguments_in_superSuffix7920); arguments(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1611:9: '.' ( typeArguments )? IDENTIFIER ( arguments )? { match(input,DOT,FOLLOW_DOT_in_superSuffix7930); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1611:13: ( typeArguments )? int alt138=2; int LA138_0 = input.LA(1); if ( (LA138_0==LT) ) { alt138=1; } switch (alt138) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1611:14: typeArguments { pushFollow(FOLLOW_typeArguments_in_superSuffix7933); typeArguments(); state._fsp--; if (state.failed) return; } break; } match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_superSuffix7954); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1614:9: ( arguments )? int alt139=2; int LA139_0 = input.LA(1); if ( (LA139_0==LPAREN) ) { alt139=1; } switch (alt139) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1614:10: arguments { pushFollow(FOLLOW_arguments_in_superSuffix7965); arguments(); state._fsp--; if (state.failed) return; } break; } } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 90, superSuffix_StartIndex); } } } // $ANTLR end "superSuffix" // $ANTLR start "identifierSuffix" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1619:1: identifierSuffix : ( ( '[' ']' )+ '.' 'class' | ( '[' expression ']' )+ | arguments | '.' 'class' | '.' nonWildcardTypeArguments IDENTIFIER arguments | '.' 'this' | '.' 'super' arguments | innerCreator ); public final void identifierSuffix() throws RecognitionException { int identifierSuffix_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 91) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1620:5: ( ( '[' ']' )+ '.' 'class' | ( '[' expression ']' )+ | arguments | '.' 'class' | '.' nonWildcardTypeArguments IDENTIFIER arguments | '.' 'this' | '.' 'super' arguments | innerCreator ) int alt143=8; switch ( input.LA(1) ) { case LBRACKET: { int LA143_1 = input.LA(2); if ( (LA143_1==RBRACKET) ) { alt143=1; } else if ( (LA143_1==BANG||LA143_1==BOOLEAN||LA143_1==BYTE||(LA143_1 >= CHAR && LA143_1 <= CHARLITERAL)||(LA143_1 >= DOUBLE && LA143_1 <= DOUBLELITERAL)||LA143_1==FALSE||(LA143_1 >= FLOAT && LA143_1 <= FLOATLITERAL)||LA143_1==IDENTIFIER||LA143_1==INT||LA143_1==INTLITERAL||(LA143_1 >= LONG && LA143_1 <= LPAREN)||(LA143_1 >= NEW && LA143_1 <= NULL)||LA143_1==PLUS||LA143_1==PLUSPLUS||LA143_1==SHORT||(LA143_1 >= STRINGLITERAL && LA143_1 <= SUB)||(LA143_1 >= SUBSUB && LA143_1 <= SUPER)||LA143_1==THIS||LA143_1==TILDE||LA143_1==TRUE||LA143_1==VOID) ) { alt143=2; } else { if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 143, 1, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; case LPAREN: { alt143=3; } break; case DOT: { switch ( input.LA(2) ) { case CLASS: { alt143=4; } break; case THIS: { alt143=6; } break; case SUPER: { alt143=7; } break; case NEW: { alt143=8; } break; case LT: { alt143=5; } break; default: if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 143, 3, input); throw nvae; } finally { input.rewind(nvaeMark); } } } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 143, 0, input); throw nvae; } switch (alt143) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1620:9: ( '[' ']' )+ '.' 'class' { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1620:9: ( '[' ']' )+ int cnt141=0; loop141: while (true) { int alt141=2; int LA141_0 = input.LA(1); if ( (LA141_0==LBRACKET) ) { alt141=1; } switch (alt141) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1620:10: '[' ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_identifierSuffix7998); if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_identifierSuffix8000); if (state.failed) return; } break; default : if ( cnt141 >= 1 ) break loop141; if (state.backtracking>0) {state.failed=true; return;} EarlyExitException eee = new EarlyExitException(141, input); throw eee; } cnt141++; } match(input,DOT,FOLLOW_DOT_in_identifierSuffix8021); if (state.failed) return; match(input,CLASS,FOLLOW_CLASS_in_identifierSuffix8023); if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1623:9: ( '[' expression ']' )+ { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1623:9: ( '[' expression ']' )+ int cnt142=0; loop142: while (true) { int alt142=2; int LA142_0 = input.LA(1); if ( (LA142_0==LBRACKET) ) { int LA142_2 = input.LA(2); if ( (synpred224_Java()) ) { alt142=1; } } switch (alt142) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1623:10: '[' expression ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_identifierSuffix8034); if (state.failed) return; pushFollow(FOLLOW_expression_in_identifierSuffix8036); expression(); state._fsp--; if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_identifierSuffix8038); if (state.failed) return; } break; default : if ( cnt142 >= 1 ) break loop142; if (state.backtracking>0) {state.failed=true; return;} EarlyExitException eee = new EarlyExitException(142, input); throw eee; } cnt142++; } } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1625:9: arguments { pushFollow(FOLLOW_arguments_in_identifierSuffix8059); arguments(); state._fsp--; if (state.failed) return; } break; case 4 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1626:9: '.' 'class' { match(input,DOT,FOLLOW_DOT_in_identifierSuffix8069); if (state.failed) return; match(input,CLASS,FOLLOW_CLASS_in_identifierSuffix8071); if (state.failed) return; } break; case 5 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1627:9: '.' nonWildcardTypeArguments IDENTIFIER arguments { match(input,DOT,FOLLOW_DOT_in_identifierSuffix8081); if (state.failed) return; pushFollow(FOLLOW_nonWildcardTypeArguments_in_identifierSuffix8083); nonWildcardTypeArguments(); state._fsp--; if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_identifierSuffix8085); if (state.failed) return; pushFollow(FOLLOW_arguments_in_identifierSuffix8087); arguments(); state._fsp--; if (state.failed) return; } break; case 6 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1628:9: '.' 'this' { match(input,DOT,FOLLOW_DOT_in_identifierSuffix8097); if (state.failed) return; match(input,THIS,FOLLOW_THIS_in_identifierSuffix8099); if (state.failed) return; } break; case 7 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1629:9: '.' 'super' arguments { match(input,DOT,FOLLOW_DOT_in_identifierSuffix8109); if (state.failed) return; match(input,SUPER,FOLLOW_SUPER_in_identifierSuffix8111); if (state.failed) return; pushFollow(FOLLOW_arguments_in_identifierSuffix8113); arguments(); state._fsp--; if (state.failed) return; } break; case 8 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1630:9: innerCreator { pushFollow(FOLLOW_innerCreator_in_identifierSuffix8123); innerCreator(); state._fsp--; if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 91, identifierSuffix_StartIndex); } } } // $ANTLR end "identifierSuffix" // $ANTLR start "selector" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1634:1: selector : ( '.' IDENTIFIER ( arguments )? | '.' 'this' | '.' 'super' superSuffix | innerCreator | '[' expression ']' ); public final void selector() throws RecognitionException { int selector_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 92) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1635:5: ( '.' IDENTIFIER ( arguments )? | '.' 'this' | '.' 'super' superSuffix | innerCreator | '[' expression ']' ) int alt145=5; int LA145_0 = input.LA(1); if ( (LA145_0==DOT) ) { switch ( input.LA(2) ) { case IDENTIFIER: { alt145=1; } break; case THIS: { alt145=2; } break; case SUPER: { alt145=3; } break; case NEW: { alt145=4; } break; default: if (state.backtracking>0) {state.failed=true; return;} int nvaeMark = input.mark(); try { input.consume(); NoViableAltException nvae = new NoViableAltException("", 145, 1, input); throw nvae; } finally { input.rewind(nvaeMark); } } } else if ( (LA145_0==LBRACKET) ) { alt145=5; } else { if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 145, 0, input); throw nvae; } switch (alt145) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1635:9: '.' IDENTIFIER ( arguments )? { match(input,DOT,FOLLOW_DOT_in_selector8145); if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_selector8147); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1636:9: ( arguments )? int alt144=2; int LA144_0 = input.LA(1); if ( (LA144_0==LPAREN) ) { alt144=1; } switch (alt144) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1636:10: arguments { pushFollow(FOLLOW_arguments_in_selector8158); arguments(); state._fsp--; if (state.failed) return; } break; } } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1638:9: '.' 'this' { match(input,DOT,FOLLOW_DOT_in_selector8179); if (state.failed) return; match(input,THIS,FOLLOW_THIS_in_selector8181); if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1639:9: '.' 'super' superSuffix { match(input,DOT,FOLLOW_DOT_in_selector8191); if (state.failed) return; match(input,SUPER,FOLLOW_SUPER_in_selector8193); if (state.failed) return; pushFollow(FOLLOW_superSuffix_in_selector8203); superSuffix(); state._fsp--; if (state.failed) return; } break; case 4 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1641:9: innerCreator { pushFollow(FOLLOW_innerCreator_in_selector8213); innerCreator(); state._fsp--; if (state.failed) return; } break; case 5 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1642:9: '[' expression ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_selector8223); if (state.failed) return; pushFollow(FOLLOW_expression_in_selector8225); expression(); state._fsp--; if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_selector8227); if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 92, selector_StartIndex); } } } // $ANTLR end "selector" // $ANTLR start "creator" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1645:1: creator : ( 'new' nonWildcardTypeArguments classOrInterfaceType classCreatorRest | 'new' classOrInterfaceType classCreatorRest | arrayCreator ); public final void creator() throws RecognitionException { int creator_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 93) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1646:5: ( 'new' nonWildcardTypeArguments classOrInterfaceType classCreatorRest | 'new' classOrInterfaceType classCreatorRest | arrayCreator ) int alt146=3; int LA146_0 = input.LA(1); if ( (LA146_0==NEW) ) { int LA146_1 = input.LA(2); if ( (synpred236_Java()) ) { alt146=1; } else if ( (synpred237_Java()) ) { alt146=2; } else if ( (true) ) { alt146=3; } } else { if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 146, 0, input); throw nvae; } switch (alt146) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1646:9: 'new' nonWildcardTypeArguments classOrInterfaceType classCreatorRest { match(input,NEW,FOLLOW_NEW_in_creator8247); if (state.failed) return; pushFollow(FOLLOW_nonWildcardTypeArguments_in_creator8249); nonWildcardTypeArguments(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_classOrInterfaceType_in_creator8251); classOrInterfaceType(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_classCreatorRest_in_creator8253); classCreatorRest(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1647:9: 'new' classOrInterfaceType classCreatorRest { match(input,NEW,FOLLOW_NEW_in_creator8263); if (state.failed) return; pushFollow(FOLLOW_classOrInterfaceType_in_creator8265); classOrInterfaceType(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_classCreatorRest_in_creator8267); classCreatorRest(); state._fsp--; if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1648:9: arrayCreator { pushFollow(FOLLOW_arrayCreator_in_creator8277); arrayCreator(); state._fsp--; if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 93, creator_StartIndex); } } } // $ANTLR end "creator" // $ANTLR start "arrayCreator" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1651:1: arrayCreator : ( 'new' createdName '[' ']' ( '[' ']' )* arrayInitializer | 'new' createdName '[' expression ']' ( '[' expression ']' )* ( '[' ']' )* ); public final void arrayCreator() throws RecognitionException { int arrayCreator_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 94) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1652:5: ( 'new' createdName '[' ']' ( '[' ']' )* arrayInitializer | 'new' createdName '[' expression ']' ( '[' expression ']' )* ( '[' ']' )* ) int alt150=2; int LA150_0 = input.LA(1); if ( (LA150_0==NEW) ) { int LA150_1 = input.LA(2); if ( (synpred239_Java()) ) { alt150=1; } else if ( (true) ) { alt150=2; } } else { if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 150, 0, input); throw nvae; } switch (alt150) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1652:9: 'new' createdName '[' ']' ( '[' ']' )* arrayInitializer { match(input,NEW,FOLLOW_NEW_in_arrayCreator8297); if (state.failed) return; pushFollow(FOLLOW_createdName_in_arrayCreator8299); createdName(); state._fsp--; if (state.failed) return; match(input,LBRACKET,FOLLOW_LBRACKET_in_arrayCreator8309); if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_arrayCreator8311); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1654:9: ( '[' ']' )* loop147: while (true) { int alt147=2; int LA147_0 = input.LA(1); if ( (LA147_0==LBRACKET) ) { alt147=1; } switch (alt147) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1654:10: '[' ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_arrayCreator8322); if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_arrayCreator8324); if (state.failed) return; } break; default : break loop147; } } pushFollow(FOLLOW_arrayInitializer_in_arrayCreator8345); arrayInitializer(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1658:9: 'new' createdName '[' expression ']' ( '[' expression ']' )* ( '[' ']' )* { match(input,NEW,FOLLOW_NEW_in_arrayCreator8356); if (state.failed) return; pushFollow(FOLLOW_createdName_in_arrayCreator8358); createdName(); state._fsp--; if (state.failed) return; match(input,LBRACKET,FOLLOW_LBRACKET_in_arrayCreator8368); if (state.failed) return; pushFollow(FOLLOW_expression_in_arrayCreator8370); expression(); state._fsp--; if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_arrayCreator8380); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1661:9: ( '[' expression ']' )* loop148: while (true) { int alt148=2; int LA148_0 = input.LA(1); if ( (LA148_0==LBRACKET) ) { int LA148_1 = input.LA(2); if ( (synpred240_Java()) ) { alt148=1; } } switch (alt148) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1661:13: '[' expression ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_arrayCreator8394); if (state.failed) return; pushFollow(FOLLOW_expression_in_arrayCreator8396); expression(); state._fsp--; if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_arrayCreator8410); if (state.failed) return; } break; default : break loop148; } } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1664:9: ( '[' ']' )* loop149: while (true) { int alt149=2; int LA149_0 = input.LA(1); if ( (LA149_0==LBRACKET) ) { int LA149_2 = input.LA(2); if ( (LA149_2==RBRACKET) ) { alt149=1; } } switch (alt149) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1664:10: '[' ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_arrayCreator8432); if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_arrayCreator8434); if (state.failed) return; } break; default : break loop149; } } } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 94, arrayCreator_StartIndex); } } } // $ANTLR end "arrayCreator" public static class variableInitializer_return extends ParserRuleReturnScope { }; // $ANTLR start "variableInitializer" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1668:1: variableInitializer : ( arrayInitializer | expression ); public final JavaParser.variableInitializer_return variableInitializer() throws RecognitionException { JavaParser.variableInitializer_return retval = new JavaParser.variableInitializer_return(); retval.start = input.LT(1); int variableInitializer_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 95) ) { return retval; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1669:5: ( arrayInitializer | expression ) int alt151=2; int LA151_0 = input.LA(1); if ( (LA151_0==LBRACE) ) { alt151=1; } else if ( (LA151_0==BANG||LA151_0==BOOLEAN||LA151_0==BYTE||(LA151_0 >= CHAR && LA151_0 <= CHARLITERAL)||(LA151_0 >= DOUBLE && LA151_0 <= DOUBLELITERAL)||LA151_0==FALSE||(LA151_0 >= FLOAT && LA151_0 <= FLOATLITERAL)||LA151_0==IDENTIFIER||LA151_0==INT||LA151_0==INTLITERAL||(LA151_0 >= LONG && LA151_0 <= LPAREN)||(LA151_0 >= NEW && LA151_0 <= NULL)||LA151_0==PLUS||LA151_0==PLUSPLUS||LA151_0==SHORT||(LA151_0 >= STRINGLITERAL && LA151_0 <= SUB)||(LA151_0 >= SUBSUB && LA151_0 <= SUPER)||LA151_0==THIS||LA151_0==TILDE||LA151_0==TRUE||LA151_0==VOID) ) { alt151=2; } else { if (state.backtracking>0) {state.failed=true; return retval;} NoViableAltException nvae = new NoViableAltException("", 151, 0, input); throw nvae; } switch (alt151) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1669:9: arrayInitializer { pushFollow(FOLLOW_arrayInitializer_in_variableInitializer8465); arrayInitializer(); state._fsp--; if (state.failed) return retval; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1670:9: expression { pushFollow(FOLLOW_expression_in_variableInitializer8475); expression(); state._fsp--; if (state.failed) return retval; } break; } retval.stop = input.LT(-1); } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 95, variableInitializer_StartIndex); } } return retval; } // $ANTLR end "variableInitializer" // $ANTLR start "arrayInitializer" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1673:1: arrayInitializer : '{' ( variableInitializer ( ',' variableInitializer )* )? ( ',' )? '}' ; public final void arrayInitializer() throws RecognitionException { int arrayInitializer_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 96) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1674:5: ( '{' ( variableInitializer ( ',' variableInitializer )* )? ( ',' )? '}' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1674:9: '{' ( variableInitializer ( ',' variableInitializer )* )? ( ',' )? '}' { match(input,LBRACE,FOLLOW_LBRACE_in_arrayInitializer8495); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1675:13: ( variableInitializer ( ',' variableInitializer )* )? int alt153=2; int LA153_0 = input.LA(1); if ( (LA153_0==BANG||LA153_0==BOOLEAN||LA153_0==BYTE||(LA153_0 >= CHAR && LA153_0 <= CHARLITERAL)||(LA153_0 >= DOUBLE && LA153_0 <= DOUBLELITERAL)||LA153_0==FALSE||(LA153_0 >= FLOAT && LA153_0 <= FLOATLITERAL)||LA153_0==IDENTIFIER||LA153_0==INT||LA153_0==INTLITERAL||LA153_0==LBRACE||(LA153_0 >= LONG && LA153_0 <= LPAREN)||(LA153_0 >= NEW && LA153_0 <= NULL)||LA153_0==PLUS||LA153_0==PLUSPLUS||LA153_0==SHORT||(LA153_0 >= STRINGLITERAL && LA153_0 <= SUB)||(LA153_0 >= SUBSUB && LA153_0 <= SUPER)||LA153_0==THIS||LA153_0==TILDE||LA153_0==TRUE||LA153_0==VOID) ) { alt153=1; } switch (alt153) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1675:14: variableInitializer ( ',' variableInitializer )* { pushFollow(FOLLOW_variableInitializer_in_arrayInitializer8511); variableInitializer(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1676:17: ( ',' variableInitializer )* loop152: while (true) { int alt152=2; int LA152_0 = input.LA(1); if ( (LA152_0==COMMA) ) { int LA152_1 = input.LA(2); if ( (LA152_1==BANG||LA152_1==BOOLEAN||LA152_1==BYTE||(LA152_1 >= CHAR && LA152_1 <= CHARLITERAL)||(LA152_1 >= DOUBLE && LA152_1 <= DOUBLELITERAL)||LA152_1==FALSE||(LA152_1 >= FLOAT && LA152_1 <= FLOATLITERAL)||LA152_1==IDENTIFIER||LA152_1==INT||LA152_1==INTLITERAL||LA152_1==LBRACE||(LA152_1 >= LONG && LA152_1 <= LPAREN)||(LA152_1 >= NEW && LA152_1 <= NULL)||LA152_1==PLUS||LA152_1==PLUSPLUS||LA152_1==SHORT||(LA152_1 >= STRINGLITERAL && LA152_1 <= SUB)||(LA152_1 >= SUBSUB && LA152_1 <= SUPER)||LA152_1==THIS||LA152_1==TILDE||LA152_1==TRUE||LA152_1==VOID) ) { alt152=1; } } switch (alt152) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1676:18: ',' variableInitializer { match(input,COMMA,FOLLOW_COMMA_in_arrayInitializer8530); if (state.failed) return; pushFollow(FOLLOW_variableInitializer_in_arrayInitializer8532); variableInitializer(); state._fsp--; if (state.failed) return; } break; default : break loop152; } } } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1679:13: ( ',' )? int alt154=2; int LA154_0 = input.LA(1); if ( (LA154_0==COMMA) ) { alt154=1; } switch (alt154) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1679:14: ',' { match(input,COMMA,FOLLOW_COMMA_in_arrayInitializer8582); if (state.failed) return; } break; } match(input,RBRACE,FOLLOW_RBRACE_in_arrayInitializer8595); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 96, arrayInitializer_StartIndex); } } } // $ANTLR end "arrayInitializer" // $ANTLR start "createdName" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1684:1: createdName : ( classOrInterfaceType | primitiveType ); public final void createdName() throws RecognitionException { int createdName_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 97) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1685:5: ( classOrInterfaceType | primitiveType ) int alt155=2; int LA155_0 = input.LA(1); if ( (LA155_0==IDENTIFIER) ) { alt155=1; } else if ( (LA155_0==BOOLEAN||LA155_0==BYTE||LA155_0==CHAR||LA155_0==DOUBLE||LA155_0==FLOAT||LA155_0==INT||LA155_0==LONG||LA155_0==SHORT) ) { alt155=2; } else { if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 155, 0, input); throw nvae; } switch (alt155) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1685:9: classOrInterfaceType { pushFollow(FOLLOW_classOrInterfaceType_in_createdName8629); classOrInterfaceType(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1686:9: primitiveType { pushFollow(FOLLOW_primitiveType_in_createdName8639); primitiveType(); state._fsp--; if (state.failed) return; } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 97, createdName_StartIndex); } } } // $ANTLR end "createdName" // $ANTLR start "innerCreator" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1689:1: innerCreator : '.' 'new' ( nonWildcardTypeArguments )? IDENTIFIER ( typeArguments )? classCreatorRest ; public final void innerCreator() throws RecognitionException { int innerCreator_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 98) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1690:5: ( '.' 'new' ( nonWildcardTypeArguments )? IDENTIFIER ( typeArguments )? classCreatorRest ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1690:9: '.' 'new' ( nonWildcardTypeArguments )? IDENTIFIER ( typeArguments )? classCreatorRest { match(input,DOT,FOLLOW_DOT_in_innerCreator8660); if (state.failed) return; match(input,NEW,FOLLOW_NEW_in_innerCreator8662); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1691:9: ( nonWildcardTypeArguments )? int alt156=2; int LA156_0 = input.LA(1); if ( (LA156_0==LT) ) { alt156=1; } switch (alt156) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1691:10: nonWildcardTypeArguments { pushFollow(FOLLOW_nonWildcardTypeArguments_in_innerCreator8673); nonWildcardTypeArguments(); state._fsp--; if (state.failed) return; } break; } match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_innerCreator8694); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1694:9: ( typeArguments )? int alt157=2; int LA157_0 = input.LA(1); if ( (LA157_0==LT) ) { alt157=1; } switch (alt157) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1694:10: typeArguments { pushFollow(FOLLOW_typeArguments_in_innerCreator8705); typeArguments(); state._fsp--; if (state.failed) return; } break; } pushFollow(FOLLOW_classCreatorRest_in_innerCreator8726); classCreatorRest(); state._fsp--; if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 98, innerCreator_StartIndex); } } } // $ANTLR end "innerCreator" // $ANTLR start "classCreatorRest" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1700:1: classCreatorRest : arguments ( classBody )? ; public final void classCreatorRest() throws RecognitionException { int classCreatorRest_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 99) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1701:5: ( arguments ( classBody )? ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1701:9: arguments ( classBody )? { pushFollow(FOLLOW_arguments_in_classCreatorRest8747); arguments(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1702:9: ( classBody )? int alt158=2; int LA158_0 = input.LA(1); if ( (LA158_0==LBRACE) ) { alt158=1; } switch (alt158) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1702:10: classBody { pushFollow(FOLLOW_classBody_in_classCreatorRest8758); classBody(); state._fsp--; if (state.failed) return; } break; } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 99, classCreatorRest_StartIndex); } } } // $ANTLR end "classCreatorRest" // $ANTLR start "nonWildcardTypeArguments" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1707:1: nonWildcardTypeArguments : '<' typeList '>' ; public final void nonWildcardTypeArguments() throws RecognitionException { int nonWildcardTypeArguments_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 100) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1708:5: ( '<' typeList '>' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1708:9: '<' typeList '>' { match(input,LT,FOLLOW_LT_in_nonWildcardTypeArguments8790); if (state.failed) return; pushFollow(FOLLOW_typeList_in_nonWildcardTypeArguments8792); typeList(); state._fsp--; if (state.failed) return; match(input,GT,FOLLOW_GT_in_nonWildcardTypeArguments8802); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 100, nonWildcardTypeArguments_StartIndex); } } } // $ANTLR end "nonWildcardTypeArguments" // $ANTLR start "arguments" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1712:1: arguments : '(' ( expressionList )? ')' ; public final void arguments() throws RecognitionException { int arguments_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 101) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1713:5: ( '(' ( expressionList )? ')' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1713:9: '(' ( expressionList )? ')' { match(input,LPAREN,FOLLOW_LPAREN_in_arguments8822); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1713:13: ( expressionList )? int alt159=2; int LA159_0 = input.LA(1); if ( (LA159_0==BANG||LA159_0==BOOLEAN||LA159_0==BYTE||(LA159_0 >= CHAR && LA159_0 <= CHARLITERAL)||(LA159_0 >= DOUBLE && LA159_0 <= DOUBLELITERAL)||LA159_0==FALSE||(LA159_0 >= FLOAT && LA159_0 <= FLOATLITERAL)||LA159_0==IDENTIFIER||LA159_0==INT||LA159_0==INTLITERAL||(LA159_0 >= LONG && LA159_0 <= LPAREN)||(LA159_0 >= NEW && LA159_0 <= NULL)||LA159_0==PLUS||LA159_0==PLUSPLUS||LA159_0==SHORT||(LA159_0 >= STRINGLITERAL && LA159_0 <= SUB)||(LA159_0 >= SUBSUB && LA159_0 <= SUPER)||LA159_0==THIS||LA159_0==TILDE||LA159_0==TRUE||LA159_0==VOID) ) { alt159=1; } switch (alt159) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1713:14: expressionList { pushFollow(FOLLOW_expressionList_in_arguments8825); expressionList(); state._fsp--; if (state.failed) return; } break; } match(input,RPAREN,FOLLOW_RPAREN_in_arguments8838); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 101, arguments_StartIndex); } } } // $ANTLR end "arguments" // $ANTLR start "literal" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1717:1: literal : ( INTLITERAL | LONGLITERAL | FLOATLITERAL | DOUBLELITERAL | CHARLITERAL | STRINGLITERAL | TRUE | FALSE | NULL ); public final void literal() throws RecognitionException { int literal_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 102) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1718:5: ( INTLITERAL | LONGLITERAL | FLOATLITERAL | DOUBLELITERAL | CHARLITERAL | STRINGLITERAL | TRUE | FALSE | NULL ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g: { if ( input.LA(1)==CHARLITERAL||input.LA(1)==DOUBLELITERAL||input.LA(1)==FALSE||input.LA(1)==FLOATLITERAL||input.LA(1)==INTLITERAL||input.LA(1)==LONGLITERAL||input.LA(1)==NULL||input.LA(1)==STRINGLITERAL||input.LA(1)==TRUE ) { input.consume(); state.errorRecovery=false; state.failed=false; } else { if (state.backtracking>0) {state.failed=true; return;} MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 102, literal_StartIndex); } } } // $ANTLR end "literal" // $ANTLR start "classHeader" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1733:1: classHeader : modifiers 'class' IDENTIFIER ; public final void classHeader() throws RecognitionException { int classHeader_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 103) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1734:5: ( modifiers 'class' IDENTIFIER ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1734:9: modifiers 'class' IDENTIFIER { pushFollow(FOLLOW_modifiers_in_classHeader8962); modifiers(); state._fsp--; if (state.failed) return; match(input,CLASS,FOLLOW_CLASS_in_classHeader8964); if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_classHeader8966); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 103, classHeader_StartIndex); } } } // $ANTLR end "classHeader" // $ANTLR start "enumHeader" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1737:1: enumHeader : modifiers ( 'enum' | IDENTIFIER ) IDENTIFIER ; public final void enumHeader() throws RecognitionException { int enumHeader_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 104) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1738:5: ( modifiers ( 'enum' | IDENTIFIER ) IDENTIFIER ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1738:9: modifiers ( 'enum' | IDENTIFIER ) IDENTIFIER { pushFollow(FOLLOW_modifiers_in_enumHeader8986); modifiers(); state._fsp--; if (state.failed) return; if ( input.LA(1)==ENUM||input.LA(1)==IDENTIFIER ) { input.consume(); state.errorRecovery=false; state.failed=false; } else { if (state.backtracking>0) {state.failed=true; return;} MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_enumHeader8994); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 104, enumHeader_StartIndex); } } } // $ANTLR end "enumHeader" // $ANTLR start "interfaceHeader" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1741:1: interfaceHeader : modifiers 'interface' IDENTIFIER ; public final void interfaceHeader() throws RecognitionException { int interfaceHeader_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 105) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1742:5: ( modifiers 'interface' IDENTIFIER ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1742:9: modifiers 'interface' IDENTIFIER { pushFollow(FOLLOW_modifiers_in_interfaceHeader9014); modifiers(); state._fsp--; if (state.failed) return; match(input,INTERFACE,FOLLOW_INTERFACE_in_interfaceHeader9016); if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_interfaceHeader9018); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 105, interfaceHeader_StartIndex); } } } // $ANTLR end "interfaceHeader" // $ANTLR start "annotationHeader" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1745:1: annotationHeader : modifiers '@' 'interface' IDENTIFIER ; public final void annotationHeader() throws RecognitionException { int annotationHeader_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 106) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1746:5: ( modifiers '@' 'interface' IDENTIFIER ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1746:9: modifiers '@' 'interface' IDENTIFIER { pushFollow(FOLLOW_modifiers_in_annotationHeader9038); modifiers(); state._fsp--; if (state.failed) return; match(input,MONKEYS_AT,FOLLOW_MONKEYS_AT_in_annotationHeader9040); if (state.failed) return; match(input,INTERFACE,FOLLOW_INTERFACE_in_annotationHeader9042); if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_annotationHeader9044); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 106, annotationHeader_StartIndex); } } } // $ANTLR end "annotationHeader" // $ANTLR start "typeHeader" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1749:1: typeHeader : modifiers ( 'class' | 'enum' | ( ( '@' )? 'interface' ) ) IDENTIFIER ; public final void typeHeader() throws RecognitionException { int typeHeader_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 107) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1750:5: ( modifiers ( 'class' | 'enum' | ( ( '@' )? 'interface' ) ) IDENTIFIER ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1750:9: modifiers ( 'class' | 'enum' | ( ( '@' )? 'interface' ) ) IDENTIFIER { pushFollow(FOLLOW_modifiers_in_typeHeader9064); modifiers(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1750:19: ( 'class' | 'enum' | ( ( '@' )? 'interface' ) ) int alt161=3; switch ( input.LA(1) ) { case CLASS: { alt161=1; } break; case ENUM: { alt161=2; } break; case INTERFACE: case MONKEYS_AT: { alt161=3; } break; default: if (state.backtracking>0) {state.failed=true; return;} NoViableAltException nvae = new NoViableAltException("", 161, 0, input); throw nvae; } switch (alt161) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1750:20: 'class' { match(input,CLASS,FOLLOW_CLASS_in_typeHeader9067); if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1750:28: 'enum' { match(input,ENUM,FOLLOW_ENUM_in_typeHeader9069); if (state.failed) return; } break; case 3 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1750:35: ( ( '@' )? 'interface' ) { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1750:35: ( ( '@' )? 'interface' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1750:36: ( '@' )? 'interface' { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1750:36: ( '@' )? int alt160=2; int LA160_0 = input.LA(1); if ( (LA160_0==MONKEYS_AT) ) { alt160=1; } switch (alt160) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1750:36: '@' { match(input,MONKEYS_AT,FOLLOW_MONKEYS_AT_in_typeHeader9072); if (state.failed) return; } break; } match(input,INTERFACE,FOLLOW_INTERFACE_in_typeHeader9076); if (state.failed) return; } } break; } match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_typeHeader9080); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 107, typeHeader_StartIndex); } } } // $ANTLR end "typeHeader" // $ANTLR start "methodHeader" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1753:1: methodHeader : modifiers ( typeParameters )? ( type | 'void' )? IDENTIFIER '(' ; public final void methodHeader() throws RecognitionException { int methodHeader_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 108) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1754:5: ( modifiers ( typeParameters )? ( type | 'void' )? IDENTIFIER '(' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1754:9: modifiers ( typeParameters )? ( type | 'void' )? IDENTIFIER '(' { pushFollow(FOLLOW_modifiers_in_methodHeader9100); modifiers(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1754:19: ( typeParameters )? int alt162=2; int LA162_0 = input.LA(1); if ( (LA162_0==LT) ) { alt162=1; } switch (alt162) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1754:19: typeParameters { pushFollow(FOLLOW_typeParameters_in_methodHeader9102); typeParameters(); state._fsp--; if (state.failed) return; } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1754:35: ( type | 'void' )? int alt163=3; switch ( input.LA(1) ) { case IDENTIFIER: { int LA163_1 = input.LA(2); if ( (LA163_1==DOT||LA163_1==IDENTIFIER||LA163_1==LBRACKET||LA163_1==LT) ) { alt163=1; } } break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: { alt163=1; } break; case VOID: { alt163=2; } break; } switch (alt163) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1754:36: type { pushFollow(FOLLOW_type_in_methodHeader9106); type(); state._fsp--; if (state.failed) return; } break; case 2 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1754:41: 'void' { match(input,VOID,FOLLOW_VOID_in_methodHeader9108); if (state.failed) return; } break; } match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_methodHeader9112); if (state.failed) return; match(input,LPAREN,FOLLOW_LPAREN_in_methodHeader9114); if (state.failed) return; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 108, methodHeader_StartIndex); } } } // $ANTLR end "methodHeader" // $ANTLR start "fieldHeader" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1757:1: fieldHeader : modifiers type IDENTIFIER ( '[' ']' )* ( '=' | ',' | ';' ) ; public final void fieldHeader() throws RecognitionException { int fieldHeader_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 109) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1758:5: ( modifiers type IDENTIFIER ( '[' ']' )* ( '=' | ',' | ';' ) ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1758:9: modifiers type IDENTIFIER ( '[' ']' )* ( '=' | ',' | ';' ) { pushFollow(FOLLOW_modifiers_in_fieldHeader9134); modifiers(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_type_in_fieldHeader9136); type(); state._fsp--; if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_fieldHeader9138); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1758:35: ( '[' ']' )* loop164: while (true) { int alt164=2; int LA164_0 = input.LA(1); if ( (LA164_0==LBRACKET) ) { alt164=1; } switch (alt164) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1758:36: '[' ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_fieldHeader9141); if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_fieldHeader9142); if (state.failed) return; } break; default : break loop164; } } if ( input.LA(1)==COMMA||input.LA(1)==EQ||input.LA(1)==SEMI ) { input.consume(); state.errorRecovery=false; state.failed=false; } else { if (state.backtracking>0) {state.failed=true; return;} MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 109, fieldHeader_StartIndex); } } } // $ANTLR end "fieldHeader" // $ANTLR start "localVariableHeader" // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1761:1: localVariableHeader : variableModifiers type IDENTIFIER ( '[' ']' )* ( '=' | ',' | ';' ) ; public final void localVariableHeader() throws RecognitionException { int localVariableHeader_StartIndex = input.index(); try { if ( state.backtracking>0 && alreadyParsedRule(input, 110) ) { return; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1762:5: ( variableModifiers type IDENTIFIER ( '[' ']' )* ( '=' | ',' | ';' ) ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1762:9: variableModifiers type IDENTIFIER ( '[' ']' )* ( '=' | ',' | ';' ) { pushFollow(FOLLOW_variableModifiers_in_localVariableHeader9172); variableModifiers(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_type_in_localVariableHeader9174); type(); state._fsp--; if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_localVariableHeader9176); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1762:43: ( '[' ']' )* loop165: while (true) { int alt165=2; int LA165_0 = input.LA(1); if ( (LA165_0==LBRACKET) ) { alt165=1; } switch (alt165) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1762:44: '[' ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_localVariableHeader9179); if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_localVariableHeader9180); if (state.failed) return; } break; default : break loop165; } } if ( input.LA(1)==COMMA||input.LA(1)==EQ||input.LA(1)==SEMI ) { input.consume(); state.errorRecovery=false; state.failed=false; } else { if (state.backtracking>0) {state.failed=true; return;} MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving if ( state.backtracking>0 ) { memoize(input, 110, localVariableHeader_StartIndex); } } } // $ANTLR end "localVariableHeader" // $ANTLR start synpred2_Java public final void synpred2_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:357:13: ( ( annotations )? packageDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:357:13: ( annotations )? packageDeclaration { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:357:13: ( annotations )? int alt166=2; int LA166_0 = input.LA(1); if ( (LA166_0==MONKEYS_AT) ) { alt166=1; } switch (alt166) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:357:14: annotations { pushFollow(FOLLOW_annotations_in_synpred2_Java127); annotations(); state._fsp--; if (state.failed) return; } break; } pushFollow(FOLLOW_packageDeclaration_in_synpred2_Java156); packageDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred2_Java // $ANTLR start synpred12_Java public final void synpred12_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:440:10: ( classDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:440:10: classDeclaration { pushFollow(FOLLOW_classDeclaration_in_synpred12_Java692); classDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred12_Java // $ANTLR start synpred27_Java public final void synpred27_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:521:9: ( normalClassDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:521:9: normalClassDeclaration { pushFollow(FOLLOW_normalClassDeclaration_in_synpred27_Java1103); normalClassDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred27_Java // $ANTLR start synpred43_Java public final void synpred43_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:621:9: ( normalInterfaceDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:621:9: normalInterfaceDeclaration { pushFollow(FOLLOW_normalInterfaceDeclaration_in_synpred43_Java1854); normalInterfaceDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred43_Java // $ANTLR start synpred52_Java public final void synpred52_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:663:10: ( fieldDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:663:10: fieldDeclaration { pushFollow(FOLLOW_fieldDeclaration_in_synpred52_Java2189); fieldDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred52_Java // $ANTLR start synpred53_Java public final void synpred53_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:664:10: ( methodDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:664:10: methodDeclaration { pushFollow(FOLLOW_methodDeclaration_in_synpred53_Java2200); methodDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred53_Java // $ANTLR start synpred54_Java public final void synpred54_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:665:10: ( classDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:665:10: classDeclaration { pushFollow(FOLLOW_classDeclaration_in_synpred54_Java2213); classDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred54_Java // $ANTLR start synpred57_Java public final void synpred57_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:698:10: ( explicitConstructorInvocation ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:698:10: explicitConstructorInvocation { pushFollow(FOLLOW_explicitConstructorInvocation_in_synpred57_Java2377); explicitConstructorInvocation(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred57_Java // $ANTLR start synpred59_Java public final void synpred59_Java_fragment() throws RecognitionException { Token i1=null; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:690:10: ( modifiers ( typeParameters )? i1= IDENTIFIER formalParameters ( 'throws' qualifiedNameList )? '{' ( explicitConstructorInvocation )? ( blockStatement )* '}' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:690:10: modifiers ( typeParameters )? i1= IDENTIFIER formalParameters ( 'throws' qualifiedNameList )? '{' ( explicitConstructorInvocation )? ( blockStatement )* '}' { pushFollow(FOLLOW_modifiers_in_synpred59_Java2285); modifiers(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:691:9: ( typeParameters )? int alt169=2; int LA169_0 = input.LA(1); if ( (LA169_0==LT) ) { alt169=1; } switch (alt169) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:691:10: typeParameters { pushFollow(FOLLOW_typeParameters_in_synpred59_Java2296); typeParameters(); state._fsp--; if (state.failed) return; } break; } i1=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_synpred59_Java2319); if (state.failed) return; pushFollow(FOLLOW_formalParameters_in_synpred59_Java2331); formalParameters(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:695:9: ( 'throws' qualifiedNameList )? int alt170=2; int LA170_0 = input.LA(1); if ( (LA170_0==THROWS) ) { alt170=1; } switch (alt170) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:695:10: 'throws' qualifiedNameList { match(input,THROWS,FOLLOW_THROWS_in_synpred59_Java2342); if (state.failed) return; pushFollow(FOLLOW_qualifiedNameList_in_synpred59_Java2344); qualifiedNameList(); state._fsp--; if (state.failed) return; } break; } match(input,LBRACE,FOLLOW_LBRACE_in_synpred59_Java2365); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:698:9: ( explicitConstructorInvocation )? int alt171=2; switch ( input.LA(1) ) { case LT: { alt171=1; } break; case THIS: { int LA171_2 = input.LA(2); if ( (synpred57_Java()) ) { alt171=1; } } break; case LPAREN: { int LA171_3 = input.LA(2); if ( (synpred57_Java()) ) { alt171=1; } } break; case SUPER: { int LA171_4 = input.LA(2); if ( (synpred57_Java()) ) { alt171=1; } } break; case IDENTIFIER: { int LA171_5 = input.LA(2); if ( (synpred57_Java()) ) { alt171=1; } } break; case CHARLITERAL: case DOUBLELITERAL: case FALSE: case FLOATLITERAL: case INTLITERAL: case LONGLITERAL: case NULL: case STRINGLITERAL: case TRUE: { int LA171_6 = input.LA(2); if ( (synpred57_Java()) ) { alt171=1; } } break; case NEW: { int LA171_7 = input.LA(2); if ( (synpred57_Java()) ) { alt171=1; } } break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: { int LA171_8 = input.LA(2); if ( (synpred57_Java()) ) { alt171=1; } } break; case VOID: { int LA171_9 = input.LA(2); if ( (synpred57_Java()) ) { alt171=1; } } break; } switch (alt171) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:698:10: explicitConstructorInvocation { pushFollow(FOLLOW_explicitConstructorInvocation_in_synpred59_Java2377); explicitConstructorInvocation(); state._fsp--; if (state.failed) return; } break; } // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:700:9: ( blockStatement )* loop172: while (true) { int alt172=2; int LA172_0 = input.LA(1); if ( (LA172_0==ABSTRACT||(LA172_0 >= ASSERT && LA172_0 <= BANG)||(LA172_0 >= BOOLEAN && LA172_0 <= BYTE)||(LA172_0 >= CHAR && LA172_0 <= CLASS)||LA172_0==CONTINUE||LA172_0==DO||(LA172_0 >= DOUBLE && LA172_0 <= DOUBLELITERAL)||LA172_0==ENUM||(LA172_0 >= FALSE && LA172_0 <= FINAL)||(LA172_0 >= FLOAT && LA172_0 <= FOR)||(LA172_0 >= IDENTIFIER && LA172_0 <= IF)||(LA172_0 >= INT && LA172_0 <= INTLITERAL)||LA172_0==LBRACE||(LA172_0 >= LONG && LA172_0 <= LT)||(LA172_0 >= MONKEYS_AT && LA172_0 <= NULL)||LA172_0==PLUS||(LA172_0 >= PLUSPLUS && LA172_0 <= PUBLIC)||LA172_0==RETURN||(LA172_0 >= SEMI && LA172_0 <= SHORT)||(LA172_0 >= STATIC && LA172_0 <= SUB)||(LA172_0 >= SUBSUB && LA172_0 <= SYNCHRONIZED)||(LA172_0 >= THIS && LA172_0 <= THROW)||(LA172_0 >= TILDE && LA172_0 <= WHILE)) ) { alt172=1; } switch (alt172) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:700:10: blockStatement { pushFollow(FOLLOW_blockStatement_in_synpred59_Java2399); blockStatement(); state._fsp--; if (state.failed) return; } break; default : break loop172; } } match(input,RBRACE,FOLLOW_RBRACE_in_synpred59_Java2420); if (state.failed) return; } } // $ANTLR end synpred59_Java // $ANTLR start synpred68_Java public final void synpred68_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:791:9: ( interfaceFieldDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:791:9: interfaceFieldDeclaration { pushFollow(FOLLOW_interfaceFieldDeclaration_in_synpred68_Java2897); interfaceFieldDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred68_Java // $ANTLR start synpred69_Java public final void synpred69_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:792:9: ( interfaceMethodDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:792:9: interfaceMethodDeclaration { pushFollow(FOLLOW_interfaceMethodDeclaration_in_synpred69_Java2907); interfaceMethodDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred69_Java // $ANTLR start synpred70_Java public final void synpred70_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:793:9: ( interfaceDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:793:9: interfaceDeclaration { pushFollow(FOLLOW_interfaceDeclaration_in_synpred70_Java2917); interfaceDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred70_Java // $ANTLR start synpred71_Java public final void synpred71_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:794:9: ( classDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:794:9: classDeclaration { pushFollow(FOLLOW_classDeclaration_in_synpred71_Java2927); classDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred71_Java // $ANTLR start synpred96_Java public final void synpred96_Java_fragment() throws RecognitionException { ParserRuleReturnScope e1 =null; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1017:9: (e1= ellipsisParameterDecl ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1017:9: e1= ellipsisParameterDecl { pushFollow(FOLLOW_ellipsisParameterDecl_in_synpred96_Java3910); e1=ellipsisParameterDecl(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred96_Java // $ANTLR start synpred98_Java public final void synpred98_Java_fragment() throws RecognitionException { Token c2=null; ParserRuleReturnScope p1 =null; ParserRuleReturnScope p2 =null; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1018:9: (p1= normalParameterDecl (c2= ',' p2= normalParameterDecl )* ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1018:9: p1= normalParameterDecl (c2= ',' p2= normalParameterDecl )* { pushFollow(FOLLOW_normalParameterDecl_in_synpred98_Java3924); p1=normalParameterDecl(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1019:9: (c2= ',' p2= normalParameterDecl )* loop175: while (true) { int alt175=2; int LA175_0 = input.LA(1); if ( (LA175_0==COMMA) ) { alt175=1; } switch (alt175) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1019:10: c2= ',' p2= normalParameterDecl { c2=(Token)match(input,COMMA,FOLLOW_COMMA_in_synpred98_Java3941); if (state.failed) return; pushFollow(FOLLOW_normalParameterDecl_in_synpred98_Java3945); p2=normalParameterDecl(); state._fsp--; if (state.failed) return; } break; default : break loop175; } } } } // $ANTLR end synpred98_Java // $ANTLR start synpred99_Java public final void synpred99_Java_fragment() throws RecognitionException { Token c3=null; ParserRuleReturnScope p3 =null; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1025:10: (p3= normalParameterDecl c3= ',' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1025:10: p3= normalParameterDecl c3= ',' { pushFollow(FOLLOW_normalParameterDecl_in_synpred99_Java3971); p3=normalParameterDecl(); state._fsp--; if (state.failed) return; c3=(Token)match(input,COMMA,FOLLOW_COMMA_in_synpred99_Java3985); if (state.failed) return; } } // $ANTLR end synpred99_Java // $ANTLR start synpred103_Java public final void synpred103_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1091:9: ( ( nonWildcardTypeArguments )? ( 'this' | 'super' ) arguments ';' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1091:9: ( nonWildcardTypeArguments )? ( 'this' | 'super' ) arguments ';' { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1091:9: ( nonWildcardTypeArguments )? int alt176=2; int LA176_0 = input.LA(1); if ( (LA176_0==LT) ) { alt176=1; } switch (alt176) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1091:10: nonWildcardTypeArguments { pushFollow(FOLLOW_nonWildcardTypeArguments_in_synpred103_Java4192); nonWildcardTypeArguments(); state._fsp--; if (state.failed) return; } break; } if ( input.LA(1)==SUPER||input.LA(1)==THIS ) { input.consume(); state.errorRecovery=false; state.failed=false; } else { if (state.backtracking>0) {state.failed=true; return;} MismatchedSetException mse = new MismatchedSetException(null,input); throw mse; } pushFollow(FOLLOW_arguments_in_synpred103_Java4250); arguments(); state._fsp--; if (state.failed) return; match(input,SEMI,FOLLOW_SEMI_in_synpred103_Java4252); if (state.failed) return; } } // $ANTLR end synpred103_Java // $ANTLR start synpred117_Java public final void synpred117_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1261:9: ( annotationMethodDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1261:9: annotationMethodDeclaration { pushFollow(FOLLOW_annotationMethodDeclaration_in_synpred117_Java5035); annotationMethodDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred117_Java // $ANTLR start synpred118_Java public final void synpred118_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1262:9: ( interfaceFieldDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1262:9: interfaceFieldDeclaration { pushFollow(FOLLOW_interfaceFieldDeclaration_in_synpred118_Java5045); interfaceFieldDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred118_Java // $ANTLR start synpred119_Java public final void synpred119_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1263:9: ( normalClassDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1263:9: normalClassDeclaration { pushFollow(FOLLOW_normalClassDeclaration_in_synpred119_Java5055); normalClassDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred119_Java // $ANTLR start synpred120_Java public final void synpred120_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1264:9: ( normalInterfaceDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1264:9: normalInterfaceDeclaration { pushFollow(FOLLOW_normalInterfaceDeclaration_in_synpred120_Java5065); normalInterfaceDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred120_Java // $ANTLR start synpred121_Java public final void synpred121_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1265:9: ( enumDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1265:9: enumDeclaration { pushFollow(FOLLOW_enumDeclaration_in_synpred121_Java5075); enumDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred121_Java // $ANTLR start synpred122_Java public final void synpred122_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1266:9: ( annotationTypeDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1266:9: annotationTypeDeclaration { pushFollow(FOLLOW_annotationTypeDeclaration_in_synpred122_Java5085); annotationTypeDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred122_Java // $ANTLR start synpred125_Java public final void synpred125_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1309:9: ( localVariableDeclarationStatement ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1309:9: localVariableDeclarationStatement { pushFollow(FOLLOW_localVariableDeclarationStatement_in_synpred125_Java5243); localVariableDeclarationStatement(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred125_Java // $ANTLR start synpred126_Java public final void synpred126_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1310:9: ( classOrInterfaceDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1310:9: classOrInterfaceDeclaration { pushFollow(FOLLOW_classOrInterfaceDeclaration_in_synpred126_Java5253); classOrInterfaceDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred126_Java // $ANTLR start synpred130_Java public final void synpred130_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1330:9: ( ( 'assert' ) expression ( ':' expression )? ';' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1330:9: ( 'assert' ) expression ( ':' expression )? ';' { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1330:9: ( 'assert' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1330:10: 'assert' { match(input,ASSERT,FOLLOW_ASSERT_in_synpred130_Java5394); if (state.failed) return; } pushFollow(FOLLOW_expression_in_synpred130_Java5414); expression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1332:20: ( ':' expression )? int alt179=2; int LA179_0 = input.LA(1); if ( (LA179_0==COLON) ) { alt179=1; } switch (alt179) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1332:21: ':' expression { match(input,COLON,FOLLOW_COLON_in_synpred130_Java5417); if (state.failed) return; pushFollow(FOLLOW_expression_in_synpred130_Java5419); expression(); state._fsp--; if (state.failed) return; } break; } match(input,SEMI,FOLLOW_SEMI_in_synpred130_Java5423); if (state.failed) return; } } // $ANTLR end synpred130_Java // $ANTLR start synpred132_Java public final void synpred132_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1333:9: ( 'assert' expression ( ':' expression )? ';' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1333:9: 'assert' expression ( ':' expression )? ';' { match(input,ASSERT,FOLLOW_ASSERT_in_synpred132_Java5433); if (state.failed) return; pushFollow(FOLLOW_expression_in_synpred132_Java5436); expression(); state._fsp--; if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1333:30: ( ':' expression )? int alt180=2; int LA180_0 = input.LA(1); if ( (LA180_0==COLON) ) { alt180=1; } switch (alt180) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1333:31: ':' expression { match(input,COLON,FOLLOW_COLON_in_synpred132_Java5439); if (state.failed) return; pushFollow(FOLLOW_expression_in_synpred132_Java5441); expression(); state._fsp--; if (state.failed) return; } break; } match(input,SEMI,FOLLOW_SEMI_in_synpred132_Java5445); if (state.failed) return; } } // $ANTLR end synpred132_Java // $ANTLR start synpred133_Java public final void synpred133_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1334:39: ( 'else' statement ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1334:39: 'else' statement { match(input,ELSE,FOLLOW_ELSE_in_synpred133_Java5474); if (state.failed) return; pushFollow(FOLLOW_statement_in_synpred133_Java5476); statement(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred133_Java // $ANTLR start synpred148_Java public final void synpred148_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1349:9: ( expression ';' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1349:9: expression ';' { pushFollow(FOLLOW_expression_in_synpred148_Java5698); expression(); state._fsp--; if (state.failed) return; match(input,SEMI,FOLLOW_SEMI_in_synpred148_Java5701); if (state.failed) return; } } // $ANTLR end synpred148_Java // $ANTLR start synpred149_Java public final void synpred149_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1350:9: ( IDENTIFIER ':' statement ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1350:9: IDENTIFIER ':' statement { match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_synpred149_Java5716); if (state.failed) return; match(input,COLON,FOLLOW_COLON_in_synpred149_Java5718); if (state.failed) return; pushFollow(FOLLOW_statement_in_synpred149_Java5720); statement(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred149_Java // $ANTLR start synpred153_Java public final void synpred153_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1374:13: ( catches 'finally' block ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1374:13: catches 'finally' block { pushFollow(FOLLOW_catches_in_synpred153_Java5876); catches(); state._fsp--; if (state.failed) return; match(input,FINALLY,FOLLOW_FINALLY_in_synpred153_Java5878); if (state.failed) return; pushFollow(FOLLOW_block_in_synpred153_Java5880); block(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred153_Java // $ANTLR start synpred154_Java public final void synpred154_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1375:13: ( catches ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1375:13: catches { pushFollow(FOLLOW_catches_in_synpred154_Java5894); catches(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred154_Java // $ANTLR start synpred157_Java public final void synpred157_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1400:9: ( 'for' '(' variableModifiers type IDENTIFIER ':' expression ')' statement ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1400:9: 'for' '(' variableModifiers type IDENTIFIER ':' expression ')' statement { match(input,FOR,FOLLOW_FOR_in_synpred157_Java6086); if (state.failed) return; match(input,LPAREN,FOLLOW_LPAREN_in_synpred157_Java6088); if (state.failed) return; pushFollow(FOLLOW_variableModifiers_in_synpred157_Java6090); variableModifiers(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_type_in_synpred157_Java6092); type(); state._fsp--; if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_synpred157_Java6094); if (state.failed) return; match(input,COLON,FOLLOW_COLON_in_synpred157_Java6096); if (state.failed) return; pushFollow(FOLLOW_expression_in_synpred157_Java6107); expression(); state._fsp--; if (state.failed) return; match(input,RPAREN,FOLLOW_RPAREN_in_synpred157_Java6109); if (state.failed) return; pushFollow(FOLLOW_statement_in_synpred157_Java6111); statement(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred157_Java // $ANTLR start synpred161_Java public final void synpred161_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1414:9: ( localVariableDeclaration ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1414:9: localVariableDeclaration { pushFollow(FOLLOW_localVariableDeclaration_in_synpred161_Java6290); localVariableDeclaration(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred161_Java // $ANTLR start synpred202_Java public final void synpred202_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1568:9: ( castExpression ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1568:9: castExpression { pushFollow(FOLLOW_castExpression_in_synpred202_Java7535); castExpression(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred202_Java // $ANTLR start synpred206_Java public final void synpred206_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1578:9: ( '(' primitiveType ')' unaryExpression ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1578:9: '(' primitiveType ')' unaryExpression { match(input,LPAREN,FOLLOW_LPAREN_in_synpred206_Java7626); if (state.failed) return; pushFollow(FOLLOW_primitiveType_in_synpred206_Java7628); primitiveType(); state._fsp--; if (state.failed) return; match(input,RPAREN,FOLLOW_RPAREN_in_synpred206_Java7630); if (state.failed) return; pushFollow(FOLLOW_unaryExpression_in_synpred206_Java7632); unaryExpression(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred206_Java // $ANTLR start synpred208_Java public final void synpred208_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1588:10: ( '.' IDENTIFIER ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1588:10: '.' IDENTIFIER { match(input,DOT,FOLLOW_DOT_in_synpred208_Java7703); if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_synpred208_Java7705); if (state.failed) return; } } // $ANTLR end synpred208_Java // $ANTLR start synpred209_Java public final void synpred209_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1590:10: ( identifierSuffix ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1590:10: identifierSuffix { pushFollow(FOLLOW_identifierSuffix_in_synpred209_Java7727); identifierSuffix(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred209_Java // $ANTLR start synpred211_Java public final void synpred211_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1593:10: ( '.' IDENTIFIER ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1593:10: '.' IDENTIFIER { match(input,DOT,FOLLOW_DOT_in_synpred211_Java7759); if (state.failed) return; match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_synpred211_Java7761); if (state.failed) return; } } // $ANTLR end synpred211_Java // $ANTLR start synpred212_Java public final void synpred212_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1595:10: ( identifierSuffix ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1595:10: identifierSuffix { pushFollow(FOLLOW_identifierSuffix_in_synpred212_Java7783); identifierSuffix(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred212_Java // $ANTLR start synpred224_Java public final void synpred224_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1623:10: ( '[' expression ']' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1623:10: '[' expression ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_synpred224_Java8034); if (state.failed) return; pushFollow(FOLLOW_expression_in_synpred224_Java8036); expression(); state._fsp--; if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_synpred224_Java8038); if (state.failed) return; } } // $ANTLR end synpred224_Java // $ANTLR start synpred236_Java public final void synpred236_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1646:9: ( 'new' nonWildcardTypeArguments classOrInterfaceType classCreatorRest ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1646:9: 'new' nonWildcardTypeArguments classOrInterfaceType classCreatorRest { match(input,NEW,FOLLOW_NEW_in_synpred236_Java8247); if (state.failed) return; pushFollow(FOLLOW_nonWildcardTypeArguments_in_synpred236_Java8249); nonWildcardTypeArguments(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_classOrInterfaceType_in_synpred236_Java8251); classOrInterfaceType(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_classCreatorRest_in_synpred236_Java8253); classCreatorRest(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred236_Java // $ANTLR start synpred237_Java public final void synpred237_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1647:9: ( 'new' classOrInterfaceType classCreatorRest ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1647:9: 'new' classOrInterfaceType classCreatorRest { match(input,NEW,FOLLOW_NEW_in_synpred237_Java8263); if (state.failed) return; pushFollow(FOLLOW_classOrInterfaceType_in_synpred237_Java8265); classOrInterfaceType(); state._fsp--; if (state.failed) return; pushFollow(FOLLOW_classCreatorRest_in_synpred237_Java8267); classCreatorRest(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred237_Java // $ANTLR start synpred239_Java public final void synpred239_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1652:9: ( 'new' createdName '[' ']' ( '[' ']' )* arrayInitializer ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1652:9: 'new' createdName '[' ']' ( '[' ']' )* arrayInitializer { match(input,NEW,FOLLOW_NEW_in_synpred239_Java8297); if (state.failed) return; pushFollow(FOLLOW_createdName_in_synpred239_Java8299); createdName(); state._fsp--; if (state.failed) return; match(input,LBRACKET,FOLLOW_LBRACKET_in_synpred239_Java8309); if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_synpred239_Java8311); if (state.failed) return; // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1654:9: ( '[' ']' )* loop193: while (true) { int alt193=2; int LA193_0 = input.LA(1); if ( (LA193_0==LBRACKET) ) { alt193=1; } switch (alt193) { case 1 : // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1654:10: '[' ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_synpred239_Java8322); if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_synpred239_Java8324); if (state.failed) return; } break; default : break loop193; } } pushFollow(FOLLOW_arrayInitializer_in_synpred239_Java8345); arrayInitializer(); state._fsp--; if (state.failed) return; } } // $ANTLR end synpred239_Java // $ANTLR start synpred240_Java public final void synpred240_Java_fragment() throws RecognitionException { // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1661:13: ( '[' expression ']' ) // src/main/resources/org/kie/workbench/common/services/datamodeller/parser/Java.g:1661:13: '[' expression ']' { match(input,LBRACKET,FOLLOW_LBRACKET_in_synpred240_Java8394); if (state.failed) return; pushFollow(FOLLOW_expression_in_synpred240_Java8396); expression(); state._fsp--; if (state.failed) return; match(input,RBRACKET,FOLLOW_RBRACKET_in_synpred240_Java8410); if (state.failed) return; } } // $ANTLR end synpred240_Java // Delegated rules public final boolean synpred43_Java() { state.backtracking++; int start = input.mark(); try { synpred43_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred98_Java() { state.backtracking++; int start = input.mark(); try { synpred98_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred157_Java() { state.backtracking++; int start = input.mark(); try { synpred157_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred224_Java() { state.backtracking++; int start = input.mark(); try { synpred224_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred211_Java() { state.backtracking++; int start = input.mark(); try { synpred211_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred121_Java() { state.backtracking++; int start = input.mark(); try { synpred121_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred239_Java() { state.backtracking++; int start = input.mark(); try { synpred239_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred69_Java() { state.backtracking++; int start = input.mark(); try { synpred69_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred202_Java() { state.backtracking++; int start = input.mark(); try { synpred202_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred154_Java() { state.backtracking++; int start = input.mark(); try { synpred154_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred71_Java() { state.backtracking++; int start = input.mark(); try { synpred71_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred133_Java() { state.backtracking++; int start = input.mark(); try { synpred133_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred125_Java() { state.backtracking++; int start = input.mark(); try { synpred125_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred132_Java() { state.backtracking++; int start = input.mark(); try { synpred132_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred119_Java() { state.backtracking++; int start = input.mark(); try { synpred119_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred54_Java() { state.backtracking++; int start = input.mark(); try { synpred54_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred148_Java() { state.backtracking++; int start = input.mark(); try { synpred148_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred117_Java() { state.backtracking++; int start = input.mark(); try { synpred117_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred2_Java() { state.backtracking++; int start = input.mark(); try { synpred2_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred130_Java() { state.backtracking++; int start = input.mark(); try { synpred130_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred126_Java() { state.backtracking++; int start = input.mark(); try { synpred126_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred59_Java() { state.backtracking++; int start = input.mark(); try { synpred59_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred212_Java() { state.backtracking++; int start = input.mark(); try { synpred212_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred161_Java() { state.backtracking++; int start = input.mark(); try { synpred161_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred57_Java() { state.backtracking++; int start = input.mark(); try { synpred57_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred209_Java() { state.backtracking++; int start = input.mark(); try { synpred209_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred68_Java() { state.backtracking++; int start = input.mark(); try { synpred68_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred53_Java() { state.backtracking++; int start = input.mark(); try { synpred53_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred52_Java() { state.backtracking++; int start = input.mark(); try { synpred52_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred236_Java() { state.backtracking++; int start = input.mark(); try { synpred236_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred12_Java() { state.backtracking++; int start = input.mark(); try { synpred12_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred149_Java() { state.backtracking++; int start = input.mark(); try { synpred149_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred120_Java() { state.backtracking++; int start = input.mark(); try { synpred120_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred122_Java() { state.backtracking++; int start = input.mark(); try { synpred122_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred240_Java() { state.backtracking++; int start = input.mark(); try { synpred240_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred206_Java() { state.backtracking++; int start = input.mark(); try { synpred206_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred70_Java() { state.backtracking++; int start = input.mark(); try { synpred70_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred27_Java() { state.backtracking++; int start = input.mark(); try { synpred27_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred96_Java() { state.backtracking++; int start = input.mark(); try { synpred96_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred153_Java() { state.backtracking++; int start = input.mark(); try { synpred153_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred99_Java() { state.backtracking++; int start = input.mark(); try { synpred99_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred103_Java() { state.backtracking++; int start = input.mark(); try { synpred103_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred237_Java() { state.backtracking++; int start = input.mark(); try { synpred237_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred118_Java() { state.backtracking++; int start = input.mark(); try { synpred118_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public final boolean synpred208_Java() { state.backtracking++; int start = input.mark(); try { synpred208_Java_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } boolean success = !state.failed; input.rewind(start); state.backtracking--; state.failed=false; return success; } public static final BitSet FOLLOW_annotations_in_compilationUnit127 = new BitSet(new long[]{0x0000000000000000L,0x0000000000004000L}); public static final BitSet FOLLOW_packageDeclaration_in_compilationUnit156 = new BitSet(new long[]{0x1200102000800012L,0x0011040C10700600L}); public static final BitSet FOLLOW_importDeclaration_in_compilationUnit178 = new BitSet(new long[]{0x1200102000800012L,0x0011040C10700600L}); public static final BitSet FOLLOW_typeDeclaration_in_compilationUnit200 = new BitSet(new long[]{0x1000102000800012L,0x0011040C10700600L}); public static final BitSet FOLLOW_PACKAGE_in_packageDeclaration254 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_qualifiedName_in_packageDeclaration273 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_packageDeclaration288 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_IMPORT_in_importDeclaration344 = new BitSet(new long[]{0x0040000000000000L,0x0000000400000000L}); public static final BitSet FOLLOW_STATIC_in_importDeclaration363 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_importDeclaration391 = new BitSet(new long[]{0x0000000080000000L}); public static final BitSet FOLLOW_DOT_in_importDeclaration404 = new BitSet(new long[]{0x0000000000000000L,0x0000000100000000L}); public static final BitSet FOLLOW_STAR_in_importDeclaration416 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_importDeclaration438 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_IMPORT_in_importDeclaration460 = new BitSet(new long[]{0x0040000000000000L,0x0000000400000000L}); public static final BitSet FOLLOW_STATIC_in_importDeclaration479 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_importDeclaration507 = new BitSet(new long[]{0x0000000080000000L}); public static final BitSet FOLLOW_DOT_in_importDeclaration525 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_importDeclaration529 = new BitSet(new long[]{0x0000000080000000L,0x0000000010000000L}); public static final BitSet FOLLOW_DOT_in_importDeclaration553 = new BitSet(new long[]{0x0000000000000000L,0x0000000100000000L}); public static final BitSet FOLLOW_STAR_in_importDeclaration557 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_importDeclaration585 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_IDENTIFIER_in_qualifiedImportName615 = new BitSet(new long[]{0x0000000080000002L}); public static final BitSet FOLLOW_DOT_in_qualifiedImportName626 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_qualifiedImportName628 = new BitSet(new long[]{0x0000000080000002L}); public static final BitSet FOLLOW_classOrInterfaceDeclaration_in_typeDeclaration659 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SEMI_in_typeDeclaration669 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_classDeclaration_in_classOrInterfaceDeclaration692 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_interfaceDeclaration_in_classOrInterfaceDeclaration704 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_annotation_in_modifiers750 = new BitSet(new long[]{0x0000100000000012L,0x0011040C00700600L}); public static final BitSet FOLLOW_PUBLIC_in_modifiers771 = new BitSet(new long[]{0x0000100000000012L,0x0011040C00700600L}); public static final BitSet FOLLOW_PROTECTED_in_modifiers794 = new BitSet(new long[]{0x0000100000000012L,0x0011040C00700600L}); public static final BitSet FOLLOW_PRIVATE_in_modifiers814 = new BitSet(new long[]{0x0000100000000012L,0x0011040C00700600L}); public static final BitSet FOLLOW_STATIC_in_modifiers836 = new BitSet(new long[]{0x0000100000000012L,0x0011040C00700600L}); public static final BitSet FOLLOW_ABSTRACT_in_modifiers859 = new BitSet(new long[]{0x0000100000000012L,0x0011040C00700600L}); public static final BitSet FOLLOW_FINAL_in_modifiers880 = new BitSet(new long[]{0x0000100000000012L,0x0011040C00700600L}); public static final BitSet FOLLOW_NATIVE_in_modifiers904 = new BitSet(new long[]{0x0000100000000012L,0x0011040C00700600L}); public static final BitSet FOLLOW_SYNCHRONIZED_in_modifiers927 = new BitSet(new long[]{0x0000100000000012L,0x0011040C00700600L}); public static final BitSet FOLLOW_TRANSIENT_in_modifiers944 = new BitSet(new long[]{0x0000100000000012L,0x0011040C00700600L}); public static final BitSet FOLLOW_VOLATILE_in_modifiers964 = new BitSet(new long[]{0x0000100000000012L,0x0011040C00700600L}); public static final BitSet FOLLOW_STRICTFP_in_modifiers985 = new BitSet(new long[]{0x0000100000000012L,0x0011040C00700600L}); public static final BitSet FOLLOW_FINAL_in_variableModifiers1046 = new BitSet(new long[]{0x0000100000000002L,0x0000000000000200L}); public static final BitSet FOLLOW_annotation_in_variableModifiers1067 = new BitSet(new long[]{0x0000100000000002L,0x0000000000000200L}); public static final BitSet FOLLOW_normalClassDeclaration_in_classDeclaration1103 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_enumDeclaration_in_classDeclaration1113 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_normalClassDeclaration1142 = new BitSet(new long[]{0x0000000000800000L}); public static final BitSet FOLLOW_CLASS_in_normalClassDeclaration1146 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_normalClassDeclaration1174 = new BitSet(new long[]{0x0100010000000000L,0x0000000000000082L}); public static final BitSet FOLLOW_typeParameters_in_normalClassDeclaration1187 = new BitSet(new long[]{0x0100010000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_EXTENDS_in_normalClassDeclaration1212 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_normalClassDeclaration1228 = new BitSet(new long[]{0x0100000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_IMPLEMENTS_in_normalClassDeclaration1255 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_typeList_in_normalClassDeclaration1269 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_classBody_in_normalClassDeclaration1302 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LT_in_typeParameters1323 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_typeParameter_in_typeParameters1337 = new BitSet(new long[]{0x0008000002000000L}); public static final BitSet FOLLOW_COMMA_in_typeParameters1352 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_typeParameter_in_typeParameters1354 = new BitSet(new long[]{0x0008000002000000L}); public static final BitSet FOLLOW_GT_in_typeParameters1379 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_IDENTIFIER_in_typeParameter1399 = new BitSet(new long[]{0x0000010000000002L}); public static final BitSet FOLLOW_EXTENDS_in_typeParameter1410 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_typeBound_in_typeParameter1412 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_type_in_typeBound1444 = new BitSet(new long[]{0x0000000000000022L}); public static final BitSet FOLLOW_AMP_in_typeBound1455 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_typeBound1457 = new BitSet(new long[]{0x0000000000000022L}); public static final BitSet FOLLOW_modifiers_in_enumDeclaration1489 = new BitSet(new long[]{0x0000002000000000L}); public static final BitSet FOLLOW_ENUM_in_enumDeclaration1501 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_enumDeclaration1522 = new BitSet(new long[]{0x0100000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_IMPLEMENTS_in_enumDeclaration1533 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_typeList_in_enumDeclaration1535 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_enumBody_in_enumDeclaration1556 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LBRACE_in_enumBody1581 = new BitSet(new long[]{0x0040000002000000L,0x0000000011000200L}); public static final BitSet FOLLOW_enumConstants_in_enumBody1592 = new BitSet(new long[]{0x0000000002000000L,0x0000000011000000L}); public static final BitSet FOLLOW_COMMA_in_enumBody1614 = new BitSet(new long[]{0x0000000000000000L,0x0000000011000000L}); public static final BitSet FOLLOW_enumBodyDeclarations_in_enumBody1627 = new BitSet(new long[]{0x0000000000000000L,0x0000000001000000L}); public static final BitSet FOLLOW_RBRACE_in_enumBody1649 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_enumConstant_in_enumConstants1669 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_COMMA_in_enumConstants1680 = new BitSet(new long[]{0x0040000000000000L,0x0000000000000200L}); public static final BitSet FOLLOW_enumConstant_in_enumConstants1682 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_annotations_in_enumConstant1716 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_enumConstant1737 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000042L}); public static final BitSet FOLLOW_arguments_in_enumConstant1748 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000002L}); public static final BitSet FOLLOW_classBody_in_enumConstant1770 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SEMI_in_enumBodyDeclarations1811 = new BitSet(new long[]{0x1840502100A14012L,0x0019040C30700692L}); public static final BitSet FOLLOW_classBodyDeclaration_in_enumBodyDeclarations1823 = new BitSet(new long[]{0x1840502100A14012L,0x0019040C30700692L}); public static final BitSet FOLLOW_normalInterfaceDeclaration_in_interfaceDeclaration1854 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_annotationTypeDeclaration_in_interfaceDeclaration1864 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_normalInterfaceDeclaration1888 = new BitSet(new long[]{0x1000000000000000L}); public static final BitSet FOLLOW_INTERFACE_in_normalInterfaceDeclaration1890 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_normalInterfaceDeclaration1892 = new BitSet(new long[]{0x0000010000000000L,0x0000000000000082L}); public static final BitSet FOLLOW_typeParameters_in_normalInterfaceDeclaration1903 = new BitSet(new long[]{0x0000010000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_EXTENDS_in_normalInterfaceDeclaration1925 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_typeList_in_normalInterfaceDeclaration1927 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_interfaceBody_in_normalInterfaceDeclaration1948 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_type_in_typeList1968 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_COMMA_in_typeList1979 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_typeList1981 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_LBRACE_in_classBody2013 = new BitSet(new long[]{0x1840502100A14010L,0x0019040C31700692L}); public static final BitSet FOLLOW_classBodyDeclaration_in_classBody2026 = new BitSet(new long[]{0x1840502100A14010L,0x0019040C31700692L}); public static final BitSet FOLLOW_RBRACE_in_classBody2050 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LBRACE_in_interfaceBody2072 = new BitSet(new long[]{0x1840502100A14010L,0x0019040C31700690L}); public static final BitSet FOLLOW_interfaceBodyDeclaration_in_interfaceBody2084 = new BitSet(new long[]{0x1840502100A14010L,0x0019040C31700690L}); public static final BitSet FOLLOW_RBRACE_in_interfaceBody2106 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SEMI_in_classBodyDeclaration2126 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_STATIC_in_classBodyDeclaration2137 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_block_in_classBodyDeclaration2159 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_memberDecl_in_classBodyDeclaration2169 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_fieldDeclaration_in_memberDecl2189 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_methodDeclaration_in_memberDecl2200 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_classDeclaration_in_memberDecl2213 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_interfaceDeclaration_in_memberDecl2226 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_methodDeclaration2285 = new BitSet(new long[]{0x0040000000000000L,0x0000000000000080L}); public static final BitSet FOLLOW_typeParameters_in_methodDeclaration2296 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_methodDeclaration2319 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_formalParameters_in_methodDeclaration2331 = new BitSet(new long[]{0x0000000000000000L,0x0000400000000002L}); public static final BitSet FOLLOW_THROWS_in_methodDeclaration2342 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_qualifiedNameList_in_methodDeclaration2344 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_LBRACE_in_methodDeclaration2365 = new BitSet(new long[]{0x38C1D82350E1C310L,0x003FB7BC357A1EF2L}); public static final BitSet FOLLOW_explicitConstructorInvocation_in_methodDeclaration2377 = new BitSet(new long[]{0x38C1D82350E1C310L,0x003FB7BC357A1E72L}); public static final BitSet FOLLOW_blockStatement_in_methodDeclaration2399 = new BitSet(new long[]{0x38C1D82350E1C310L,0x003FB7BC357A1E72L}); public static final BitSet FOLLOW_RBRACE_in_methodDeclaration2420 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_methodDeclaration2430 = new BitSet(new long[]{0x0840400100214000L,0x0008000020000090L}); public static final BitSet FOLLOW_typeParameters_in_methodDeclaration2441 = new BitSet(new long[]{0x0840400100214000L,0x0008000020000010L}); public static final BitSet FOLLOW_type_in_methodDeclaration2466 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_VOID_in_methodDeclaration2484 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_methodDeclaration2509 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_formalParameters_in_methodDeclaration2521 = new BitSet(new long[]{0x0000000000000000L,0x0000400010000006L}); public static final BitSet FOLLOW_LBRACKET_in_methodDeclaration2534 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_methodDeclaration2538 = new BitSet(new long[]{0x0000000000000000L,0x0000400010000006L}); public static final BitSet FOLLOW_THROWS_in_methodDeclaration2565 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_qualifiedNameList_in_methodDeclaration2567 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000002L}); public static final BitSet FOLLOW_block_in_methodDeclaration2622 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SEMI_in_methodDeclaration2636 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_fieldDeclaration2689 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_fieldDeclaration2699 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_variableDeclarator_in_fieldDeclaration2711 = new BitSet(new long[]{0x0000000002000000L,0x0000000010000000L}); public static final BitSet FOLLOW_COMMA_in_fieldDeclaration2733 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_variableDeclarator_in_fieldDeclaration2737 = new BitSet(new long[]{0x0000000002000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_fieldDeclaration2762 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_IDENTIFIER_in_variableDeclarator2807 = new BitSet(new long[]{0x0000004000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_LBRACKET_in_variableDeclarator2822 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_variableDeclarator2826 = new BitSet(new long[]{0x0000004000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_EQ_in_variableDeclarator2852 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1872L}); public static final BitSet FOLLOW_variableInitializer_in_variableDeclarator2856 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_interfaceFieldDeclaration_in_interfaceBodyDeclaration2897 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_interfaceMethodDeclaration_in_interfaceBodyDeclaration2907 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_interfaceDeclaration_in_interfaceBodyDeclaration2917 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_classDeclaration_in_interfaceBodyDeclaration2927 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SEMI_in_interfaceBodyDeclaration2937 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_interfaceMethodDeclaration2957 = new BitSet(new long[]{0x0840400100214000L,0x0008000020000090L}); public static final BitSet FOLLOW_typeParameters_in_interfaceMethodDeclaration2968 = new BitSet(new long[]{0x0840400100214000L,0x0008000020000010L}); public static final BitSet FOLLOW_type_in_interfaceMethodDeclaration2990 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_VOID_in_interfaceMethodDeclaration3001 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_interfaceMethodDeclaration3021 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_formalParameters_in_interfaceMethodDeclaration3031 = new BitSet(new long[]{0x0000000000000000L,0x0000400010000004L}); public static final BitSet FOLLOW_LBRACKET_in_interfaceMethodDeclaration3042 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_interfaceMethodDeclaration3044 = new BitSet(new long[]{0x0000000000000000L,0x0000400010000004L}); public static final BitSet FOLLOW_THROWS_in_interfaceMethodDeclaration3066 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_qualifiedNameList_in_interfaceMethodDeclaration3068 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_interfaceMethodDeclaration3081 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_interfaceFieldDeclaration3103 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_interfaceFieldDeclaration3105 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_variableDeclarator_in_interfaceFieldDeclaration3107 = new BitSet(new long[]{0x0000000002000000L,0x0000000010000000L}); public static final BitSet FOLLOW_COMMA_in_interfaceFieldDeclaration3118 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_variableDeclarator_in_interfaceFieldDeclaration3120 = new BitSet(new long[]{0x0000000002000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_interfaceFieldDeclaration3141 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_classOrInterfaceType_in_type3183 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_LBRACKET_in_type3196 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_type3200 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_primitiveType_in_type3223 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_LBRACKET_in_type3236 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_type3240 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_IDENTIFIER_in_classOrInterfaceType3293 = new BitSet(new long[]{0x0000000080000002L,0x0000000000000080L}); public static final BitSet FOLLOW_typeArguments_in_classOrInterfaceType3312 = new BitSet(new long[]{0x0000000080000002L}); public static final BitSet FOLLOW_DOT_in_classOrInterfaceType3338 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_classOrInterfaceType3342 = new BitSet(new long[]{0x0000000080000002L,0x0000000000000080L}); public static final BitSet FOLLOW_typeArguments_in_classOrInterfaceType3364 = new BitSet(new long[]{0x0000000080000002L}); public static final BitSet FOLLOW_LT_in_typeArguments3534 = new BitSet(new long[]{0x0840400100214000L,0x0000000020800010L}); public static final BitSet FOLLOW_typeArgument_in_typeArguments3548 = new BitSet(new long[]{0x0008000002000000L}); public static final BitSet FOLLOW_COMMA_in_typeArguments3578 = new BitSet(new long[]{0x0840400100214000L,0x0000000020800010L}); public static final BitSet FOLLOW_typeArgument_in_typeArguments3582 = new BitSet(new long[]{0x0008000002000000L}); public static final BitSet FOLLOW_GT_in_typeArguments3623 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_type_in_typeArgument3667 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_QUES_in_typeArgument3677 = new BitSet(new long[]{0x0000010000000002L,0x0000010000000000L}); public static final BitSet FOLLOW_set_in_typeArgument3701 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_typeArgument3746 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_qualifiedName_in_qualifiedNameList3777 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_COMMA_in_qualifiedNameList3788 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_qualifiedName_in_qualifiedNameList3790 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_LPAREN_in_formalParameters3822 = new BitSet(new long[]{0x0840500100214000L,0x0000000028000210L}); public static final BitSet FOLLOW_formalParameterDecls_in_formalParameters3838 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_RPAREN_in_formalParameters3865 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ellipsisParameterDecl_in_formalParameterDecls3910 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_normalParameterDecl_in_formalParameterDecls3924 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_COMMA_in_formalParameterDecls3941 = new BitSet(new long[]{0x0840500100214000L,0x0000000020000210L}); public static final BitSet FOLLOW_normalParameterDecl_in_formalParameterDecls3945 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_normalParameterDecl_in_formalParameterDecls3971 = new BitSet(new long[]{0x0000000002000000L}); public static final BitSet FOLLOW_COMMA_in_formalParameterDecls3985 = new BitSet(new long[]{0x0840500100214000L,0x0000000020000210L}); public static final BitSet FOLLOW_ellipsisParameterDecl_in_formalParameterDecls4011 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_variableModifiers_in_normalParameterDecl4056 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_normalParameterDecl4058 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_normalParameterDecl4062 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_LBRACKET_in_normalParameterDecl4077 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_normalParameterDecl4081 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_variableModifiers_in_ellipsisParameterDecl4139 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_ellipsisParameterDecl4149 = new BitSet(new long[]{0x0000000800000000L}); public static final BitSet FOLLOW_ELLIPSIS_in_ellipsisParameterDecl4154 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_ellipsisParameterDecl4168 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_nonWildcardTypeArguments_in_explicitConstructorInvocation4192 = new BitSet(new long[]{0x0000000000000000L,0x0000110000000000L}); public static final BitSet FOLLOW_set_in_explicitConstructorInvocation4218 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_arguments_in_explicitConstructorInvocation4250 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_explicitConstructorInvocation4252 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_primary_in_explicitConstructorInvocation4263 = new BitSet(new long[]{0x0000000080000000L}); public static final BitSet FOLLOW_DOT_in_explicitConstructorInvocation4273 = new BitSet(new long[]{0x0000000000000000L,0x0000010000000080L}); public static final BitSet FOLLOW_nonWildcardTypeArguments_in_explicitConstructorInvocation4284 = new BitSet(new long[]{0x0000000000000000L,0x0000010000000000L}); public static final BitSet FOLLOW_SUPER_in_explicitConstructorInvocation4305 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_arguments_in_explicitConstructorInvocation4315 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_explicitConstructorInvocation4317 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_IDENTIFIER_in_qualifiedName4362 = new BitSet(new long[]{0x0000000080000002L}); public static final BitSet FOLLOW_DOT_in_qualifiedName4375 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_qualifiedName4379 = new BitSet(new long[]{0x0000000080000002L}); public static final BitSet FOLLOW_annotation_in_annotations4413 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000200L}); public static final BitSet FOLLOW_MONKEYS_AT_in_annotation4469 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_qualifiedName_in_annotation4473 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000040L}); public static final BitSet FOLLOW_LPAREN_in_annotation4491 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0280A1A72L}); public static final BitSet FOLLOW_elementValuePairs_in_annotation4519 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_elementValue_in_annotation4547 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_RPAREN_in_annotation4587 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_elementValuePair_in_elementValuePairs4643 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_COMMA_in_elementValuePairs4658 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_elementValuePair_in_elementValuePairs4662 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_IDENTIFIER_in_elementValuePair4718 = new BitSet(new long[]{0x0000004000000000L}); public static final BitSet FOLLOW_EQ_in_elementValuePair4734 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1A72L}); public static final BitSet FOLLOW_elementValue_in_elementValuePair4758 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_conditionalExpression_in_elementValue4802 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_annotation_in_elementValue4812 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_elementValueArrayInitializer_in_elementValue4822 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LBRACE_in_elementValueArrayInitializer4842 = new BitSet(new long[]{0x2840C80302614200L,0x000A91B0210A1A72L}); public static final BitSet FOLLOW_elementValue_in_elementValueArrayInitializer4853 = new BitSet(new long[]{0x0000000002000000L,0x0000000001000000L}); public static final BitSet FOLLOW_COMMA_in_elementValueArrayInitializer4868 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1A72L}); public static final BitSet FOLLOW_elementValue_in_elementValueArrayInitializer4870 = new BitSet(new long[]{0x0000000002000000L,0x0000000001000000L}); public static final BitSet FOLLOW_COMMA_in_elementValueArrayInitializer4899 = new BitSet(new long[]{0x0000000000000000L,0x0000000001000000L}); public static final BitSet FOLLOW_RBRACE_in_elementValueArrayInitializer4903 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_annotationTypeDeclaration4926 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L}); public static final BitSet FOLLOW_MONKEYS_AT_in_annotationTypeDeclaration4928 = new BitSet(new long[]{0x1000000000000000L}); public static final BitSet FOLLOW_INTERFACE_in_annotationTypeDeclaration4938 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_annotationTypeDeclaration4948 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_annotationTypeBody_in_annotationTypeDeclaration4958 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LBRACE_in_annotationTypeBody4979 = new BitSet(new long[]{0x1840502100A14010L,0x0011040C31700610L}); public static final BitSet FOLLOW_annotationTypeElementDeclaration_in_annotationTypeBody4991 = new BitSet(new long[]{0x1840502100A14010L,0x0011040C31700610L}); public static final BitSet FOLLOW_RBRACE_in_annotationTypeBody5013 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_annotationMethodDeclaration_in_annotationTypeElementDeclaration5035 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_interfaceFieldDeclaration_in_annotationTypeElementDeclaration5045 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_normalClassDeclaration_in_annotationTypeElementDeclaration5055 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_normalInterfaceDeclaration_in_annotationTypeElementDeclaration5065 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_enumDeclaration_in_annotationTypeElementDeclaration5075 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_annotationTypeDeclaration_in_annotationTypeElementDeclaration5085 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SEMI_in_annotationTypeElementDeclaration5095 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_annotationMethodDeclaration5115 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_annotationMethodDeclaration5117 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_annotationMethodDeclaration5119 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_LPAREN_in_annotationMethodDeclaration5129 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_RPAREN_in_annotationMethodDeclaration5131 = new BitSet(new long[]{0x0000000020000000L,0x0000000010000000L}); public static final BitSet FOLLOW_DEFAULT_in_annotationMethodDeclaration5134 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1A72L}); public static final BitSet FOLLOW_elementValue_in_annotationMethodDeclaration5136 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_annotationMethodDeclaration5165 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LBRACE_in_block5189 = new BitSet(new long[]{0x38C1D82350E1C310L,0x003FB7BC357A1E72L}); public static final BitSet FOLLOW_blockStatement_in_block5200 = new BitSet(new long[]{0x38C1D82350E1C310L,0x003FB7BC357A1E72L}); public static final BitSet FOLLOW_RBRACE_in_block5221 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_localVariableDeclarationStatement_in_blockStatement5243 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_classOrInterfaceDeclaration_in_blockStatement5253 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_statement_in_blockStatement5263 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_localVariableDeclaration_in_localVariableDeclarationStatement5284 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_localVariableDeclarationStatement5294 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_variableModifiers_in_localVariableDeclaration5314 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_localVariableDeclaration5316 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_variableDeclarator_in_localVariableDeclaration5326 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_COMMA_in_localVariableDeclaration5337 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_variableDeclarator_in_localVariableDeclaration5339 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_block_in_statement5370 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ASSERT_in_statement5394 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_statement5414 = new BitSet(new long[]{0x0000000001000000L,0x0000000010000000L}); public static final BitSet FOLLOW_COLON_in_statement5417 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_statement5419 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_statement5423 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ASSERT_in_statement5433 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_statement5436 = new BitSet(new long[]{0x0000000001000000L,0x0000000010000000L}); public static final BitSet FOLLOW_COLON_in_statement5439 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_statement5441 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_statement5445 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_IF_in_statement5467 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_parExpression_in_statement5469 = new BitSet(new long[]{0x28C1C8035061C300L,0x002EB7B0340A1872L}); public static final BitSet FOLLOW_statement_in_statement5471 = new BitSet(new long[]{0x0000001000000002L}); public static final BitSet FOLLOW_ELSE_in_statement5474 = new BitSet(new long[]{0x28C1C8035061C300L,0x002EB7B0340A1872L}); public static final BitSet FOLLOW_statement_in_statement5476 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_forstatement_in_statement5498 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_WHILE_in_statement5508 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_parExpression_in_statement5510 = new BitSet(new long[]{0x28C1C8035061C300L,0x002EB7B0340A1872L}); public static final BitSet FOLLOW_statement_in_statement5512 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DO_in_statement5522 = new BitSet(new long[]{0x28C1C8035061C300L,0x002EB7B0340A1872L}); public static final BitSet FOLLOW_statement_in_statement5524 = new BitSet(new long[]{0x0000000000000000L,0x0020000000000000L}); public static final BitSet FOLLOW_WHILE_in_statement5526 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_parExpression_in_statement5528 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_statement5530 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_trystatement_in_statement5540 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SWITCH_in_statement5550 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_parExpression_in_statement5552 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_LBRACE_in_statement5554 = new BitSet(new long[]{0x0000000020080000L,0x0000000001000000L}); public static final BitSet FOLLOW_switchBlockStatementGroups_in_statement5556 = new BitSet(new long[]{0x0000000000000000L,0x0000000001000000L}); public static final BitSet FOLLOW_RBRACE_in_statement5558 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SYNCHRONIZED_in_statement5568 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_parExpression_in_statement5570 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_block_in_statement5572 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_RETURN_in_statement5582 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0300A1870L}); public static final BitSet FOLLOW_expression_in_statement5585 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_statement5590 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_THROW_in_statement5600 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_statement5602 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_statement5604 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_BREAK_in_statement5614 = new BitSet(new long[]{0x0040000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_statement5629 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_statement5646 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_CONTINUE_in_statement5656 = new BitSet(new long[]{0x0040000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_statement5671 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_statement5688 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_expression_in_statement5698 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_statement5701 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_IDENTIFIER_in_statement5716 = new BitSet(new long[]{0x0000000001000000L}); public static final BitSet FOLLOW_COLON_in_statement5718 = new BitSet(new long[]{0x28C1C8035061C300L,0x002EB7B0340A1872L}); public static final BitSet FOLLOW_statement_in_statement5720 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SEMI_in_statement5730 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_switchBlockStatementGroup_in_switchBlockStatementGroups5752 = new BitSet(new long[]{0x0000000020080002L}); public static final BitSet FOLLOW_switchLabel_in_switchBlockStatementGroup5781 = new BitSet(new long[]{0x38C1D82350E1C312L,0x003FB7BC347A1E72L}); public static final BitSet FOLLOW_blockStatement_in_switchBlockStatementGroup5792 = new BitSet(new long[]{0x38C1D82350E1C312L,0x003FB7BC347A1E72L}); public static final BitSet FOLLOW_CASE_in_switchLabel5823 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_switchLabel5825 = new BitSet(new long[]{0x0000000001000000L}); public static final BitSet FOLLOW_COLON_in_switchLabel5827 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DEFAULT_in_switchLabel5837 = new BitSet(new long[]{0x0000000001000000L}); public static final BitSet FOLLOW_COLON_in_switchLabel5839 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_TRY_in_trystatement5860 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_block_in_trystatement5862 = new BitSet(new long[]{0x0000200000100000L}); public static final BitSet FOLLOW_catches_in_trystatement5876 = new BitSet(new long[]{0x0000200000000000L}); public static final BitSet FOLLOW_FINALLY_in_trystatement5878 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_block_in_trystatement5880 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_catches_in_trystatement5894 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_FINALLY_in_trystatement5908 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_block_in_trystatement5910 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_catchClause_in_catches5941 = new BitSet(new long[]{0x0000000000100002L}); public static final BitSet FOLLOW_catchClause_in_catches5952 = new BitSet(new long[]{0x0000000000100002L}); public static final BitSet FOLLOW_CATCH_in_catchClause5983 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_LPAREN_in_catchClause5985 = new BitSet(new long[]{0x0840500100214000L,0x0000000020000210L}); public static final BitSet FOLLOW_formalParameter_in_catchClause5987 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_RPAREN_in_catchClause5997 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_block_in_catchClause5999 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_variableModifiers_in_formalParameter6020 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_formalParameter6022 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_formalParameter6024 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_LBRACKET_in_formalParameter6035 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_formalParameter6037 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_FOR_in_forstatement6086 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_LPAREN_in_forstatement6088 = new BitSet(new long[]{0x0840500100214000L,0x0000000020000210L}); public static final BitSet FOLLOW_variableModifiers_in_forstatement6090 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_forstatement6092 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_forstatement6094 = new BitSet(new long[]{0x0000000001000000L}); public static final BitSet FOLLOW_COLON_in_forstatement6096 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_forstatement6107 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_RPAREN_in_forstatement6109 = new BitSet(new long[]{0x28C1C8035061C300L,0x002EB7B0340A1872L}); public static final BitSet FOLLOW_statement_in_forstatement6111 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_FOR_in_forstatement6143 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_LPAREN_in_forstatement6145 = new BitSet(new long[]{0x2840D80300614200L,0x000A91B0300A1A70L}); public static final BitSet FOLLOW_forInit_in_forstatement6165 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_forstatement6186 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0300A1870L}); public static final BitSet FOLLOW_expression_in_forstatement6206 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_forstatement6227 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0280A1870L}); public static final BitSet FOLLOW_expressionList_in_forstatement6247 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_RPAREN_in_forstatement6268 = new BitSet(new long[]{0x28C1C8035061C300L,0x002EB7B0340A1872L}); public static final BitSet FOLLOW_statement_in_forstatement6270 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_localVariableDeclaration_in_forInit6290 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_expressionList_in_forInit6300 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LPAREN_in_parExpression6320 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_parExpression6322 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_RPAREN_in_parExpression6324 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_expression_in_expressionList6344 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_COMMA_in_expressionList6355 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_expressionList6357 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_conditionalExpression_in_expression6389 = new BitSet(new long[]{0x0008004000042082L,0x0000004280050080L}); public static final BitSet FOLLOW_assignmentOperator_in_expression6400 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_expression6402 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_EQ_in_assignmentOperator6434 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_PLUSEQ_in_assignmentOperator6444 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SUBEQ_in_assignmentOperator6454 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_STAREQ_in_assignmentOperator6464 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SLASHEQ_in_assignmentOperator6474 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_AMPEQ_in_assignmentOperator6484 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_BAREQ_in_assignmentOperator6494 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_CARETEQ_in_assignmentOperator6504 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_PERCENTEQ_in_assignmentOperator6514 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LT_in_assignmentOperator6525 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L}); public static final BitSet FOLLOW_LT_in_assignmentOperator6527 = new BitSet(new long[]{0x0000004000000000L}); public static final BitSet FOLLOW_EQ_in_assignmentOperator6529 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_GT_in_assignmentOperator6540 = new BitSet(new long[]{0x0008000000000000L}); public static final BitSet FOLLOW_GT_in_assignmentOperator6542 = new BitSet(new long[]{0x0008000000000000L}); public static final BitSet FOLLOW_GT_in_assignmentOperator6544 = new BitSet(new long[]{0x0000004000000000L}); public static final BitSet FOLLOW_EQ_in_assignmentOperator6546 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_GT_in_assignmentOperator6557 = new BitSet(new long[]{0x0008000000000000L}); public static final BitSet FOLLOW_GT_in_assignmentOperator6559 = new BitSet(new long[]{0x0000004000000000L}); public static final BitSet FOLLOW_EQ_in_assignmentOperator6561 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_conditionalOrExpression_in_conditionalExpression6582 = new BitSet(new long[]{0x0000000000000002L,0x0000000000800000L}); public static final BitSet FOLLOW_QUES_in_conditionalExpression6593 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_conditionalExpression6595 = new BitSet(new long[]{0x0000000001000000L}); public static final BitSet FOLLOW_COLON_in_conditionalExpression6597 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_conditionalExpression_in_conditionalExpression6599 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_conditionalAndExpression_in_conditionalOrExpression6630 = new BitSet(new long[]{0x0000000000001002L}); public static final BitSet FOLLOW_BARBAR_in_conditionalOrExpression6641 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_conditionalAndExpression_in_conditionalOrExpression6643 = new BitSet(new long[]{0x0000000000001002L}); public static final BitSet FOLLOW_inclusiveOrExpression_in_conditionalAndExpression6674 = new BitSet(new long[]{0x0000000000000042L}); public static final BitSet FOLLOW_AMPAMP_in_conditionalAndExpression6685 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_inclusiveOrExpression_in_conditionalAndExpression6687 = new BitSet(new long[]{0x0000000000000042L}); public static final BitSet FOLLOW_exclusiveOrExpression_in_inclusiveOrExpression6718 = new BitSet(new long[]{0x0000000000000802L}); public static final BitSet FOLLOW_BAR_in_inclusiveOrExpression6729 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_exclusiveOrExpression_in_inclusiveOrExpression6731 = new BitSet(new long[]{0x0000000000000802L}); public static final BitSet FOLLOW_andExpression_in_exclusiveOrExpression6762 = new BitSet(new long[]{0x0000000000020002L}); public static final BitSet FOLLOW_CARET_in_exclusiveOrExpression6773 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_andExpression_in_exclusiveOrExpression6775 = new BitSet(new long[]{0x0000000000020002L}); public static final BitSet FOLLOW_equalityExpression_in_andExpression6806 = new BitSet(new long[]{0x0000000000000022L}); public static final BitSet FOLLOW_AMP_in_andExpression6817 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_equalityExpression_in_andExpression6819 = new BitSet(new long[]{0x0000000000000022L}); public static final BitSet FOLLOW_instanceOfExpression_in_equalityExpression6850 = new BitSet(new long[]{0x0000008000000402L}); public static final BitSet FOLLOW_set_in_equalityExpression6877 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_instanceOfExpression_in_equalityExpression6927 = new BitSet(new long[]{0x0000008000000402L}); public static final BitSet FOLLOW_relationalExpression_in_instanceOfExpression6958 = new BitSet(new long[]{0x0400000000000002L}); public static final BitSet FOLLOW_INSTANCEOF_in_instanceOfExpression6969 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_instanceOfExpression6971 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_shiftExpression_in_relationalExpression7002 = new BitSet(new long[]{0x0008000000000002L,0x0000000000000080L}); public static final BitSet FOLLOW_relationalOp_in_relationalExpression7013 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_shiftExpression_in_relationalExpression7015 = new BitSet(new long[]{0x0008000000000002L,0x0000000000000080L}); public static final BitSet FOLLOW_LT_in_relationalOp7047 = new BitSet(new long[]{0x0000004000000000L}); public static final BitSet FOLLOW_EQ_in_relationalOp7049 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_GT_in_relationalOp7060 = new BitSet(new long[]{0x0000004000000000L}); public static final BitSet FOLLOW_EQ_in_relationalOp7062 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LT_in_relationalOp7072 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_GT_in_relationalOp7082 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_additiveExpression_in_shiftExpression7102 = new BitSet(new long[]{0x0008000000000002L,0x0000000000000080L}); public static final BitSet FOLLOW_shiftOp_in_shiftExpression7113 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_additiveExpression_in_shiftExpression7115 = new BitSet(new long[]{0x0008000000000002L,0x0000000000000080L}); public static final BitSet FOLLOW_LT_in_shiftOp7148 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L}); public static final BitSet FOLLOW_LT_in_shiftOp7150 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_GT_in_shiftOp7161 = new BitSet(new long[]{0x0008000000000000L}); public static final BitSet FOLLOW_GT_in_shiftOp7163 = new BitSet(new long[]{0x0008000000000000L}); public static final BitSet FOLLOW_GT_in_shiftOp7165 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_GT_in_shiftOp7176 = new BitSet(new long[]{0x0008000000000000L}); public static final BitSet FOLLOW_GT_in_shiftOp7178 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_multiplicativeExpression_in_additiveExpression7199 = new BitSet(new long[]{0x0000000000000002L,0x0000002000020000L}); public static final BitSet FOLLOW_set_in_additiveExpression7226 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_multiplicativeExpression_in_additiveExpression7276 = new BitSet(new long[]{0x0000000000000002L,0x0000002000020000L}); public static final BitSet FOLLOW_unaryExpression_in_multiplicativeExpression7314 = new BitSet(new long[]{0x0000000000000002L,0x0000000140008000L}); public static final BitSet FOLLOW_set_in_multiplicativeExpression7341 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_unaryExpression_in_multiplicativeExpression7409 = new BitSet(new long[]{0x0000000000000002L,0x0000000140008000L}); public static final BitSet FOLLOW_PLUS_in_unaryExpression7442 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_unaryExpression_in_unaryExpression7445 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SUB_in_unaryExpression7455 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_unaryExpression_in_unaryExpression7457 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_PLUSPLUS_in_unaryExpression7467 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_unaryExpression_in_unaryExpression7469 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SUBSUB_in_unaryExpression7479 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_unaryExpression_in_unaryExpression7481 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_unaryExpressionNotPlusMinus_in_unaryExpression7491 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_TILDE_in_unaryExpressionNotPlusMinus7511 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_unaryExpression_in_unaryExpressionNotPlusMinus7513 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_BANG_in_unaryExpressionNotPlusMinus7523 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_unaryExpression_in_unaryExpressionNotPlusMinus7525 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_castExpression_in_unaryExpressionNotPlusMinus7535 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_primary_in_unaryExpressionNotPlusMinus7545 = new BitSet(new long[]{0x0000000080000002L,0x0000008000080004L}); public static final BitSet FOLLOW_selector_in_unaryExpressionNotPlusMinus7556 = new BitSet(new long[]{0x0000000080000002L,0x0000008000080004L}); public static final BitSet FOLLOW_LPAREN_in_castExpression7626 = new BitSet(new long[]{0x0800400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_primitiveType_in_castExpression7628 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_RPAREN_in_castExpression7630 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_unaryExpression_in_castExpression7632 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LPAREN_in_castExpression7642 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_castExpression7644 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_RPAREN_in_castExpression7646 = new BitSet(new long[]{0x2840C80300614200L,0x000A911020001870L}); public static final BitSet FOLLOW_unaryExpressionNotPlusMinus_in_castExpression7648 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_parExpression_in_primary7670 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_THIS_in_primary7692 = new BitSet(new long[]{0x0000000080000002L,0x0000000000000044L}); public static final BitSet FOLLOW_DOT_in_primary7703 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_primary7705 = new BitSet(new long[]{0x0000000080000002L,0x0000000000000044L}); public static final BitSet FOLLOW_identifierSuffix_in_primary7727 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_IDENTIFIER_in_primary7748 = new BitSet(new long[]{0x0000000080000002L,0x0000000000000044L}); public static final BitSet FOLLOW_DOT_in_primary7759 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_primary7761 = new BitSet(new long[]{0x0000000080000002L,0x0000000000000044L}); public static final BitSet FOLLOW_identifierSuffix_in_primary7783 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_SUPER_in_primary7804 = new BitSet(new long[]{0x0000000080000000L,0x0000000000000040L}); public static final BitSet FOLLOW_superSuffix_in_primary7814 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_literal_in_primary7824 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_creator_in_primary7834 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_primitiveType_in_primary7844 = new BitSet(new long[]{0x0000000080000000L,0x0000000000000004L}); public static final BitSet FOLLOW_LBRACKET_in_primary7855 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_primary7857 = new BitSet(new long[]{0x0000000080000000L,0x0000000000000004L}); public static final BitSet FOLLOW_DOT_in_primary7878 = new BitSet(new long[]{0x0000000000800000L}); public static final BitSet FOLLOW_CLASS_in_primary7880 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_VOID_in_primary7890 = new BitSet(new long[]{0x0000000080000000L}); public static final BitSet FOLLOW_DOT_in_primary7892 = new BitSet(new long[]{0x0000000000800000L}); public static final BitSet FOLLOW_CLASS_in_primary7894 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_arguments_in_superSuffix7920 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DOT_in_superSuffix7930 = new BitSet(new long[]{0x0040000000000000L,0x0000000000000080L}); public static final BitSet FOLLOW_typeArguments_in_superSuffix7933 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_superSuffix7954 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000040L}); public static final BitSet FOLLOW_arguments_in_superSuffix7965 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LBRACKET_in_identifierSuffix7998 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_identifierSuffix8000 = new BitSet(new long[]{0x0000000080000000L,0x0000000000000004L}); public static final BitSet FOLLOW_DOT_in_identifierSuffix8021 = new BitSet(new long[]{0x0000000000800000L}); public static final BitSet FOLLOW_CLASS_in_identifierSuffix8023 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LBRACKET_in_identifierSuffix8034 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_identifierSuffix8036 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_identifierSuffix8038 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_arguments_in_identifierSuffix8059 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DOT_in_identifierSuffix8069 = new BitSet(new long[]{0x0000000000800000L}); public static final BitSet FOLLOW_CLASS_in_identifierSuffix8071 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DOT_in_identifierSuffix8081 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L}); public static final BitSet FOLLOW_nonWildcardTypeArguments_in_identifierSuffix8083 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_identifierSuffix8085 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_arguments_in_identifierSuffix8087 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DOT_in_identifierSuffix8097 = new BitSet(new long[]{0x0000000000000000L,0x0000100000000000L}); public static final BitSet FOLLOW_THIS_in_identifierSuffix8099 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DOT_in_identifierSuffix8109 = new BitSet(new long[]{0x0000000000000000L,0x0000010000000000L}); public static final BitSet FOLLOW_SUPER_in_identifierSuffix8111 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_arguments_in_identifierSuffix8113 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_innerCreator_in_identifierSuffix8123 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DOT_in_selector8145 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_selector8147 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000040L}); public static final BitSet FOLLOW_arguments_in_selector8158 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DOT_in_selector8179 = new BitSet(new long[]{0x0000000000000000L,0x0000100000000000L}); public static final BitSet FOLLOW_THIS_in_selector8181 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DOT_in_selector8191 = new BitSet(new long[]{0x0000000000000000L,0x0000010000000000L}); public static final BitSet FOLLOW_SUPER_in_selector8193 = new BitSet(new long[]{0x0000000080000000L,0x0000000000000040L}); public static final BitSet FOLLOW_superSuffix_in_selector8203 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_innerCreator_in_selector8213 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LBRACKET_in_selector8223 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_selector8225 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_selector8227 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_NEW_in_creator8247 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L}); public static final BitSet FOLLOW_nonWildcardTypeArguments_in_creator8249 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_classOrInterfaceType_in_creator8251 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_classCreatorRest_in_creator8253 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_NEW_in_creator8263 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_classOrInterfaceType_in_creator8265 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_classCreatorRest_in_creator8267 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_arrayCreator_in_creator8277 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_NEW_in_arrayCreator8297 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_createdName_in_arrayCreator8299 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L}); public static final BitSet FOLLOW_LBRACKET_in_arrayCreator8309 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_arrayCreator8311 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000006L}); public static final BitSet FOLLOW_LBRACKET_in_arrayCreator8322 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_arrayCreator8324 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000006L}); public static final BitSet FOLLOW_arrayInitializer_in_arrayCreator8345 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_NEW_in_arrayCreator8356 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_createdName_in_arrayCreator8358 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L}); public static final BitSet FOLLOW_LBRACKET_in_arrayCreator8368 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_arrayCreator8370 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_arrayCreator8380 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_LBRACKET_in_arrayCreator8394 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_arrayCreator8396 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_arrayCreator8410 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_LBRACKET_in_arrayCreator8432 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_arrayCreator8434 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); public static final BitSet FOLLOW_arrayInitializer_in_variableInitializer8465 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_expression_in_variableInitializer8475 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LBRACE_in_arrayInitializer8495 = new BitSet(new long[]{0x2840C80302614200L,0x000A91B0210A1872L}); public static final BitSet FOLLOW_variableInitializer_in_arrayInitializer8511 = new BitSet(new long[]{0x0000000002000000L,0x0000000001000000L}); public static final BitSet FOLLOW_COMMA_in_arrayInitializer8530 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1872L}); public static final BitSet FOLLOW_variableInitializer_in_arrayInitializer8532 = new BitSet(new long[]{0x0000000002000000L,0x0000000001000000L}); public static final BitSet FOLLOW_COMMA_in_arrayInitializer8582 = new BitSet(new long[]{0x0000000000000000L,0x0000000001000000L}); public static final BitSet FOLLOW_RBRACE_in_arrayInitializer8595 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_classOrInterfaceType_in_createdName8629 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_primitiveType_in_createdName8639 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DOT_in_innerCreator8660 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000800L}); public static final BitSet FOLLOW_NEW_in_innerCreator8662 = new BitSet(new long[]{0x0040000000000000L,0x0000000000000080L}); public static final BitSet FOLLOW_nonWildcardTypeArguments_in_innerCreator8673 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_innerCreator8694 = new BitSet(new long[]{0x0000000000000000L,0x00000000000000C0L}); public static final BitSet FOLLOW_typeArguments_in_innerCreator8705 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_classCreatorRest_in_innerCreator8726 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_arguments_in_classCreatorRest8747 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000002L}); public static final BitSet FOLLOW_classBody_in_classCreatorRest8758 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LT_in_nonWildcardTypeArguments8790 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_typeList_in_nonWildcardTypeArguments8792 = new BitSet(new long[]{0x0008000000000000L}); public static final BitSet FOLLOW_GT_in_nonWildcardTypeArguments8802 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LPAREN_in_arguments8822 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0280A1870L}); public static final BitSet FOLLOW_expressionList_in_arguments8825 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_RPAREN_in_arguments8838 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_classHeader8962 = new BitSet(new long[]{0x0000000000800000L}); public static final BitSet FOLLOW_CLASS_in_classHeader8964 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_classHeader8966 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_enumHeader8986 = new BitSet(new long[]{0x0040002000000000L}); public static final BitSet FOLLOW_set_in_enumHeader8988 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_enumHeader8994 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_interfaceHeader9014 = new BitSet(new long[]{0x1000000000000000L}); public static final BitSet FOLLOW_INTERFACE_in_interfaceHeader9016 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_interfaceHeader9018 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_annotationHeader9038 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L}); public static final BitSet FOLLOW_MONKEYS_AT_in_annotationHeader9040 = new BitSet(new long[]{0x1000000000000000L}); public static final BitSet FOLLOW_INTERFACE_in_annotationHeader9042 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_annotationHeader9044 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_typeHeader9064 = new BitSet(new long[]{0x1000002000800000L,0x0000000000000200L}); public static final BitSet FOLLOW_CLASS_in_typeHeader9067 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_ENUM_in_typeHeader9069 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_MONKEYS_AT_in_typeHeader9072 = new BitSet(new long[]{0x1000000000000000L}); public static final BitSet FOLLOW_INTERFACE_in_typeHeader9076 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_typeHeader9080 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_methodHeader9100 = new BitSet(new long[]{0x0840400100214000L,0x0008000020000090L}); public static final BitSet FOLLOW_typeParameters_in_methodHeader9102 = new BitSet(new long[]{0x0840400100214000L,0x0008000020000010L}); public static final BitSet FOLLOW_type_in_methodHeader9106 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_VOID_in_methodHeader9108 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_methodHeader9112 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_LPAREN_in_methodHeader9114 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_fieldHeader9134 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_fieldHeader9136 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_fieldHeader9138 = new BitSet(new long[]{0x0000004002000000L,0x0000000010000004L}); public static final BitSet FOLLOW_LBRACKET_in_fieldHeader9141 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_fieldHeader9142 = new BitSet(new long[]{0x0000004002000000L,0x0000000010000004L}); public static final BitSet FOLLOW_set_in_fieldHeader9146 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_variableModifiers_in_localVariableHeader9172 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_localVariableHeader9174 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_localVariableHeader9176 = new BitSet(new long[]{0x0000004002000000L,0x0000000010000004L}); public static final BitSet FOLLOW_LBRACKET_in_localVariableHeader9179 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_localVariableHeader9180 = new BitSet(new long[]{0x0000004002000000L,0x0000000010000004L}); public static final BitSet FOLLOW_set_in_localVariableHeader9184 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_annotations_in_synpred2_Java127 = new BitSet(new long[]{0x0000000000000000L,0x0000000000004000L}); public static final BitSet FOLLOW_packageDeclaration_in_synpred2_Java156 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_classDeclaration_in_synpred12_Java692 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_normalClassDeclaration_in_synpred27_Java1103 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_normalInterfaceDeclaration_in_synpred43_Java1854 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_fieldDeclaration_in_synpred52_Java2189 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_methodDeclaration_in_synpred53_Java2200 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_classDeclaration_in_synpred54_Java2213 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_explicitConstructorInvocation_in_synpred57_Java2377 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_modifiers_in_synpred59_Java2285 = new BitSet(new long[]{0x0040000000000000L,0x0000000000000080L}); public static final BitSet FOLLOW_typeParameters_in_synpred59_Java2296 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_synpred59_Java2319 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_formalParameters_in_synpred59_Java2331 = new BitSet(new long[]{0x0000000000000000L,0x0000400000000002L}); public static final BitSet FOLLOW_THROWS_in_synpred59_Java2342 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_qualifiedNameList_in_synpred59_Java2344 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_LBRACE_in_synpred59_Java2365 = new BitSet(new long[]{0x38C1D82350E1C310L,0x003FB7BC357A1EF2L}); public static final BitSet FOLLOW_explicitConstructorInvocation_in_synpred59_Java2377 = new BitSet(new long[]{0x38C1D82350E1C310L,0x003FB7BC357A1E72L}); public static final BitSet FOLLOW_blockStatement_in_synpred59_Java2399 = new BitSet(new long[]{0x38C1D82350E1C310L,0x003FB7BC357A1E72L}); public static final BitSet FOLLOW_RBRACE_in_synpred59_Java2420 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_interfaceFieldDeclaration_in_synpred68_Java2897 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_interfaceMethodDeclaration_in_synpred69_Java2907 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_interfaceDeclaration_in_synpred70_Java2917 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_classDeclaration_in_synpred71_Java2927 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ellipsisParameterDecl_in_synpred96_Java3910 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_normalParameterDecl_in_synpred98_Java3924 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_COMMA_in_synpred98_Java3941 = new BitSet(new long[]{0x0840500100214000L,0x0000000020000210L}); public static final BitSet FOLLOW_normalParameterDecl_in_synpred98_Java3945 = new BitSet(new long[]{0x0000000002000002L}); public static final BitSet FOLLOW_normalParameterDecl_in_synpred99_Java3971 = new BitSet(new long[]{0x0000000002000000L}); public static final BitSet FOLLOW_COMMA_in_synpred99_Java3985 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_nonWildcardTypeArguments_in_synpred103_Java4192 = new BitSet(new long[]{0x0000000000000000L,0x0000110000000000L}); public static final BitSet FOLLOW_set_in_synpred103_Java4218 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_arguments_in_synpred103_Java4250 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_synpred103_Java4252 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_annotationMethodDeclaration_in_synpred117_Java5035 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_interfaceFieldDeclaration_in_synpred118_Java5045 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_normalClassDeclaration_in_synpred119_Java5055 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_normalInterfaceDeclaration_in_synpred120_Java5065 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_enumDeclaration_in_synpred121_Java5075 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_annotationTypeDeclaration_in_synpred122_Java5085 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_localVariableDeclarationStatement_in_synpred125_Java5243 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_classOrInterfaceDeclaration_in_synpred126_Java5253 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ASSERT_in_synpred130_Java5394 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_synpred130_Java5414 = new BitSet(new long[]{0x0000000001000000L,0x0000000010000000L}); public static final BitSet FOLLOW_COLON_in_synpred130_Java5417 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_synpred130_Java5419 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_synpred130_Java5423 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ASSERT_in_synpred132_Java5433 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_synpred132_Java5436 = new BitSet(new long[]{0x0000000001000000L,0x0000000010000000L}); public static final BitSet FOLLOW_COLON_in_synpred132_Java5439 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_synpred132_Java5441 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_synpred132_Java5445 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ELSE_in_synpred133_Java5474 = new BitSet(new long[]{0x28C1C8035061C300L,0x002EB7B0340A1872L}); public static final BitSet FOLLOW_statement_in_synpred133_Java5476 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_expression_in_synpred148_Java5698 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L}); public static final BitSet FOLLOW_SEMI_in_synpred148_Java5701 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_IDENTIFIER_in_synpred149_Java5716 = new BitSet(new long[]{0x0000000001000000L}); public static final BitSet FOLLOW_COLON_in_synpred149_Java5718 = new BitSet(new long[]{0x28C1C8035061C300L,0x002EB7B0340A1872L}); public static final BitSet FOLLOW_statement_in_synpred149_Java5720 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_catches_in_synpred153_Java5876 = new BitSet(new long[]{0x0000200000000000L}); public static final BitSet FOLLOW_FINALLY_in_synpred153_Java5878 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); public static final BitSet FOLLOW_block_in_synpred153_Java5880 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_catches_in_synpred154_Java5894 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_FOR_in_synpred157_Java6086 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_LPAREN_in_synpred157_Java6088 = new BitSet(new long[]{0x0840500100214000L,0x0000000020000210L}); public static final BitSet FOLLOW_variableModifiers_in_synpred157_Java6090 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_type_in_synpred157_Java6092 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_synpred157_Java6094 = new BitSet(new long[]{0x0000000001000000L}); public static final BitSet FOLLOW_COLON_in_synpred157_Java6096 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_synpred157_Java6107 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_RPAREN_in_synpred157_Java6109 = new BitSet(new long[]{0x28C1C8035061C300L,0x002EB7B0340A1872L}); public static final BitSet FOLLOW_statement_in_synpred157_Java6111 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_localVariableDeclaration_in_synpred161_Java6290 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_castExpression_in_synpred202_Java7535 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LPAREN_in_synpred206_Java7626 = new BitSet(new long[]{0x0800400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_primitiveType_in_synpred206_Java7628 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L}); public static final BitSet FOLLOW_RPAREN_in_synpred206_Java7630 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_unaryExpression_in_synpred206_Java7632 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DOT_in_synpred208_Java7703 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_synpred208_Java7705 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_identifierSuffix_in_synpred209_Java7727 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DOT_in_synpred211_Java7759 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_IDENTIFIER_in_synpred211_Java7761 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_identifierSuffix_in_synpred212_Java7783 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LBRACKET_in_synpred224_Java8034 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_synpred224_Java8036 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_synpred224_Java8038 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_NEW_in_synpred236_Java8247 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L}); public static final BitSet FOLLOW_nonWildcardTypeArguments_in_synpred236_Java8249 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_classOrInterfaceType_in_synpred236_Java8251 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_classCreatorRest_in_synpred236_Java8253 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_NEW_in_synpred237_Java8263 = new BitSet(new long[]{0x0040000000000000L}); public static final BitSet FOLLOW_classOrInterfaceType_in_synpred237_Java8265 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); public static final BitSet FOLLOW_classCreatorRest_in_synpred237_Java8267 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_NEW_in_synpred239_Java8297 = new BitSet(new long[]{0x0840400100214000L,0x0000000020000010L}); public static final BitSet FOLLOW_createdName_in_synpred239_Java8299 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L}); public static final BitSet FOLLOW_LBRACKET_in_synpred239_Java8309 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_synpred239_Java8311 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000006L}); public static final BitSet FOLLOW_LBRACKET_in_synpred239_Java8322 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_synpred239_Java8324 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000006L}); public static final BitSet FOLLOW_arrayInitializer_in_synpred239_Java8345 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LBRACKET_in_synpred240_Java8394 = new BitSet(new long[]{0x2840C80300614200L,0x000A91B0200A1870L}); public static final BitSet FOLLOW_expression_in_synpred240_Java8396 = new BitSet(new long[]{0x0000000000000000L,0x0000000002000000L}); public static final BitSet FOLLOW_RBRACKET_in_synpred240_Java8410 = new BitSet(new long[]{0x0000000000000002L}); }