/* * generated by Xtext */ package simulator.parseTreeConstruction; import org.eclipse.emf.ecore.*; import org.eclipse.xtext.*; import org.eclipse.xtext.parsetree.reconstr.IEObjectConsumer; import org.eclipse.xtext.parsetree.reconstr.impl.AbstractParseTreeConstructor; import simulator.services.SpecificationLanguageGrammarAccess; import com.google.inject.Inject; @SuppressWarnings("all") public class SpecificationLanguageParsetreeConstructor extends AbstractParseTreeConstructor { @Inject private SpecificationLanguageGrammarAccess grammarAccess; @Override protected AbstractToken getRootToken(IEObjectConsumer inst) { return new ThisRootNode(inst); } protected class ThisRootNode extends RootToken { public ThisRootNode(IEObjectConsumer inst) { super(inst); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Specification_Group(this, this, 0, inst); case 1: return new Condition_SetModeParserRuleCall(this, this, 1, inst); case 2: return new Action_PressButtonParserRuleCall(this, this, 2, inst); case 3: return new Observation_Alternatives(this, this, 3, inst); case 4: return new Testcase_Group(this, this, 4, inst); case 5: return new Given_Group(this, this, 5, inst); case 6: return new When_Group(this, this, 6, inst); case 7: return new Then_Group(this, this, 7, inst); case 8: return new SetMode_Group(this, this, 8, inst); case 9: return new PressButton_Group(this, this, 9, inst); case 10: return new ObserveMode_Group(this, this, 10, inst); case 11: return new ObserveBinding_Group(this, this, 11, inst); case 12: return new ObserveDisplay_Group(this, this, 12, inst); default: return null; } } } /************ begin Rule Specification **************** * * Specification: * {Specification} "Specification" "{" ("testcases" "{" testcases+=Testcase ("," testcases+=Testcase)* "}")? "}"; * **/ // {Specification} "Specification" "{" ("testcases" "{" testcases+=Testcase ("," testcases+=Testcase)* "}")? "}" protected class Specification_Group extends GroupToken { public Specification_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getSpecificationAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Specification_RightCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getSpecificationAccess().getSpecificationAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {Specification} protected class Specification_SpecificationAction_0 extends ActionToken { public Specification_SpecificationAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getSpecificationAccess().getSpecificationAction_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(!eObjectConsumer.isConsumed()) return null; return eObjectConsumer; } } // "Specification" protected class Specification_SpecificationKeyword_1 extends KeywordToken { public Specification_SpecificationKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSpecificationAccess().getSpecificationKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Specification_SpecificationAction_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class Specification_LeftCurlyBracketKeyword_2 extends KeywordToken { public Specification_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSpecificationAccess().getLeftCurlyBracketKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Specification_SpecificationKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // ("testcases" "{" testcases+=Testcase ("," testcases+=Testcase)* "}")? protected class Specification_Group_3 extends GroupToken { public Specification_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getSpecificationAccess().getGroup_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Specification_RightCurlyBracketKeyword_3_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "testcases" protected class Specification_TestcasesKeyword_3_0 extends KeywordToken { public Specification_TestcasesKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSpecificationAccess().getTestcasesKeyword_3_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Specification_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class Specification_LeftCurlyBracketKeyword_3_1 extends KeywordToken { public Specification_LeftCurlyBracketKeyword_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSpecificationAccess().getLeftCurlyBracketKeyword_3_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Specification_TestcasesKeyword_3_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // testcases+=Testcase protected class Specification_TestcasesAssignment_3_2 extends AssignmentToken { public Specification_TestcasesAssignment_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getSpecificationAccess().getTestcasesAssignment_3_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Testcase_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("testcases",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("testcases"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getTestcaseRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getSpecificationAccess().getTestcasesTestcaseParserRuleCall_3_2_0(); consumed = obj; return param; } } return null; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { if(value == inst.getEObject() && !inst.isConsumed()) return null; switch(index) { case 0: return new Specification_LeftCurlyBracketKeyword_3_1(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // ("," testcases+=Testcase)* protected class Specification_Group_3_3 extends GroupToken { public Specification_Group_3_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getSpecificationAccess().getGroup_3_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Specification_TestcasesAssignment_3_3_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "," protected class Specification_CommaKeyword_3_3_0 extends KeywordToken { public Specification_CommaKeyword_3_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSpecificationAccess().getCommaKeyword_3_3_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Specification_Group_3_3(lastRuleCallOrigin, this, 0, inst); case 1: return new Specification_TestcasesAssignment_3_2(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // testcases+=Testcase protected class Specification_TestcasesAssignment_3_3_1 extends AssignmentToken { public Specification_TestcasesAssignment_3_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getSpecificationAccess().getTestcasesAssignment_3_3_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Testcase_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("testcases",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("testcases"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getTestcaseRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getSpecificationAccess().getTestcasesTestcaseParserRuleCall_3_3_1_0(); consumed = obj; return param; } } return null; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { if(value == inst.getEObject() && !inst.isConsumed()) return null; switch(index) { case 0: return new Specification_CommaKeyword_3_3_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // "}" protected class Specification_RightCurlyBracketKeyword_3_4 extends KeywordToken { public Specification_RightCurlyBracketKeyword_3_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSpecificationAccess().getRightCurlyBracketKeyword_3_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Specification_Group_3_3(lastRuleCallOrigin, this, 0, inst); case 1: return new Specification_TestcasesAssignment_3_2(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // "}" protected class Specification_RightCurlyBracketKeyword_4 extends KeywordToken { public Specification_RightCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSpecificationAccess().getRightCurlyBracketKeyword_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Specification_Group_3(lastRuleCallOrigin, this, 0, inst); case 1: return new Specification_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst); default: return null; } } } /************ end Rule Specification ****************/ /************ begin Rule Condition **************** * * Condition: * SetMode; * **/ // SetMode protected class Condition_SetModeParserRuleCall extends RuleCallToken { public Condition_SetModeParserRuleCall(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getConditionAccess().getSetModeParserRuleCall(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SetMode_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getSetModeAccess().getSetModeAction_0().getType().getClassifier()) return null; if(checkForRecursion(SetMode_Group.class, eObjectConsumer)) return null; return eObjectConsumer; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst); } } } /************ end Rule Condition ****************/ /************ begin Rule Action **************** * * Action: * PressButton; * **/ // PressButton protected class Action_PressButtonParserRuleCall extends RuleCallToken { public Action_PressButtonParserRuleCall(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getActionAccess().getPressButtonParserRuleCall(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new PressButton_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getPressButtonAccess().getPressButtonAction_0().getType().getClassifier()) return null; if(checkForRecursion(PressButton_Group.class, eObjectConsumer)) return null; return eObjectConsumer; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst); } } } /************ end Rule Action ****************/ /************ begin Rule Observation **************** * * Observation: * ObserveMode | ObserveBinding | ObserveDisplay; * **/ // ObserveMode | ObserveBinding | ObserveDisplay protected class Observation_Alternatives extends AlternativesToken { public Observation_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getObservationAccess().getAlternatives(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Observation_ObserveModeParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); case 1: return new Observation_ObserveBindingParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); case 2: return new Observation_ObserveDisplayParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getObserveBindingAccess().getObserveBindingAction_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getObserveDisplayAccess().getObserveDisplayAction_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getObserveModeAccess().getObserveModeAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // ObserveMode protected class Observation_ObserveModeParserRuleCall_0 extends RuleCallToken { public Observation_ObserveModeParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getObservationAccess().getObserveModeParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveMode_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getObserveModeAccess().getObserveModeAction_0().getType().getClassifier()) return null; if(checkForRecursion(ObserveMode_Group.class, eObjectConsumer)) return null; return eObjectConsumer; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst); } } } // ObserveBinding protected class Observation_ObserveBindingParserRuleCall_1 extends RuleCallToken { public Observation_ObserveBindingParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getObservationAccess().getObserveBindingParserRuleCall_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveBinding_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getObserveBindingAccess().getObserveBindingAction_0().getType().getClassifier()) return null; if(checkForRecursion(ObserveBinding_Group.class, eObjectConsumer)) return null; return eObjectConsumer; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst); } } } // ObserveDisplay protected class Observation_ObserveDisplayParserRuleCall_2 extends RuleCallToken { public Observation_ObserveDisplayParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getObservationAccess().getObserveDisplayParserRuleCall_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveDisplay_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getObserveDisplayAccess().getObserveDisplayAction_0().getType().getClassifier()) return null; if(checkForRecursion(ObserveDisplay_Group.class, eObjectConsumer)) return null; return eObjectConsumer; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst); } } } /************ end Rule Observation ****************/ /************ begin Rule Testcase **************** * * Testcase: * "Testcase" "{" "given" given=Given ("when" when=When)? "then" then=Then "}"; * **/ // "Testcase" "{" "given" given=Given ("when" when=When)? "then" then=Then "}" protected class Testcase_Group extends GroupToken { public Testcase_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTestcaseAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Testcase_RightCurlyBracketKeyword_7(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTestcaseRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "Testcase" protected class Testcase_TestcaseKeyword_0 extends KeywordToken { public Testcase_TestcaseKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTestcaseAccess().getTestcaseKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // "{" protected class Testcase_LeftCurlyBracketKeyword_1 extends KeywordToken { public Testcase_LeftCurlyBracketKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTestcaseAccess().getLeftCurlyBracketKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Testcase_TestcaseKeyword_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "given" protected class Testcase_GivenKeyword_2 extends KeywordToken { public Testcase_GivenKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTestcaseAccess().getGivenKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Testcase_LeftCurlyBracketKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // given=Given protected class Testcase_GivenAssignment_3 extends AssignmentToken { public Testcase_GivenAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTestcaseAccess().getGivenAssignment_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Given_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("given",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("given"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getGivenRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getTestcaseAccess().getGivenGivenParserRuleCall_3_0(); consumed = obj; return param; } } return null; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { if(value == inst.getEObject() && !inst.isConsumed()) return null; switch(index) { case 0: return new Testcase_GivenKeyword_2(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // ("when" when=When)? protected class Testcase_Group_4 extends GroupToken { public Testcase_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTestcaseAccess().getGroup_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Testcase_WhenAssignment_4_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "when" protected class Testcase_WhenKeyword_4_0 extends KeywordToken { public Testcase_WhenKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTestcaseAccess().getWhenKeyword_4_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Testcase_GivenAssignment_3(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // when=When protected class Testcase_WhenAssignment_4_1 extends AssignmentToken { public Testcase_WhenAssignment_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTestcaseAccess().getWhenAssignment_4_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new When_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("when",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("when"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getWhenRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getTestcaseAccess().getWhenWhenParserRuleCall_4_1_0(); consumed = obj; return param; } } return null; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { if(value == inst.getEObject() && !inst.isConsumed()) return null; switch(index) { case 0: return new Testcase_WhenKeyword_4_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // "then" protected class Testcase_ThenKeyword_5 extends KeywordToken { public Testcase_ThenKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTestcaseAccess().getThenKeyword_5(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Testcase_Group_4(lastRuleCallOrigin, this, 0, inst); case 1: return new Testcase_GivenAssignment_3(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // then=Then protected class Testcase_ThenAssignment_6 extends AssignmentToken { public Testcase_ThenAssignment_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTestcaseAccess().getThenAssignment_6(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Then_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("then",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("then"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getThenRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getTestcaseAccess().getThenThenParserRuleCall_6_0(); consumed = obj; return param; } } return null; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { if(value == inst.getEObject() && !inst.isConsumed()) return null; switch(index) { case 0: return new Testcase_ThenKeyword_5(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // "}" protected class Testcase_RightCurlyBracketKeyword_7 extends KeywordToken { public Testcase_RightCurlyBracketKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTestcaseAccess().getRightCurlyBracketKeyword_7(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Testcase_ThenAssignment_6(lastRuleCallOrigin, this, 0, inst); default: return null; } } } /************ end Rule Testcase ****************/ /************ begin Rule Given **************** * * Given: * "Given" "{" "conditions" "{" conditions+=Condition ("," conditions+=Condition)* "}" "}"; * **/ // "Given" "{" "conditions" "{" conditions+=Condition ("," conditions+=Condition)* "}" "}" protected class Given_Group extends GroupToken { public Given_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getGivenAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Given_RightCurlyBracketKeyword_7(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getGivenRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "Given" protected class Given_GivenKeyword_0 extends KeywordToken { public Given_GivenKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGivenAccess().getGivenKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // "{" protected class Given_LeftCurlyBracketKeyword_1 extends KeywordToken { public Given_LeftCurlyBracketKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGivenAccess().getLeftCurlyBracketKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Given_GivenKeyword_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "conditions" protected class Given_ConditionsKeyword_2 extends KeywordToken { public Given_ConditionsKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGivenAccess().getConditionsKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Given_LeftCurlyBracketKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class Given_LeftCurlyBracketKeyword_3 extends KeywordToken { public Given_LeftCurlyBracketKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGivenAccess().getLeftCurlyBracketKeyword_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Given_ConditionsKeyword_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // conditions+=Condition protected class Given_ConditionsAssignment_4 extends AssignmentToken { public Given_ConditionsAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getGivenAccess().getConditionsAssignment_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Condition_SetModeParserRuleCall(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("conditions",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("conditions"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getConditionRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getGivenAccess().getConditionsConditionParserRuleCall_4_0(); consumed = obj; return param; } } return null; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { if(value == inst.getEObject() && !inst.isConsumed()) return null; switch(index) { case 0: return new Given_LeftCurlyBracketKeyword_3(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // ("," conditions+=Condition)* protected class Given_Group_5 extends GroupToken { public Given_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getGivenAccess().getGroup_5(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Given_ConditionsAssignment_5_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "," protected class Given_CommaKeyword_5_0 extends KeywordToken { public Given_CommaKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGivenAccess().getCommaKeyword_5_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Given_Group_5(lastRuleCallOrigin, this, 0, inst); case 1: return new Given_ConditionsAssignment_4(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // conditions+=Condition protected class Given_ConditionsAssignment_5_1 extends AssignmentToken { public Given_ConditionsAssignment_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getGivenAccess().getConditionsAssignment_5_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Condition_SetModeParserRuleCall(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("conditions",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("conditions"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getConditionRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getGivenAccess().getConditionsConditionParserRuleCall_5_1_0(); consumed = obj; return param; } } return null; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { if(value == inst.getEObject() && !inst.isConsumed()) return null; switch(index) { case 0: return new Given_CommaKeyword_5_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // "}" protected class Given_RightCurlyBracketKeyword_6 extends KeywordToken { public Given_RightCurlyBracketKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGivenAccess().getRightCurlyBracketKeyword_6(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Given_Group_5(lastRuleCallOrigin, this, 0, inst); case 1: return new Given_ConditionsAssignment_4(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // "}" protected class Given_RightCurlyBracketKeyword_7 extends KeywordToken { public Given_RightCurlyBracketKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGivenAccess().getRightCurlyBracketKeyword_7(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Given_RightCurlyBracketKeyword_6(lastRuleCallOrigin, this, 0, inst); default: return null; } } } /************ end Rule Given ****************/ /************ begin Rule When **************** * * When: * "When" "{" "actions" "{" actions+=Action ("," actions+=Action)* "}" "}"; * **/ // "When" "{" "actions" "{" actions+=Action ("," actions+=Action)* "}" "}" protected class When_Group extends GroupToken { public When_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getWhenAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new When_RightCurlyBracketKeyword_7(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getWhenRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "When" protected class When_WhenKeyword_0 extends KeywordToken { public When_WhenKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getWhenAccess().getWhenKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // "{" protected class When_LeftCurlyBracketKeyword_1 extends KeywordToken { public When_LeftCurlyBracketKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getWhenAccess().getLeftCurlyBracketKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new When_WhenKeyword_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "actions" protected class When_ActionsKeyword_2 extends KeywordToken { public When_ActionsKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getWhenAccess().getActionsKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new When_LeftCurlyBracketKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class When_LeftCurlyBracketKeyword_3 extends KeywordToken { public When_LeftCurlyBracketKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getWhenAccess().getLeftCurlyBracketKeyword_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new When_ActionsKeyword_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // actions+=Action protected class When_ActionsAssignment_4 extends AssignmentToken { public When_ActionsAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getWhenAccess().getActionsAssignment_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Action_PressButtonParserRuleCall(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("actions",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("actions"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getActionRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getWhenAccess().getActionsActionParserRuleCall_4_0(); consumed = obj; return param; } } return null; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { if(value == inst.getEObject() && !inst.isConsumed()) return null; switch(index) { case 0: return new When_LeftCurlyBracketKeyword_3(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // ("," actions+=Action)* protected class When_Group_5 extends GroupToken { public When_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getWhenAccess().getGroup_5(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new When_ActionsAssignment_5_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "," protected class When_CommaKeyword_5_0 extends KeywordToken { public When_CommaKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getWhenAccess().getCommaKeyword_5_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new When_Group_5(lastRuleCallOrigin, this, 0, inst); case 1: return new When_ActionsAssignment_4(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // actions+=Action protected class When_ActionsAssignment_5_1 extends AssignmentToken { public When_ActionsAssignment_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getWhenAccess().getActionsAssignment_5_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Action_PressButtonParserRuleCall(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("actions",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("actions"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getActionRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getWhenAccess().getActionsActionParserRuleCall_5_1_0(); consumed = obj; return param; } } return null; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { if(value == inst.getEObject() && !inst.isConsumed()) return null; switch(index) { case 0: return new When_CommaKeyword_5_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // "}" protected class When_RightCurlyBracketKeyword_6 extends KeywordToken { public When_RightCurlyBracketKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getWhenAccess().getRightCurlyBracketKeyword_6(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new When_Group_5(lastRuleCallOrigin, this, 0, inst); case 1: return new When_ActionsAssignment_4(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // "}" protected class When_RightCurlyBracketKeyword_7 extends KeywordToken { public When_RightCurlyBracketKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getWhenAccess().getRightCurlyBracketKeyword_7(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new When_RightCurlyBracketKeyword_6(lastRuleCallOrigin, this, 0, inst); default: return null; } } } /************ end Rule When ****************/ /************ begin Rule Then **************** * * Then: * "Then" "{" "observations" "{" observations+=Observation ("," observations+=Observation)* "}" "}"; * **/ // "Then" "{" "observations" "{" observations+=Observation ("," observations+=Observation)* "}" "}" protected class Then_Group extends GroupToken { public Then_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getThenAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Then_RightCurlyBracketKeyword_7(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getThenRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "Then" protected class Then_ThenKeyword_0 extends KeywordToken { public Then_ThenKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getThenAccess().getThenKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // "{" protected class Then_LeftCurlyBracketKeyword_1 extends KeywordToken { public Then_LeftCurlyBracketKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getThenAccess().getLeftCurlyBracketKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Then_ThenKeyword_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "observations" protected class Then_ObservationsKeyword_2 extends KeywordToken { public Then_ObservationsKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getThenAccess().getObservationsKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Then_LeftCurlyBracketKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class Then_LeftCurlyBracketKeyword_3 extends KeywordToken { public Then_LeftCurlyBracketKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getThenAccess().getLeftCurlyBracketKeyword_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Then_ObservationsKeyword_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // observations+=Observation protected class Then_ObservationsAssignment_4 extends AssignmentToken { public Then_ObservationsAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getThenAccess().getObservationsAssignment_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Observation_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("observations",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("observations"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getObservationRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getThenAccess().getObservationsObservationParserRuleCall_4_0(); consumed = obj; return param; } } return null; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { if(value == inst.getEObject() && !inst.isConsumed()) return null; switch(index) { case 0: return new Then_LeftCurlyBracketKeyword_3(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // ("," observations+=Observation)* protected class Then_Group_5 extends GroupToken { public Then_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getThenAccess().getGroup_5(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Then_ObservationsAssignment_5_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "," protected class Then_CommaKeyword_5_0 extends KeywordToken { public Then_CommaKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getThenAccess().getCommaKeyword_5_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Then_Group_5(lastRuleCallOrigin, this, 0, inst); case 1: return new Then_ObservationsAssignment_4(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // observations+=Observation protected class Then_ObservationsAssignment_5_1 extends AssignmentToken { public Then_ObservationsAssignment_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getThenAccess().getObservationsAssignment_5_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Observation_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("observations",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("observations"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getObservationRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getThenAccess().getObservationsObservationParserRuleCall_5_1_0(); consumed = obj; return param; } } return null; } @Override public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { if(value == inst.getEObject() && !inst.isConsumed()) return null; switch(index) { case 0: return new Then_CommaKeyword_5_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // "}" protected class Then_RightCurlyBracketKeyword_6 extends KeywordToken { public Then_RightCurlyBracketKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getThenAccess().getRightCurlyBracketKeyword_6(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Then_Group_5(lastRuleCallOrigin, this, 0, inst); case 1: return new Then_ObservationsAssignment_4(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // "}" protected class Then_RightCurlyBracketKeyword_7 extends KeywordToken { public Then_RightCurlyBracketKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getThenAccess().getRightCurlyBracketKeyword_7(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Then_RightCurlyBracketKeyword_6(lastRuleCallOrigin, this, 0, inst); default: return null; } } } /************ end Rule Then ****************/ /************ begin Rule SetMode **************** * * SetMode: * {SetMode} "SetMode" "{" ("mode" mode=EString)? "}"; * **/ // {SetMode} "SetMode" "{" ("mode" mode=EString)? "}" protected class SetMode_Group extends GroupToken { public SetMode_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getSetModeAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SetMode_RightCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getSetModeAccess().getSetModeAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {SetMode} protected class SetMode_SetModeAction_0 extends ActionToken { public SetMode_SetModeAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getSetModeAccess().getSetModeAction_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(!eObjectConsumer.isConsumed()) return null; return eObjectConsumer; } } // "SetMode" protected class SetMode_SetModeKeyword_1 extends KeywordToken { public SetMode_SetModeKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSetModeAccess().getSetModeKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SetMode_SetModeAction_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class SetMode_LeftCurlyBracketKeyword_2 extends KeywordToken { public SetMode_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSetModeAccess().getLeftCurlyBracketKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SetMode_SetModeKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // ("mode" mode=EString)? protected class SetMode_Group_3 extends GroupToken { public SetMode_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getSetModeAccess().getGroup_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SetMode_ModeAssignment_3_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "mode" protected class SetMode_ModeKeyword_3_0 extends KeywordToken { public SetMode_ModeKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSetModeAccess().getModeKeyword_3_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SetMode_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // mode=EString protected class SetMode_ModeAssignment_3_1 extends AssignmentToken { public SetMode_ModeAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getSetModeAccess().getModeAssignment_3_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SetMode_ModeKeyword_3_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("mode",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("mode"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getSetModeAccess().getModeEStringParserRuleCall_3_1_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getSetModeAccess().getModeEStringParserRuleCall_3_1_0(); return obj; } return null; } } // "}" protected class SetMode_RightCurlyBracketKeyword_4 extends KeywordToken { public SetMode_RightCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSetModeAccess().getRightCurlyBracketKeyword_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SetMode_Group_3(lastRuleCallOrigin, this, 0, inst); case 1: return new SetMode_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst); default: return null; } } } /************ end Rule SetMode ****************/ /************ begin Rule PressButton **************** * * PressButton: * {PressButton} "PressButton" "{" ("button" button=EString)? "}"; * **/ // {PressButton} "PressButton" "{" ("button" button=EString)? "}" protected class PressButton_Group extends GroupToken { public PressButton_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getPressButtonAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new PressButton_RightCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getPressButtonAccess().getPressButtonAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {PressButton} protected class PressButton_PressButtonAction_0 extends ActionToken { public PressButton_PressButtonAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getPressButtonAccess().getPressButtonAction_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(!eObjectConsumer.isConsumed()) return null; return eObjectConsumer; } } // "PressButton" protected class PressButton_PressButtonKeyword_1 extends KeywordToken { public PressButton_PressButtonKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getPressButtonAccess().getPressButtonKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new PressButton_PressButtonAction_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class PressButton_LeftCurlyBracketKeyword_2 extends KeywordToken { public PressButton_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getPressButtonAccess().getLeftCurlyBracketKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new PressButton_PressButtonKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // ("button" button=EString)? protected class PressButton_Group_3 extends GroupToken { public PressButton_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getPressButtonAccess().getGroup_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new PressButton_ButtonAssignment_3_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "button" protected class PressButton_ButtonKeyword_3_0 extends KeywordToken { public PressButton_ButtonKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getPressButtonAccess().getButtonKeyword_3_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new PressButton_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // button=EString protected class PressButton_ButtonAssignment_3_1 extends AssignmentToken { public PressButton_ButtonAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getPressButtonAccess().getButtonAssignment_3_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new PressButton_ButtonKeyword_3_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("button",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("button"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getPressButtonAccess().getButtonEStringParserRuleCall_3_1_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getPressButtonAccess().getButtonEStringParserRuleCall_3_1_0(); return obj; } return null; } } // "}" protected class PressButton_RightCurlyBracketKeyword_4 extends KeywordToken { public PressButton_RightCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getPressButtonAccess().getRightCurlyBracketKeyword_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new PressButton_Group_3(lastRuleCallOrigin, this, 0, inst); case 1: return new PressButton_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst); default: return null; } } } /************ end Rule PressButton ****************/ /************ begin Rule ObserveMode **************** * * ObserveMode: * {ObserveMode} "ObserveMode" "{" ("mode" mode=EString)? "}"; * **/ // {ObserveMode} "ObserveMode" "{" ("mode" mode=EString)? "}" protected class ObserveMode_Group extends GroupToken { public ObserveMode_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getObserveModeAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveMode_RightCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getObserveModeAccess().getObserveModeAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {ObserveMode} protected class ObserveMode_ObserveModeAction_0 extends ActionToken { public ObserveMode_ObserveModeAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getObserveModeAccess().getObserveModeAction_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(!eObjectConsumer.isConsumed()) return null; return eObjectConsumer; } } // "ObserveMode" protected class ObserveMode_ObserveModeKeyword_1 extends KeywordToken { public ObserveMode_ObserveModeKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getObserveModeAccess().getObserveModeKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveMode_ObserveModeAction_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class ObserveMode_LeftCurlyBracketKeyword_2 extends KeywordToken { public ObserveMode_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getObserveModeAccess().getLeftCurlyBracketKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveMode_ObserveModeKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // ("mode" mode=EString)? protected class ObserveMode_Group_3 extends GroupToken { public ObserveMode_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getObserveModeAccess().getGroup_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveMode_ModeAssignment_3_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "mode" protected class ObserveMode_ModeKeyword_3_0 extends KeywordToken { public ObserveMode_ModeKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getObserveModeAccess().getModeKeyword_3_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveMode_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // mode=EString protected class ObserveMode_ModeAssignment_3_1 extends AssignmentToken { public ObserveMode_ModeAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getObserveModeAccess().getModeAssignment_3_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveMode_ModeKeyword_3_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("mode",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("mode"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getObserveModeAccess().getModeEStringParserRuleCall_3_1_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getObserveModeAccess().getModeEStringParserRuleCall_3_1_0(); return obj; } return null; } } // "}" protected class ObserveMode_RightCurlyBracketKeyword_4 extends KeywordToken { public ObserveMode_RightCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getObserveModeAccess().getRightCurlyBracketKeyword_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveMode_Group_3(lastRuleCallOrigin, this, 0, inst); case 1: return new ObserveMode_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst); default: return null; } } } /************ end Rule ObserveMode ****************/ /************ begin Rule ObserveBinding **************** * * ObserveBinding: * {ObserveBinding} "ObserveBinding" name=EString "{" ("button" button=EString)? "}"; * **/ // {ObserveBinding} "ObserveBinding" name=EString "{" ("button" button=EString)? "}" protected class ObserveBinding_Group extends GroupToken { public ObserveBinding_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getObserveBindingAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveBinding_RightCurlyBracketKeyword_5(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getObserveBindingAccess().getObserveBindingAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {ObserveBinding} protected class ObserveBinding_ObserveBindingAction_0 extends ActionToken { public ObserveBinding_ObserveBindingAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getObserveBindingAccess().getObserveBindingAction_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(!eObjectConsumer.isConsumed()) return null; return eObjectConsumer; } } // "ObserveBinding" protected class ObserveBinding_ObserveBindingKeyword_1 extends KeywordToken { public ObserveBinding_ObserveBindingKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getObserveBindingAccess().getObserveBindingKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveBinding_ObserveBindingAction_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // name=EString protected class ObserveBinding_NameAssignment_2 extends AssignmentToken { public ObserveBinding_NameAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getObserveBindingAccess().getNameAssignment_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveBinding_ObserveBindingKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("name",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getObserveBindingAccess().getNameEStringParserRuleCall_2_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getObserveBindingAccess().getNameEStringParserRuleCall_2_0(); return obj; } return null; } } // "{" protected class ObserveBinding_LeftCurlyBracketKeyword_3 extends KeywordToken { public ObserveBinding_LeftCurlyBracketKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getObserveBindingAccess().getLeftCurlyBracketKeyword_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveBinding_NameAssignment_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // ("button" button=EString)? protected class ObserveBinding_Group_4 extends GroupToken { public ObserveBinding_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getObserveBindingAccess().getGroup_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveBinding_ButtonAssignment_4_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "button" protected class ObserveBinding_ButtonKeyword_4_0 extends KeywordToken { public ObserveBinding_ButtonKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getObserveBindingAccess().getButtonKeyword_4_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveBinding_LeftCurlyBracketKeyword_3(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // button=EString protected class ObserveBinding_ButtonAssignment_4_1 extends AssignmentToken { public ObserveBinding_ButtonAssignment_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getObserveBindingAccess().getButtonAssignment_4_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveBinding_ButtonKeyword_4_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("button",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("button"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getObserveBindingAccess().getButtonEStringParserRuleCall_4_1_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getObserveBindingAccess().getButtonEStringParserRuleCall_4_1_0(); return obj; } return null; } } // "}" protected class ObserveBinding_RightCurlyBracketKeyword_5 extends KeywordToken { public ObserveBinding_RightCurlyBracketKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getObserveBindingAccess().getRightCurlyBracketKeyword_5(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveBinding_Group_4(lastRuleCallOrigin, this, 0, inst); case 1: return new ObserveBinding_LeftCurlyBracketKeyword_3(lastRuleCallOrigin, this, 1, inst); default: return null; } } } /************ end Rule ObserveBinding ****************/ /************ begin Rule ObserveDisplay **************** * * ObserveDisplay: * {ObserveDisplay} "ObserveDisplay" "{" ("value" value=EString)? "}"; * **/ // {ObserveDisplay} "ObserveDisplay" "{" ("value" value=EString)? "}" protected class ObserveDisplay_Group extends GroupToken { public ObserveDisplay_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getObserveDisplayAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveDisplay_RightCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getObserveDisplayAccess().getObserveDisplayAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {ObserveDisplay} protected class ObserveDisplay_ObserveDisplayAction_0 extends ActionToken { public ObserveDisplay_ObserveDisplayAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getObserveDisplayAccess().getObserveDisplayAction_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(!eObjectConsumer.isConsumed()) return null; return eObjectConsumer; } } // "ObserveDisplay" protected class ObserveDisplay_ObserveDisplayKeyword_1 extends KeywordToken { public ObserveDisplay_ObserveDisplayKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getObserveDisplayAccess().getObserveDisplayKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveDisplay_ObserveDisplayAction_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class ObserveDisplay_LeftCurlyBracketKeyword_2 extends KeywordToken { public ObserveDisplay_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getObserveDisplayAccess().getLeftCurlyBracketKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveDisplay_ObserveDisplayKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // ("value" value=EString)? protected class ObserveDisplay_Group_3 extends GroupToken { public ObserveDisplay_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getObserveDisplayAccess().getGroup_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveDisplay_ValueAssignment_3_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "value" protected class ObserveDisplay_ValueKeyword_3_0 extends KeywordToken { public ObserveDisplay_ValueKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getObserveDisplayAccess().getValueKeyword_3_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveDisplay_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // value=EString protected class ObserveDisplay_ValueAssignment_3_1 extends AssignmentToken { public ObserveDisplay_ValueAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getObserveDisplayAccess().getValueAssignment_3_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveDisplay_ValueKeyword_3_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("value",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("value"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getObserveDisplayAccess().getValueEStringParserRuleCall_3_1_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getObserveDisplayAccess().getValueEStringParserRuleCall_3_1_0(); return obj; } return null; } } // "}" protected class ObserveDisplay_RightCurlyBracketKeyword_4 extends KeywordToken { public ObserveDisplay_RightCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getObserveDisplayAccess().getRightCurlyBracketKeyword_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ObserveDisplay_Group_3(lastRuleCallOrigin, this, 0, inst); case 1: return new ObserveDisplay_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst); default: return null; } } } /************ end Rule ObserveDisplay ****************/ }