/** * Copyright 2010 JBoss Inc * * 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. */ // $ANTLR 3.1.1 src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g 2010-01-26 19:56:36 package org.drools.reteoo.test.parser; import java.util.Map; import java.util.HashMap; import java.util.Stack; import org.antlr.runtime.*; import java.util.Stack; import java.util.List; import java.util.ArrayList; import org.antlr.runtime.tree.*; public class NodeTestDSLParser extends Parser { public static final String[] tokenNames = new String[] { "<invalid>", "<EOR>", "<DOWN>", "<UP>", "VT_TEST_CASE", "VT_PARAMS", "VT_QUALIFIED_ID", "VT_SYMBOL", "VT_CHUNK", "VK_TEST_CASE", "VK_IMPORT", "VK_SETUP", "VK_TEARDOWN", "VK_TEST", "STRING", "SEMI_COLON", "ID", "COLON", "COMMA", "INT", "FLOAT", "MISC", "STAR", "DOT", "LEFT_SQUARE", "RIGHT_SQUARE", "LEFT_PAREN", "RIGHT_PAREN", "EOL", "WS", "EscapeSequence", "HexDigit", "UnicodeEscape", "OctalEscape", "SH_STYLE_SINGLE_LINE_COMMENT", "C_STYLE_SINGLE_LINE_COMMENT", "MULTI_LINE_COMMENT", "IdentifierStart", "IdentifierPart" }; public static final int COMMA=18; public static final int LEFT_PAREN=26; public static final int IdentifierPart=38; public static final int HexDigit=31; public static final int WS=29; public static final int VT_QUALIFIED_ID=6; public static final int MISC=21; public static final int STRING=14; public static final int FLOAT=20; public static final int VT_PARAMS=5; public static final int VT_CHUNK=8; public static final int DOT=23; public static final int VK_IMPORT=10; public static final int UnicodeEscape=32; public static final int IdentifierStart=37; public static final int VT_SYMBOL=7; public static final int EscapeSequence=30; public static final int VK_TEARDOWN=12; public static final int SEMI_COLON=15; public static final int INT=19; public static final int VT_TEST_CASE=4; public static final int EOF=-1; public static final int VK_SETUP=11; public static final int EOL=28; public static final int VK_TEST_CASE=9; public static final int LEFT_SQUARE=24; public static final int COLON=17; public static final int SH_STYLE_SINGLE_LINE_COMMENT=34; public static final int OctalEscape=33; public static final int MULTI_LINE_COMMENT=36; public static final int VK_TEST=13; public static final int STAR=22; public static final int RIGHT_PAREN=27; public static final int RIGHT_SQUARE=25; public static final int C_STYLE_SINGLE_LINE_COMMENT=35; public static final int ID=16; // delegates // delegators public NodeTestDSLParser(TokenStream input) { this(input, new RecognizerSharedState()); } public NodeTestDSLParser(TokenStream input, RecognizerSharedState state) { super(input, state); } protected TreeAdaptor adaptor = new CommonTreeAdaptor(); public void setTreeAdaptor(TreeAdaptor adaptor) { this.adaptor = adaptor; } public TreeAdaptor getTreeAdaptor() { return adaptor; } public String[] getTokenNames() { return NodeTestDSLParser.tokenNames; } public String getGrammarFileName() { return "src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g"; } private Stack<Map<DroolsParaphraseTypes, String>> paraphrases = new Stack<Map<DroolsParaphraseTypes, String>>(); private List<DroolsParserException> errors = new ArrayList<DroolsParserException>(); private DroolsParserExceptionFactory errorMessageFactory = new DroolsParserExceptionFactory(tokenNames, paraphrases); private boolean validateIdentifierKey(String text) { return validateLT(1, text); } private boolean validateLT(int LTNumber, String text) { String text2Validate = retrieveLT( LTNumber ); return text2Validate != null && text2Validate.equalsIgnoreCase(text); } private String retrieveLT(int LTNumber) { if (null == input) return null; if (null == input.LT(LTNumber)) return null; if (null == input.LT(LTNumber).getText()) return null; return input.LT(LTNumber).getText(); } public void reportError(RecognitionException ex) { // if we've already reported an error and have not matched a token // yet successfully, don't report any errors. if (state.errorRecovery) { return; } state.errorRecovery = true; errors.add(errorMessageFactory.createDroolsException(ex)); } // return the raw RecognitionException errors public List<DroolsParserException> getErrors() { return errors; } // Return a list of pretty strings summarising the errors public List<String> getErrorMessages() { List<String> messages = new ArrayList<String>(errors.size()); for (DroolsParserException activeException : errors) { messages.add(activeException.getMessage()); } return messages; } // return true if any parser errors were accumulated public boolean hasErrors() { return !errors.isEmpty(); } // Method that adds a paraphrase type into paraphrases stack. private void pushParaphrases(DroolsParaphraseTypes type) { Map<DroolsParaphraseTypes, String> activeMap = new HashMap<DroolsParaphraseTypes, String>(); activeMap.put(type, ""); paraphrases.push(activeMap); } // Method that sets paraphrase value for a type into paraphrases stack. private void setParaphrasesValue(DroolsParaphraseTypes type, String value) { paraphrases.peek().put(type, value); } public static class compilation_unit_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "compilation_unit" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:110:1: compilation_unit : test_case_statement ( import_statement )* ( setup )? ( teardown )? ( test )* EOF -> ^( VT_TEST_CASE test_case_statement ( import_statement )* ( setup )? ( teardown )? ( test )* ) ; public final NodeTestDSLParser.compilation_unit_return compilation_unit() throws RecognitionException { NodeTestDSLParser.compilation_unit_return retval = new NodeTestDSLParser.compilation_unit_return(); retval.start = input.LT(1); Object root_0 = null; Token EOF6=null; NodeTestDSLParser.test_case_statement_return test_case_statement1 = null; NodeTestDSLParser.import_statement_return import_statement2 = null; NodeTestDSLParser.setup_return setup3 = null; NodeTestDSLParser.teardown_return teardown4 = null; NodeTestDSLParser.test_return test5 = null; Object EOF6_tree=null; RewriteRuleTokenStream stream_EOF=new RewriteRuleTokenStream(adaptor,"token EOF"); RewriteRuleSubtreeStream stream_setup=new RewriteRuleSubtreeStream(adaptor,"rule setup"); RewriteRuleSubtreeStream stream_test_case_statement=new RewriteRuleSubtreeStream(adaptor,"rule test_case_statement"); RewriteRuleSubtreeStream stream_import_statement=new RewriteRuleSubtreeStream(adaptor,"rule import_statement"); RewriteRuleSubtreeStream stream_test=new RewriteRuleSubtreeStream(adaptor,"rule test"); RewriteRuleSubtreeStream stream_teardown=new RewriteRuleSubtreeStream(adaptor,"rule teardown"); try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:111:2: ( test_case_statement ( import_statement )* ( setup )? ( teardown )? ( test )* EOF -> ^( VT_TEST_CASE test_case_statement ( import_statement )* ( setup )? ( teardown )? ( test )* ) ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:111:4: test_case_statement ( import_statement )* ( setup )? ( teardown )? ( test )* EOF { pushFollow(FOLLOW_test_case_statement_in_compilation_unit107); test_case_statement1=test_case_statement(); state._fsp--; stream_test_case_statement.add(test_case_statement1.getTree()); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:112:3: ( import_statement )* loop1: do { int alt1=2; alt1 = dfa1.predict(input); switch (alt1) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:112:3: import_statement { pushFollow(FOLLOW_import_statement_in_compilation_unit111); import_statement2=import_statement(); state._fsp--; stream_import_statement.add(import_statement2.getTree()); } break; default : break loop1; } } while (true); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:113:3: ( setup )? int alt2=2; int LA2_0 = input.LA(1); if ( (LA2_0==ID) && ((((validateIdentifierKey("Setup")))||((validateIdentifierKey("Test")))||((validateIdentifierKey("TearDown")))))) { int LA2_1 = input.LA(2); if ( (((validateIdentifierKey("Setup")))) ) { alt2=1; } } switch (alt2) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:113:3: setup { pushFollow(FOLLOW_setup_in_compilation_unit116); setup3=setup(); state._fsp--; stream_setup.add(setup3.getTree()); } break; } // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:114:3: ( teardown )? int alt3=2; int LA3_0 = input.LA(1); if ( (LA3_0==ID) && ((((validateIdentifierKey("Test")))||((validateIdentifierKey("TearDown")))))) { int LA3_1 = input.LA(2); if ( (LA3_1==EOF||LA3_1==ID) && (((validateIdentifierKey("TearDown"))))) { alt3=1; } } switch (alt3) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:114:3: teardown { pushFollow(FOLLOW_teardown_in_compilation_unit121); teardown4=teardown(); state._fsp--; stream_teardown.add(teardown4.getTree()); } break; } // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:115:3: ( test )* loop4: do { int alt4=2; int LA4_0 = input.LA(1); if ( (LA4_0==ID) && (((validateIdentifierKey("Test"))))) { alt4=1; } switch (alt4) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:115:3: test { pushFollow(FOLLOW_test_in_compilation_unit126); test5=test(); state._fsp--; stream_test.add(test5.getTree()); } break; default : break loop4; } } while (true); EOF6=(Token)match(input,EOF,FOLLOW_EOF_in_compilation_unit131); stream_EOF.add(EOF6); // AST REWRITE // elements: setup, test, import_statement, teardown, test_case_statement // token labels: // rule labels: retval // token list labels: // rule list labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); // 117:3: -> ^( VT_TEST_CASE test_case_statement ( import_statement )* ( setup )? ( teardown )? ( test )* ) { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:117:6: ^( VT_TEST_CASE test_case_statement ( import_statement )* ( setup )? ( teardown )? ( test )* ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(VT_TEST_CASE, "VT_TEST_CASE"), root_1); adaptor.addChild(root_1, stream_test_case_statement.nextTree()); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:117:41: ( import_statement )* while ( stream_import_statement.hasNext() ) { adaptor.addChild(root_1, stream_import_statement.nextTree()); } stream_import_statement.reset(); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:117:59: ( setup )? if ( stream_setup.hasNext() ) { adaptor.addChild(root_1, stream_setup.nextTree()); } stream_setup.reset(); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:117:66: ( teardown )? if ( stream_teardown.hasNext() ) { adaptor.addChild(root_1, stream_teardown.nextTree()); } stream_teardown.reset(); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:117:76: ( test )* while ( stream_test.hasNext() ) { adaptor.addChild(root_1, stream_test.nextTree()); } stream_test.reset(); adaptor.addChild(root_0, root_1); } } retval.tree = root_0; } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch ( RecognitionException e) { reportError( e ); } finally { } return retval; } // $ANTLR end "compilation_unit" public static class test_case_statement_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "test_case_statement" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:123:1: test_case_statement : test_case_key name= STRING ; public final NodeTestDSLParser.test_case_statement_return test_case_statement() throws RecognitionException { NodeTestDSLParser.test_case_statement_return retval = new NodeTestDSLParser.test_case_statement_return(); retval.start = input.LT(1); Object root_0 = null; Token name=null; NodeTestDSLParser.test_case_key_return test_case_key7 = null; Object name_tree=null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:124:2: ( test_case_key name= STRING ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:124:5: test_case_key name= STRING { root_0 = (Object)adaptor.nil(); pushFollow(FOLLOW_test_case_key_in_test_case_statement172); test_case_key7=test_case_key(); state._fsp--; root_0 = (Object)adaptor.becomeRoot(test_case_key7.getTree(), root_0); name=(Token)match(input,STRING,FOLLOW_STRING_in_test_case_statement177); name_tree = (Object)adaptor.create(name); adaptor.addChild(root_0, name_tree); } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "test_case_statement" public static class import_statement_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "import_statement" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:127:1: import_statement : import_key import_target SEMI_COLON ; public final NodeTestDSLParser.import_statement_return import_statement() throws RecognitionException { NodeTestDSLParser.import_statement_return retval = new NodeTestDSLParser.import_statement_return(); retval.start = input.LT(1); Object root_0 = null; Token SEMI_COLON10=null; NodeTestDSLParser.import_key_return import_key8 = null; NodeTestDSLParser.import_target_return import_target9 = null; Object SEMI_COLON10_tree=null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:128:2: ( import_key import_target SEMI_COLON ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:128:4: import_key import_target SEMI_COLON { root_0 = (Object)adaptor.nil(); pushFollow(FOLLOW_import_key_in_import_statement190); import_key8=import_key(); state._fsp--; root_0 = (Object)adaptor.becomeRoot(import_key8.getTree(), root_0); pushFollow(FOLLOW_import_target_in_import_statement193); import_target9=import_target(); state._fsp--; adaptor.addChild(root_0, import_target9.getTree()); SEMI_COLON10=(Token)match(input,SEMI_COLON,FOLLOW_SEMI_COLON_in_import_statement195); } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "import_statement" public static class setup_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "setup" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:131:1: setup : setup_key ( step )* ; public final NodeTestDSLParser.setup_return setup() throws RecognitionException { NodeTestDSLParser.setup_return retval = new NodeTestDSLParser.setup_return(); retval.start = input.LT(1); Object root_0 = null; NodeTestDSLParser.setup_key_return setup_key11 = null; NodeTestDSLParser.step_return step12 = null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:132:2: ( setup_key ( step )* ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:132:4: setup_key ( step )* { root_0 = (Object)adaptor.nil(); pushFollow(FOLLOW_setup_key_in_setup209); setup_key11=setup_key(); state._fsp--; root_0 = (Object)adaptor.becomeRoot(setup_key11.getTree(), root_0); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:132:15: ( step )* loop5: do { int alt5=2; int LA5_0 = input.LA(1); if ( (LA5_0==ID) ) { int LA5_1 = input.LA(2); if ( (LA5_1==COLON) ) { alt5=1; } } switch (alt5) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:132:15: step { pushFollow(FOLLOW_step_in_setup212); step12=step(); state._fsp--; adaptor.addChild(root_0, step12.getTree()); } break; default : break loop5; } } while (true); } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "setup" public static class teardown_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "teardown" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:135:1: teardown : teardown_key ( step )* ; public final NodeTestDSLParser.teardown_return teardown() throws RecognitionException { NodeTestDSLParser.teardown_return retval = new NodeTestDSLParser.teardown_return(); retval.start = input.LT(1); Object root_0 = null; NodeTestDSLParser.teardown_key_return teardown_key13 = null; NodeTestDSLParser.step_return step14 = null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:136:2: ( teardown_key ( step )* ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:136:4: teardown_key ( step )* { root_0 = (Object)adaptor.nil(); pushFollow(FOLLOW_teardown_key_in_teardown225); teardown_key13=teardown_key(); state._fsp--; root_0 = (Object)adaptor.becomeRoot(teardown_key13.getTree(), root_0); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:136:18: ( step )* loop6: do { int alt6=2; int LA6_0 = input.LA(1); if ( (LA6_0==ID) ) { int LA6_1 = input.LA(2); if ( (LA6_1==COLON) ) { alt6=1; } } switch (alt6) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:136:18: step { pushFollow(FOLLOW_step_in_teardown228); step14=step(); state._fsp--; adaptor.addChild(root_0, step14.getTree()); } break; default : break loop6; } } while (true); } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "teardown" public static class test_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "test" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:139:1: test : test_key name= STRING ( step )* ; public final NodeTestDSLParser.test_return test() throws RecognitionException { NodeTestDSLParser.test_return retval = new NodeTestDSLParser.test_return(); retval.start = input.LT(1); Object root_0 = null; Token name=null; NodeTestDSLParser.test_key_return test_key15 = null; NodeTestDSLParser.step_return step16 = null; Object name_tree=null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:140:2: ( test_key name= STRING ( step )* ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:140:4: test_key name= STRING ( step )* { root_0 = (Object)adaptor.nil(); pushFollow(FOLLOW_test_key_in_test242); test_key15=test_key(); state._fsp--; root_0 = (Object)adaptor.becomeRoot(test_key15.getTree(), root_0); name=(Token)match(input,STRING,FOLLOW_STRING_in_test247); name_tree = (Object)adaptor.create(name); adaptor.addChild(root_0, name_tree); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:140:26: ( step )* loop7: do { int alt7=2; int LA7_0 = input.LA(1); if ( (LA7_0==ID) ) { int LA7_2 = input.LA(2); if ( (LA7_2==COLON) ) { alt7=1; } } switch (alt7) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:140:26: step { pushFollow(FOLLOW_step_in_test249); step16=step(); state._fsp--; adaptor.addChild(root_0, step16.getTree()); } break; default : break loop7; } } while (true); } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "test" public static class step_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "step" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:143:1: step : ID COLON ( params SEMI_COLON )+ ; public final NodeTestDSLParser.step_return step() throws RecognitionException { NodeTestDSLParser.step_return retval = new NodeTestDSLParser.step_return(); retval.start = input.LT(1); Object root_0 = null; Token ID17=null; Token COLON18=null; Token SEMI_COLON20=null; NodeTestDSLParser.params_return params19 = null; Object ID17_tree=null; Object COLON18_tree=null; Object SEMI_COLON20_tree=null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:144:2: ( ID COLON ( params SEMI_COLON )+ ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:144:4: ID COLON ( params SEMI_COLON )+ { root_0 = (Object)adaptor.nil(); ID17=(Token)match(input,ID,FOLLOW_ID_in_step263); ID17_tree = (Object)adaptor.create(ID17); root_0 = (Object)adaptor.becomeRoot(ID17_tree, root_0); COLON18=(Token)match(input,COLON,FOLLOW_COLON_in_step266); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:144:15: ( params SEMI_COLON )+ int cnt8=0; loop8: do { int alt8=2; alt8 = dfa8.predict(input); switch (alt8) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:144:17: params SEMI_COLON { pushFollow(FOLLOW_params_in_step271); params19=params(); state._fsp--; adaptor.addChild(root_0, params19.getTree()); SEMI_COLON20=(Token)match(input,SEMI_COLON,FOLLOW_SEMI_COLON_in_step273); } break; default : if ( cnt8 >= 1 ) break loop8; EarlyExitException eee = new EarlyExitException(8, input); throw eee; } cnt8++; } while (true); } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "step" public static class params_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "params" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:147:1: params : param_chunk ( COMMA param_chunk )* -> ^( VT_PARAMS ( param_chunk )+ ) ; public final NodeTestDSLParser.params_return params() throws RecognitionException { NodeTestDSLParser.params_return retval = new NodeTestDSLParser.params_return(); retval.start = input.LT(1); Object root_0 = null; Token COMMA22=null; NodeTestDSLParser.param_chunk_return param_chunk21 = null; NodeTestDSLParser.param_chunk_return param_chunk23 = null; Object COMMA22_tree=null; RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); RewriteRuleSubtreeStream stream_param_chunk=new RewriteRuleSubtreeStream(adaptor,"rule param_chunk"); try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:148:2: ( param_chunk ( COMMA param_chunk )* -> ^( VT_PARAMS ( param_chunk )+ ) ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:148:4: param_chunk ( COMMA param_chunk )* { pushFollow(FOLLOW_param_chunk_in_params290); param_chunk21=param_chunk(); state._fsp--; stream_param_chunk.add(param_chunk21.getTree()); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:148:16: ( COMMA param_chunk )* loop9: do { int alt9=2; int LA9_0 = input.LA(1); if ( (LA9_0==COMMA) ) { alt9=1; } switch (alt9) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:148:17: COMMA param_chunk { COMMA22=(Token)match(input,COMMA,FOLLOW_COMMA_in_params293); stream_COMMA.add(COMMA22); pushFollow(FOLLOW_param_chunk_in_params295); param_chunk23=param_chunk(); state._fsp--; stream_param_chunk.add(param_chunk23.getTree()); } break; default : break loop9; } } while (true); // AST REWRITE // elements: param_chunk // token labels: // rule labels: retval // token list labels: // rule list labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); // 149:2: -> ^( VT_PARAMS ( param_chunk )+ ) { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:149:6: ^( VT_PARAMS ( param_chunk )+ ) { Object root_1 = (Object)adaptor.nil(); root_1 = (Object)adaptor.becomeRoot((Object)adaptor.create(VT_PARAMS, "VT_PARAMS"), root_1); if ( !(stream_param_chunk.hasNext()) ) { throw new RewriteEarlyExitException(); } while ( stream_param_chunk.hasNext() ) { adaptor.addChild(root_1, stream_param_chunk.nextTree()); } stream_param_chunk.reset(); adaptor.addChild(root_0, root_1); } } retval.tree = root_0; } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "params" public static class param_chunk_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "param_chunk" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:152:1: param_chunk : c= param_sequence -> VT_CHUNK[$c.text] ; public final NodeTestDSLParser.param_chunk_return param_chunk() throws RecognitionException { NodeTestDSLParser.param_chunk_return retval = new NodeTestDSLParser.param_chunk_return(); retval.start = input.LT(1); Object root_0 = null; NodeTestDSLParser.param_sequence_return c = null; RewriteRuleSubtreeStream stream_param_sequence=new RewriteRuleSubtreeStream(adaptor,"rule param_sequence"); try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:153:2: (c= param_sequence -> VT_CHUNK[$c.text] ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:153:4: c= param_sequence { pushFollow(FOLLOW_param_sequence_in_param_chunk324); c=param_sequence(); state._fsp--; stream_param_sequence.add(c.getTree()); // AST REWRITE // elements: // token labels: // rule labels: retval // token list labels: // rule list labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); // 154:2: -> VT_CHUNK[$c.text] { adaptor.addChild(root_0, (Object)adaptor.create(VT_CHUNK, (c!=null?input.toString(c.start,c.stop):null))); } retval.tree = root_0; } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "param_chunk" public static class param_sequence_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "param_sequence" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:157:1: param_sequence : ( param )+ ; public final NodeTestDSLParser.param_sequence_return param_sequence() throws RecognitionException { NodeTestDSLParser.param_sequence_return retval = new NodeTestDSLParser.param_sequence_return(); retval.start = input.LT(1); Object root_0 = null; NodeTestDSLParser.param_return param24 = null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:158:2: ( ( param )+ ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:158:4: ( param )+ { root_0 = (Object)adaptor.nil(); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:158:4: ( param )+ int cnt10=0; loop10: do { int alt10=2; int LA10_0 = input.LA(1); if ( (LA10_0==STRING||LA10_0==ID||(LA10_0>=INT && LA10_0<=LEFT_SQUARE)||LA10_0==LEFT_PAREN) ) { alt10=1; } switch (alt10) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:158:4: param { pushFollow(FOLLOW_param_in_param_sequence343); param24=param(); state._fsp--; adaptor.addChild(root_0, param24.getTree()); } break; default : if ( cnt10 >= 1 ) break loop10; EarlyExitException eee = new EarlyExitException(10, input); throw eee; } cnt10++; } while (true); } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "param_sequence" public static class param_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "param" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:161:1: param : ( ID | STRING | INT | FLOAT | MISC | STAR | square_chunk | paren_chunk | DOT ) ; public final NodeTestDSLParser.param_return param() throws RecognitionException { NodeTestDSLParser.param_return retval = new NodeTestDSLParser.param_return(); retval.start = input.LT(1); Object root_0 = null; Token ID25=null; Token STRING26=null; Token INT27=null; Token FLOAT28=null; Token MISC29=null; Token STAR30=null; Token DOT33=null; NodeTestDSLParser.square_chunk_return square_chunk31 = null; NodeTestDSLParser.paren_chunk_return paren_chunk32 = null; Object ID25_tree=null; Object STRING26_tree=null; Object INT27_tree=null; Object FLOAT28_tree=null; Object MISC29_tree=null; Object STAR30_tree=null; Object DOT33_tree=null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:162:2: ( ( ID | STRING | INT | FLOAT | MISC | STAR | square_chunk | paren_chunk | DOT ) ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:162:4: ( ID | STRING | INT | FLOAT | MISC | STAR | square_chunk | paren_chunk | DOT ) { root_0 = (Object)adaptor.nil(); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:162:4: ( ID | STRING | INT | FLOAT | MISC | STAR | square_chunk | paren_chunk | DOT ) int alt11=9; switch ( input.LA(1) ) { case ID: { alt11=1; } break; case STRING: { alt11=2; } break; case INT: { alt11=3; } break; case FLOAT: { alt11=4; } break; case MISC: { alt11=5; } break; case STAR: { alt11=6; } break; case LEFT_SQUARE: { alt11=7; } break; case LEFT_PAREN: { alt11=8; } break; case DOT: { alt11=9; } break; default: NoViableAltException nvae = new NoViableAltException("", 11, 0, input); throw nvae; } switch (alt11) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:162:6: ID { ID25=(Token)match(input,ID,FOLLOW_ID_in_param359); ID25_tree = (Object)adaptor.create(ID25); adaptor.addChild(root_0, ID25_tree); } break; case 2 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:163:5: STRING { STRING26=(Token)match(input,STRING,FOLLOW_STRING_in_param366); STRING26_tree = (Object)adaptor.create(STRING26); adaptor.addChild(root_0, STRING26_tree); } break; case 3 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:164:5: INT { INT27=(Token)match(input,INT,FOLLOW_INT_in_param372); INT27_tree = (Object)adaptor.create(INT27); adaptor.addChild(root_0, INT27_tree); } break; case 4 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:165:5: FLOAT { FLOAT28=(Token)match(input,FLOAT,FOLLOW_FLOAT_in_param378); FLOAT28_tree = (Object)adaptor.create(FLOAT28); adaptor.addChild(root_0, FLOAT28_tree); } break; case 5 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:166:5: MISC { MISC29=(Token)match(input,MISC,FOLLOW_MISC_in_param384); MISC29_tree = (Object)adaptor.create(MISC29); adaptor.addChild(root_0, MISC29_tree); } break; case 6 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:167:5: STAR { STAR30=(Token)match(input,STAR,FOLLOW_STAR_in_param390); STAR30_tree = (Object)adaptor.create(STAR30); adaptor.addChild(root_0, STAR30_tree); } break; case 7 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:168:5: square_chunk { pushFollow(FOLLOW_square_chunk_in_param396); square_chunk31=square_chunk(); state._fsp--; adaptor.addChild(root_0, square_chunk31.getTree()); } break; case 8 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:169:5: paren_chunk { pushFollow(FOLLOW_paren_chunk_in_param402); paren_chunk32=paren_chunk(); state._fsp--; adaptor.addChild(root_0, paren_chunk32.getTree()); } break; case 9 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:170:5: DOT { DOT33=(Token)match(input,DOT,FOLLOW_DOT_in_param408); DOT33_tree = (Object)adaptor.create(DOT33); adaptor.addChild(root_0, DOT33_tree); } break; } } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "param" public static class import_target_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "import_target" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:174:1: import_target : itm= import_target_matcher -> VT_QUALIFIED_ID[$itm.text] ; public final NodeTestDSLParser.import_target_return import_target() throws RecognitionException { NodeTestDSLParser.import_target_return retval = new NodeTestDSLParser.import_target_return(); retval.start = input.LT(1); Object root_0 = null; NodeTestDSLParser.import_target_matcher_return itm = null; RewriteRuleSubtreeStream stream_import_target_matcher=new RewriteRuleSubtreeStream(adaptor,"rule import_target_matcher"); try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:175:2: (itm= import_target_matcher -> VT_QUALIFIED_ID[$itm.text] ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:175:4: itm= import_target_matcher { pushFollow(FOLLOW_import_target_matcher_in_import_target428); itm=import_target_matcher(); state._fsp--; stream_import_target_matcher.add(itm.getTree()); // AST REWRITE // elements: // token labels: // rule labels: retval // token list labels: // rule list labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); // 176:2: -> VT_QUALIFIED_ID[$itm.text] { adaptor.addChild(root_0, (Object)adaptor.create(VT_QUALIFIED_ID, (itm!=null?input.toString(itm.start,itm.stop):null))); } retval.tree = root_0; } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "import_target" public static class import_target_matcher_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "import_target_matcher" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:179:1: import_target_matcher : qualified_id_matcher ( DOT STAR )? ; public final NodeTestDSLParser.import_target_matcher_return import_target_matcher() throws RecognitionException { NodeTestDSLParser.import_target_matcher_return retval = new NodeTestDSLParser.import_target_matcher_return(); retval.start = input.LT(1); Object root_0 = null; Token DOT35=null; Token STAR36=null; NodeTestDSLParser.qualified_id_matcher_return qualified_id_matcher34 = null; Object DOT35_tree=null; Object STAR36_tree=null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:180:2: ( qualified_id_matcher ( DOT STAR )? ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:180:4: qualified_id_matcher ( DOT STAR )? { root_0 = (Object)adaptor.nil(); pushFollow(FOLLOW_qualified_id_matcher_in_import_target_matcher447); qualified_id_matcher34=qualified_id_matcher(); state._fsp--; adaptor.addChild(root_0, qualified_id_matcher34.getTree()); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:180:25: ( DOT STAR )? int alt12=2; int LA12_0 = input.LA(1); if ( (LA12_0==DOT) ) { alt12=1; } switch (alt12) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:180:26: DOT STAR { DOT35=(Token)match(input,DOT,FOLLOW_DOT_in_import_target_matcher450); DOT35_tree = (Object)adaptor.create(DOT35); adaptor.addChild(root_0, DOT35_tree); STAR36=(Token)match(input,STAR,FOLLOW_STAR_in_import_target_matcher452); STAR36_tree = (Object)adaptor.create(STAR36); adaptor.addChild(root_0, STAR36_tree); } break; } } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "import_target_matcher" public static class qualified_id_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "qualified_id" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:183:1: qualified_id : qim= qualified_id_matcher -> VT_QUALIFIED_ID[$qim.text] ; public final NodeTestDSLParser.qualified_id_return qualified_id() throws RecognitionException { NodeTestDSLParser.qualified_id_return retval = new NodeTestDSLParser.qualified_id_return(); retval.start = input.LT(1); Object root_0 = null; NodeTestDSLParser.qualified_id_matcher_return qim = null; RewriteRuleSubtreeStream stream_qualified_id_matcher=new RewriteRuleSubtreeStream(adaptor,"rule qualified_id_matcher"); try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:184:2: (qim= qualified_id_matcher -> VT_QUALIFIED_ID[$qim.text] ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:184:4: qim= qualified_id_matcher { pushFollow(FOLLOW_qualified_id_matcher_in_qualified_id470); qim=qualified_id_matcher(); state._fsp--; stream_qualified_id_matcher.add(qim.getTree()); // AST REWRITE // elements: // token labels: // rule labels: retval // token list labels: // rule list labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); // 185:2: -> VT_QUALIFIED_ID[$qim.text] { adaptor.addChild(root_0, (Object)adaptor.create(VT_QUALIFIED_ID, (qim!=null?input.toString(qim.start,qim.stop):null))); } retval.tree = root_0; } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "qualified_id" public static class qualified_id_matcher_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "qualified_id_matcher" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:188:1: qualified_id_matcher : ID ( DOT ID )* ; public final NodeTestDSLParser.qualified_id_matcher_return qualified_id_matcher() throws RecognitionException { NodeTestDSLParser.qualified_id_matcher_return retval = new NodeTestDSLParser.qualified_id_matcher_return(); retval.start = input.LT(1); Object root_0 = null; Token ID37=null; Token DOT38=null; Token ID39=null; Object ID37_tree=null; Object DOT38_tree=null; Object ID39_tree=null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:189:2: ( ID ( DOT ID )* ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:189:4: ID ( DOT ID )* { root_0 = (Object)adaptor.nil(); ID37=(Token)match(input,ID,FOLLOW_ID_in_qualified_id_matcher488); ID37_tree = (Object)adaptor.create(ID37); adaptor.addChild(root_0, ID37_tree); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:189:7: ( DOT ID )* loop13: do { int alt13=2; int LA13_0 = input.LA(1); if ( (LA13_0==DOT) ) { int LA13_1 = input.LA(2); if ( (LA13_1==ID) ) { alt13=1; } } switch (alt13) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:189:8: DOT ID { DOT38=(Token)match(input,DOT,FOLLOW_DOT_in_qualified_id_matcher491); DOT38_tree = (Object)adaptor.create(DOT38); adaptor.addChild(root_0, DOT38_tree); ID39=(Token)match(input,ID,FOLLOW_ID_in_qualified_id_matcher493); ID39_tree = (Object)adaptor.create(ID39); adaptor.addChild(root_0, ID39_tree); } break; default : break loop13; } } while (true); } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "qualified_id_matcher" public static class square_chunk_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "square_chunk" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:192:1: square_chunk : cm= collection_matcher ; public final NodeTestDSLParser.square_chunk_return square_chunk() throws RecognitionException { NodeTestDSLParser.square_chunk_return retval = new NodeTestDSLParser.square_chunk_return(); retval.start = input.LT(1); Object root_0 = null; NodeTestDSLParser.collection_matcher_return cm = null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:193:2: (cm= collection_matcher ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:193:4: cm= collection_matcher { root_0 = (Object)adaptor.nil(); pushFollow(FOLLOW_collection_matcher_in_square_chunk511); cm=collection_matcher(); state._fsp--; adaptor.addChild(root_0, cm.getTree()); } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "square_chunk" public static class collection_matcher_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "collection_matcher" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:196:1: collection_matcher : LEFT_SQUARE ( params )? RIGHT_SQUARE ; public final NodeTestDSLParser.collection_matcher_return collection_matcher() throws RecognitionException { NodeTestDSLParser.collection_matcher_return retval = new NodeTestDSLParser.collection_matcher_return(); retval.start = input.LT(1); Object root_0 = null; Token LEFT_SQUARE40=null; Token RIGHT_SQUARE42=null; NodeTestDSLParser.params_return params41 = null; Object LEFT_SQUARE40_tree=null; Object RIGHT_SQUARE42_tree=null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:197:2: ( LEFT_SQUARE ( params )? RIGHT_SQUARE ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:197:4: LEFT_SQUARE ( params )? RIGHT_SQUARE { root_0 = (Object)adaptor.nil(); LEFT_SQUARE40=(Token)match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_collection_matcher524); LEFT_SQUARE40_tree = (Object)adaptor.create(LEFT_SQUARE40); adaptor.addChild(root_0, LEFT_SQUARE40_tree); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:197:16: ( params )? int alt14=2; int LA14_0 = input.LA(1); if ( (LA14_0==STRING||LA14_0==ID||(LA14_0>=INT && LA14_0<=LEFT_SQUARE)||LA14_0==LEFT_PAREN) ) { alt14=1; } switch (alt14) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:197:16: params { pushFollow(FOLLOW_params_in_collection_matcher526); params41=params(); state._fsp--; adaptor.addChild(root_0, params41.getTree()); } break; } RIGHT_SQUARE42=(Token)match(input,RIGHT_SQUARE,FOLLOW_RIGHT_SQUARE_in_collection_matcher529); RIGHT_SQUARE42_tree = (Object)adaptor.create(RIGHT_SQUARE42); adaptor.addChild(root_0, RIGHT_SQUARE42_tree); } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "collection_matcher" public static class paren_chunk_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "paren_chunk" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:200:1: paren_chunk : cm= paren_matcher ; public final NodeTestDSLParser.paren_chunk_return paren_chunk() throws RecognitionException { NodeTestDSLParser.paren_chunk_return retval = new NodeTestDSLParser.paren_chunk_return(); retval.start = input.LT(1); Object root_0 = null; NodeTestDSLParser.paren_matcher_return cm = null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:201:2: (cm= paren_matcher ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:201:4: cm= paren_matcher { root_0 = (Object)adaptor.nil(); pushFollow(FOLLOW_paren_matcher_in_paren_chunk544); cm=paren_matcher(); state._fsp--; adaptor.addChild(root_0, cm.getTree()); } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "paren_chunk" public static class paren_matcher_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "paren_matcher" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:204:1: paren_matcher : LEFT_PAREN ( params )? RIGHT_PAREN ; public final NodeTestDSLParser.paren_matcher_return paren_matcher() throws RecognitionException { NodeTestDSLParser.paren_matcher_return retval = new NodeTestDSLParser.paren_matcher_return(); retval.start = input.LT(1); Object root_0 = null; Token LEFT_PAREN43=null; Token RIGHT_PAREN45=null; NodeTestDSLParser.params_return params44 = null; Object LEFT_PAREN43_tree=null; Object RIGHT_PAREN45_tree=null; try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:205:2: ( LEFT_PAREN ( params )? RIGHT_PAREN ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:205:4: LEFT_PAREN ( params )? RIGHT_PAREN { root_0 = (Object)adaptor.nil(); LEFT_PAREN43=(Token)match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_paren_matcher557); LEFT_PAREN43_tree = (Object)adaptor.create(LEFT_PAREN43); adaptor.addChild(root_0, LEFT_PAREN43_tree); // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:205:15: ( params )? int alt15=2; int LA15_0 = input.LA(1); if ( (LA15_0==STRING||LA15_0==ID||(LA15_0>=INT && LA15_0<=LEFT_SQUARE)||LA15_0==LEFT_PAREN) ) { alt15=1; } switch (alt15) { case 1 : // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:205:15: params { pushFollow(FOLLOW_params_in_paren_matcher559); params44=params(); state._fsp--; adaptor.addChild(root_0, params44.getTree()); } break; } RIGHT_PAREN45=(Token)match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_paren_matcher562); RIGHT_PAREN45_tree = (Object)adaptor.create(RIGHT_PAREN45); adaptor.addChild(root_0, RIGHT_PAREN45_tree); } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "paren_matcher" public static class test_case_key_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "test_case_key" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:208:1: test_case_key : {...}? =>id= ID -> VK_TEST_CASE[$id] ; public final NodeTestDSLParser.test_case_key_return test_case_key() throws RecognitionException { NodeTestDSLParser.test_case_key_return retval = new NodeTestDSLParser.test_case_key_return(); retval.start = input.LT(1); Object root_0 = null; Token id=null; Object id_tree=null; RewriteRuleTokenStream stream_ID=new RewriteRuleTokenStream(adaptor,"token ID"); try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:209:2: ({...}? =>id= ID -> VK_TEST_CASE[$id] ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:209:4: {...}? =>id= ID { if ( !(((validateIdentifierKey("TestCase")))) ) { throw new FailedPredicateException(input, "test_case_key", "(validateIdentifierKey(\"TestCase\"))"); } id=(Token)match(input,ID,FOLLOW_ID_in_test_case_key581); stream_ID.add(id); // AST REWRITE // elements: // token labels: // rule labels: retval // token list labels: // rule list labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); // 210:3: -> VK_TEST_CASE[$id] { adaptor.addChild(root_0, (Object)adaptor.create(VK_TEST_CASE, id)); } retval.tree = root_0; } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "test_case_key" public static class import_key_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "import_key" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:213:1: import_key : {...}? =>id= ID -> VK_IMPORT[$id] ; public final NodeTestDSLParser.import_key_return import_key() throws RecognitionException { NodeTestDSLParser.import_key_return retval = new NodeTestDSLParser.import_key_return(); retval.start = input.LT(1); Object root_0 = null; Token id=null; Object id_tree=null; RewriteRuleTokenStream stream_ID=new RewriteRuleTokenStream(adaptor,"token ID"); try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:214:2: ({...}? =>id= ID -> VK_IMPORT[$id] ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:214:4: {...}? =>id= ID { if ( !(((validateIdentifierKey("import")))) ) { throw new FailedPredicateException(input, "import_key", "(validateIdentifierKey(\"import\"))"); } id=(Token)match(input,ID,FOLLOW_ID_in_import_key605); stream_ID.add(id); // AST REWRITE // elements: // token labels: // rule labels: retval // token list labels: // rule list labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); // 215:3: -> VK_IMPORT[$id] { adaptor.addChild(root_0, (Object)adaptor.create(VK_IMPORT, id)); } retval.tree = root_0; } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "import_key" public static class setup_key_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "setup_key" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:218:1: setup_key : {...}? =>id= ID -> VK_SETUP[$id] ; public final NodeTestDSLParser.setup_key_return setup_key() throws RecognitionException { NodeTestDSLParser.setup_key_return retval = new NodeTestDSLParser.setup_key_return(); retval.start = input.LT(1); Object root_0 = null; Token id=null; Object id_tree=null; RewriteRuleTokenStream stream_ID=new RewriteRuleTokenStream(adaptor,"token ID"); try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:219:2: ({...}? =>id= ID -> VK_SETUP[$id] ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:219:4: {...}? =>id= ID { if ( !(((validateIdentifierKey("Setup")))) ) { throw new FailedPredicateException(input, "setup_key", "(validateIdentifierKey(\"Setup\"))"); } id=(Token)match(input,ID,FOLLOW_ID_in_setup_key629); stream_ID.add(id); // AST REWRITE // elements: // token labels: // rule labels: retval // token list labels: // rule list labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); // 220:3: -> VK_SETUP[$id] { adaptor.addChild(root_0, (Object)adaptor.create(VK_SETUP, id)); } retval.tree = root_0; } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "setup_key" public static class teardown_key_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "teardown_key" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:223:1: teardown_key : {...}? =>id= ID -> VK_TEARDOWN[$id] ; public final NodeTestDSLParser.teardown_key_return teardown_key() throws RecognitionException { NodeTestDSLParser.teardown_key_return retval = new NodeTestDSLParser.teardown_key_return(); retval.start = input.LT(1); Object root_0 = null; Token id=null; Object id_tree=null; RewriteRuleTokenStream stream_ID=new RewriteRuleTokenStream(adaptor,"token ID"); try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:224:2: ({...}? =>id= ID -> VK_TEARDOWN[$id] ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:224:4: {...}? =>id= ID { if ( !(((validateIdentifierKey("TearDown")))) ) { throw new FailedPredicateException(input, "teardown_key", "(validateIdentifierKey(\"TearDown\"))"); } id=(Token)match(input,ID,FOLLOW_ID_in_teardown_key653); stream_ID.add(id); // AST REWRITE // elements: // token labels: // rule labels: retval // token list labels: // rule list labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); // 225:3: -> VK_TEARDOWN[$id] { adaptor.addChild(root_0, (Object)adaptor.create(VK_TEARDOWN, id)); } retval.tree = root_0; } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "teardown_key" public static class test_key_return extends ParserRuleReturnScope { Object tree; public Object getTree() { return tree; } }; // $ANTLR start "test_key" // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:228:1: test_key : {...}? =>id= ID -> VK_TEST[$id] ; public final NodeTestDSLParser.test_key_return test_key() throws RecognitionException { NodeTestDSLParser.test_key_return retval = new NodeTestDSLParser.test_key_return(); retval.start = input.LT(1); Object root_0 = null; Token id=null; Object id_tree=null; RewriteRuleTokenStream stream_ID=new RewriteRuleTokenStream(adaptor,"token ID"); try { // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:229:2: ({...}? =>id= ID -> VK_TEST[$id] ) // src/test/resources/org/drools/reteoo/test/parser/NodeTestDSL.g:229:4: {...}? =>id= ID { if ( !(((validateIdentifierKey("Test")))) ) { throw new FailedPredicateException(input, "test_key", "(validateIdentifierKey(\"Test\"))"); } id=(Token)match(input,ID,FOLLOW_ID_in_test_key677); stream_ID.add(id); // AST REWRITE // elements: // token labels: // rule labels: retval // token list labels: // rule list labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"token retval",retval!=null?retval.tree:null); root_0 = (Object)adaptor.nil(); // 230:3: -> VK_TEST[$id] { adaptor.addChild(root_0, (Object)adaptor.create(VK_TEST, id)); } retval.tree = root_0; } retval.stop = input.LT(-1); retval.tree = (Object)adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input,re); retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; } // $ANTLR end "test_key" // Delegated rules protected DFA1 dfa1 = new DFA1(this); protected DFA8 dfa8 = new DFA8(this); static final String DFA1_eotS = "\12\uffff"; static final String DFA1_eofS = "\1\2\1\5\1\uffff\1\11\6\uffff"; static final String DFA1_minS = "\1\20\1\16\1\uffff\1\16\6\uffff"; static final String DFA1_maxS = "\2\20\1\uffff\1\27\6\uffff"; static final String DFA1_acceptS = "\2\uffff\1\2\1\uffff\4\2\1\1\1\2"; static final String DFA1_specialS = "\1\0\1\1\1\uffff\1\2\6\uffff}>"; static final String[] DFA1_transitionS = { "\1\1", "\1\4\1\uffff\1\3", "", "\1\7\1\10\1\11\1\6\5\uffff\1\10", "", "", "", "", "", "" }; static final short[] DFA1_eot = DFA.unpackEncodedString(DFA1_eotS); static final short[] DFA1_eof = DFA.unpackEncodedString(DFA1_eofS); static final char[] DFA1_min = DFA.unpackEncodedStringToUnsignedChars(DFA1_minS); static final char[] DFA1_max = DFA.unpackEncodedStringToUnsignedChars(DFA1_maxS); static final short[] DFA1_accept = DFA.unpackEncodedString(DFA1_acceptS); static final short[] DFA1_special = DFA.unpackEncodedString(DFA1_specialS); static final short[][] DFA1_transition; static { int numStates = DFA1_transitionS.length; DFA1_transition = new short[numStates][]; for (int i=0; i<numStates; i++) { DFA1_transition[i] = DFA.unpackEncodedString(DFA1_transitionS[i]); } } class DFA1 extends DFA { public DFA1(BaseRecognizer recognizer) { this.recognizer = recognizer; this.decisionNumber = 1; this.eot = DFA1_eot; this.eof = DFA1_eof; this.min = DFA1_min; this.max = DFA1_max; this.accept = DFA1_accept; this.special = DFA1_special; this.transition = DFA1_transition; } public String getDescription() { return "()* loopback of 112:3: ( import_statement )*"; } public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { TokenStream input = (TokenStream)_input; int _s = s; switch ( s ) { case 0 : int LA1_0 = input.LA(1); int index1_0 = input.index(); input.rewind(); s = -1; if ( (LA1_0==ID) && ((((validateIdentifierKey("Setup")))||((validateIdentifierKey("Test")))||((validateIdentifierKey("import")))||((validateIdentifierKey("TearDown")))))) {s = 1;} else if ( (LA1_0==EOF) ) {s = 2;} input.seek(index1_0); if ( s>=0 ) return s; break; case 1 : int LA1_1 = input.LA(1); int index1_1 = input.index(); input.rewind(); s = -1; if ( (LA1_1==ID) && ((((validateIdentifierKey("Setup")))||((validateIdentifierKey("import")))||((validateIdentifierKey("TearDown")))))) {s = 3;} else if ( (LA1_1==STRING) && (((validateIdentifierKey("Test"))))) {s = 4;} else if ( (LA1_1==EOF) && ((((validateIdentifierKey("Setup")))||((validateIdentifierKey("TearDown")))))) {s = 5;} input.seek(index1_1); if ( s>=0 ) return s; break; case 2 : int LA1_3 = input.LA(1); int index1_3 = input.index(); input.rewind(); s = -1; if ( (LA1_3==COLON) && ((((validateIdentifierKey("Setup")))||((validateIdentifierKey("TearDown")))))) {s = 6;} else if ( (LA1_3==STRING) && ((((validateIdentifierKey("Setup")))||((validateIdentifierKey("TearDown")))))) {s = 7;} else if ( (LA1_3==SEMI_COLON||LA1_3==DOT) && (((validateIdentifierKey("import"))))) {s = 8;} else if ( (LA1_3==EOF||LA1_3==ID) && (((validateIdentifierKey("Setup"))))) {s = 9;} input.seek(index1_3); if ( s>=0 ) return s; break; } NoViableAltException nvae = new NoViableAltException(getDescription(), 1, _s, input); error(nvae); throw nvae; } } static final String DFA8_eotS = "\16\uffff"; static final String DFA8_eofS = "\1\2\1\6\2\uffff\1\10\5\uffff\1\6\3\uffff"; static final String DFA8_minS = "\2\16\2\uffff\2\16\1\uffff\1\16\2\uffff\1\16\1\uffff\1\16\1\uffff"; static final String DFA8_maxS = "\2\32\2\uffff\2\32\1\uffff\1\32\2\uffff\1\32\1\uffff\1\32\1\uffff"; static final String DFA8_acceptS = "\2\uffff\1\2\1\1\2\uffff\1\2\1\uffff\2\2\1\uffff\1\2\1\uffff\1"+ "\2"; static final String DFA8_specialS = "\1\uffff\1\5\2\uffff\1\3\1\1\1\uffff\1\2\2\uffff\1\4\1\uffff\1"+ "\0\1\uffff}>"; static final String[] DFA8_transitionS = { "\1\3\1\uffff\1\1\2\uffff\6\3\1\uffff\1\3", "\1\4\1\3\1\5\1\2\7\3\1\uffff\1\3", "", "", "\2\3\1\7\1\uffff\7\3\1\uffff\1\3", "\1\12\2\3\1\11\7\3\1\uffff\1\3", "", "\1\4\2\3\1\13\7\3\1\uffff\1\3", "", "", "\2\3\1\14\1\uffff\7\3\1\uffff\1\3", "", "\1\12\2\3\1\15\7\3\1\uffff\1\3", "" }; static final short[] DFA8_eot = DFA.unpackEncodedString(DFA8_eotS); static final short[] DFA8_eof = DFA.unpackEncodedString(DFA8_eofS); static final char[] DFA8_min = DFA.unpackEncodedStringToUnsignedChars(DFA8_minS); static final char[] DFA8_max = DFA.unpackEncodedStringToUnsignedChars(DFA8_maxS); static final short[] DFA8_accept = DFA.unpackEncodedString(DFA8_acceptS); static final short[] DFA8_special = DFA.unpackEncodedString(DFA8_specialS); static final short[][] DFA8_transition; static { int numStates = DFA8_transitionS.length; DFA8_transition = new short[numStates][]; for (int i=0; i<numStates; i++) { DFA8_transition[i] = DFA.unpackEncodedString(DFA8_transitionS[i]); } } class DFA8 extends DFA { public DFA8(BaseRecognizer recognizer) { this.recognizer = recognizer; this.decisionNumber = 8; this.eot = DFA8_eot; this.eof = DFA8_eof; this.min = DFA8_min; this.max = DFA8_max; this.accept = DFA8_accept; this.special = DFA8_special; this.transition = DFA8_transition; } public String getDescription() { return "()+ loopback of 144:15: ( params SEMI_COLON )+"; } public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { TokenStream input = (TokenStream)_input; int _s = s; switch ( s ) { case 0 : int LA8_12 = input.LA(1); int index8_12 = input.index(); input.rewind(); s = -1; if ( (LA8_12==COLON) && (((validateIdentifierKey("TearDown"))))) {s = 13;} else if ( (LA8_12==STRING) ) {s = 10;} else if ( ((LA8_12>=SEMI_COLON && LA8_12<=ID)||(LA8_12>=COMMA && LA8_12<=LEFT_SQUARE)||LA8_12==LEFT_PAREN) ) {s = 3;} input.seek(index8_12); if ( s>=0 ) return s; break; case 1 : int LA8_5 = input.LA(1); int index8_5 = input.index(); input.rewind(); s = -1; if ( (LA8_5==COLON) && (((validateIdentifierKey("TearDown"))))) {s = 9;} else if ( (LA8_5==STRING) ) {s = 10;} else if ( ((LA8_5>=SEMI_COLON && LA8_5<=ID)||(LA8_5>=COMMA && LA8_5<=LEFT_SQUARE)||LA8_5==LEFT_PAREN) ) {s = 3;} input.seek(index8_5); if ( s>=0 ) return s; break; case 2 : int LA8_7 = input.LA(1); int index8_7 = input.index(); input.rewind(); s = -1; if ( (LA8_7==COLON) && (((validateIdentifierKey("Test"))))) {s = 11;} else if ( (LA8_7==STRING) ) {s = 4;} else if ( ((LA8_7>=SEMI_COLON && LA8_7<=ID)||(LA8_7>=COMMA && LA8_7<=LEFT_SQUARE)||LA8_7==LEFT_PAREN) ) {s = 3;} input.seek(index8_7); if ( s>=0 ) return s; break; case 3 : int LA8_4 = input.LA(1); int index8_4 = input.index(); input.rewind(); s = -1; if ( (LA8_4==ID) ) {s = 7;} else if ( (LA8_4==EOF) && (((validateIdentifierKey("Test"))))) {s = 8;} else if ( ((LA8_4>=STRING && LA8_4<=SEMI_COLON)||(LA8_4>=COMMA && LA8_4<=LEFT_SQUARE)||LA8_4==LEFT_PAREN) ) {s = 3;} input.seek(index8_4); if ( s>=0 ) return s; break; case 4 : int LA8_10 = input.LA(1); int index8_10 = input.index(); input.rewind(); s = -1; if ( (LA8_10==ID) ) {s = 12;} else if ( (LA8_10==EOF) && (((validateIdentifierKey("TearDown"))))) {s = 6;} else if ( ((LA8_10>=STRING && LA8_10<=SEMI_COLON)||(LA8_10>=COMMA && LA8_10<=LEFT_SQUARE)||LA8_10==LEFT_PAREN) ) {s = 3;} input.seek(index8_10); if ( s>=0 ) return s; break; case 5 : int LA8_1 = input.LA(1); int index8_1 = input.index(); input.rewind(); s = -1; if ( (LA8_1==COLON) ) {s = 2;} else if ( (LA8_1==STRING) ) {s = 4;} else if ( (LA8_1==SEMI_COLON||(LA8_1>=COMMA && LA8_1<=LEFT_SQUARE)||LA8_1==LEFT_PAREN) ) {s = 3;} else if ( (LA8_1==ID) ) {s = 5;} else if ( (LA8_1==EOF) && (((validateIdentifierKey("TearDown"))))) {s = 6;} input.seek(index8_1); if ( s>=0 ) return s; break; } NoViableAltException nvae = new NoViableAltException(getDescription(), 8, _s, input); error(nvae); throw nvae; } } public static final BitSet FOLLOW_test_case_statement_in_compilation_unit107 = new BitSet(new long[]{0x0000000000010000L}); public static final BitSet FOLLOW_import_statement_in_compilation_unit111 = new BitSet(new long[]{0x0000000000010000L}); public static final BitSet FOLLOW_setup_in_compilation_unit116 = new BitSet(new long[]{0x0000000000010000L}); public static final BitSet FOLLOW_teardown_in_compilation_unit121 = new BitSet(new long[]{0x0000000000010000L}); public static final BitSet FOLLOW_test_in_compilation_unit126 = new BitSet(new long[]{0x0000000000010000L}); public static final BitSet FOLLOW_EOF_in_compilation_unit131 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_test_case_key_in_test_case_statement172 = new BitSet(new long[]{0x0000000000004000L}); public static final BitSet FOLLOW_STRING_in_test_case_statement177 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_import_key_in_import_statement190 = new BitSet(new long[]{0x0000000000010000L}); public static final BitSet FOLLOW_import_target_in_import_statement193 = new BitSet(new long[]{0x0000000000008000L}); public static final BitSet FOLLOW_SEMI_COLON_in_import_statement195 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_setup_key_in_setup209 = new BitSet(new long[]{0x0000000000010002L}); public static final BitSet FOLLOW_step_in_setup212 = new BitSet(new long[]{0x0000000000010002L}); public static final BitSet FOLLOW_teardown_key_in_teardown225 = new BitSet(new long[]{0x0000000000010002L}); public static final BitSet FOLLOW_step_in_teardown228 = new BitSet(new long[]{0x0000000000010002L}); public static final BitSet FOLLOW_test_key_in_test242 = new BitSet(new long[]{0x0000000000004000L}); public static final BitSet FOLLOW_STRING_in_test247 = new BitSet(new long[]{0x0000000000010002L}); public static final BitSet FOLLOW_step_in_test249 = new BitSet(new long[]{0x0000000000010002L}); public static final BitSet FOLLOW_ID_in_step263 = new BitSet(new long[]{0x0000000000020000L}); public static final BitSet FOLLOW_COLON_in_step266 = new BitSet(new long[]{0x0000000005F94000L}); public static final BitSet FOLLOW_params_in_step271 = new BitSet(new long[]{0x0000000000008000L}); public static final BitSet FOLLOW_SEMI_COLON_in_step273 = new BitSet(new long[]{0x0000000005F94002L}); public static final BitSet FOLLOW_param_chunk_in_params290 = new BitSet(new long[]{0x0000000000040002L}); public static final BitSet FOLLOW_COMMA_in_params293 = new BitSet(new long[]{0x0000000005F94000L}); public static final BitSet FOLLOW_param_chunk_in_params295 = new BitSet(new long[]{0x0000000000040002L}); public static final BitSet FOLLOW_param_sequence_in_param_chunk324 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_param_in_param_sequence343 = new BitSet(new long[]{0x0000000005F94002L}); public static final BitSet FOLLOW_ID_in_param359 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_STRING_in_param366 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_INT_in_param372 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_FLOAT_in_param378 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_MISC_in_param384 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_STAR_in_param390 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_square_chunk_in_param396 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_paren_chunk_in_param402 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_DOT_in_param408 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_import_target_matcher_in_import_target428 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_qualified_id_matcher_in_import_target_matcher447 = new BitSet(new long[]{0x0000000000800002L}); public static final BitSet FOLLOW_DOT_in_import_target_matcher450 = new BitSet(new long[]{0x0000000000400000L}); public static final BitSet FOLLOW_STAR_in_import_target_matcher452 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_qualified_id_matcher_in_qualified_id470 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ID_in_qualified_id_matcher488 = new BitSet(new long[]{0x0000000000800002L}); public static final BitSet FOLLOW_DOT_in_qualified_id_matcher491 = new BitSet(new long[]{0x0000000000010000L}); public static final BitSet FOLLOW_ID_in_qualified_id_matcher493 = new BitSet(new long[]{0x0000000000800002L}); public static final BitSet FOLLOW_collection_matcher_in_square_chunk511 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LEFT_SQUARE_in_collection_matcher524 = new BitSet(new long[]{0x0000000007F94000L}); public static final BitSet FOLLOW_params_in_collection_matcher526 = new BitSet(new long[]{0x0000000002000000L}); public static final BitSet FOLLOW_RIGHT_SQUARE_in_collection_matcher529 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_paren_matcher_in_paren_chunk544 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_LEFT_PAREN_in_paren_matcher557 = new BitSet(new long[]{0x000000000DF94000L}); public static final BitSet FOLLOW_params_in_paren_matcher559 = new BitSet(new long[]{0x0000000008000000L}); public static final BitSet FOLLOW_RIGHT_PAREN_in_paren_matcher562 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ID_in_test_case_key581 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ID_in_import_key605 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ID_in_setup_key629 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ID_in_teardown_key653 = new BitSet(new long[]{0x0000000000000002L}); public static final BitSet FOLLOW_ID_in_test_key677 = new BitSet(new long[]{0x0000000000000002L}); }