/* * generated by Xtext */ package no.hal.scxml.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 no.hal.scxml.services.ScxmlxtGrammarAccess; import com.google.inject.Inject; @SuppressWarnings("all") public class ScxmlxtParsetreeConstructor extends AbstractParseTreeConstructor { @Inject private ScxmlxtGrammarAccess 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 StateMachine_Group(this, this, 0, inst); case 1: return new ResourceImport_Alternatives(this, this, 1, inst); case 2: return new DomainModelImport_Group(this, this, 2, inst); case 3: return new DomainDataImport_Group(this, this, 3, inst); case 4: return new State_Group(this, this, 4, inst); case 5: return new InitialTransition_Group(this, this, 5, inst); case 6: return new AbstractState_Alternatives(this, this, 6, inst); case 7: return new AbstractTransition_Alternatives(this, this, 7, inst); case 8: return new Transition_Group(this, this, 8, inst); case 9: return new InternalTransition_Group(this, this, 9, inst); case 10: return new Event_Alternatives(this, this, 10, inst); case 11: return new SymbolicEvent_Group(this, this, 11, inst); case 12: return new TransitionEvent_Alternatives(this, this, 12, inst); case 13: return new EnterEvent_Group(this, this, 13, inst); case 14: return new ExitEvent_Group(this, this, 14, inst); case 15: return new ScriptEvent_ScriptAssignment(this, this, 15, inst); case 16: return new TimerEvent_Group(this, this, 16, inst); case 17: return new Condition_ScriptAssignment(this, this, 17, inst); case 18: return new Action_Alternatives(this, this, 18, inst); case 19: return new SymbolicAction_Group(this, this, 19, inst); case 20: return new ScriptAction_ScriptAssignment(this, this, 20, inst); case 21: return new VarDef_Group(this, this, 21, inst); case 22: return new AssignmentAction_Group(this, this, 22, inst); case 23: return new Expression_Alternatives(this, this, 23, inst); case 24: return new Literal_Alternatives(this, this, 24, inst); case 25: return new BooleanLiteral_BooleanValueAssignment(this, this, 25, inst); case 26: return new IntLiteral_IntValueAssignment(this, this, 26, inst); case 27: return new FloatLiteral_FloatValueAssignment(this, this, 27, inst); case 28: return new StringLiteral_StringValueAssignment(this, this, 28, inst); case 29: return new UriLiteral_UriAssignment(this, this, 29, inst); case 30: return new EObjectUriLiteral_UriAssignment(this, this, 30, inst); case 31: return new DelayLiteral_Group(this, this, 31, inst); case 32: return new VarRef_VarAssignment(this, this, 32, inst); case 33: return new EPath_Group(this, this, 33, inst); case 34: return new EStep_Group(this, this, 34, inst); case 35: return new EStepFilter_ScriptAssignment(this, this, 35, inst); case 36: return new ScriptExpression_ScriptAssignment(this, this, 36, inst); default: return null; } } } /************ begin Rule StateMachine **************** * * StateMachine: * imports+=ResourceImport* (states+=State | transitions+=AbstractTransition | variables+=VarDef)*; * **/ // imports+=ResourceImport* (states+=State | transitions+=AbstractTransition | variables+=VarDef)* protected class StateMachine_Group extends GroupToken { public StateMachine_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getStateMachineAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new StateMachine_Alternatives_1(lastRuleCallOrigin, this, 0, inst); case 1: return new StateMachine_ImportsAssignment_0(lastRuleCallOrigin, this, 1, inst); default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index - 2, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getStateMachineRule().getType().getClassifier()) return null; return eObjectConsumer; } } // imports+=ResourceImport* protected class StateMachine_ImportsAssignment_0 extends AssignmentToken { public StateMachine_ImportsAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getStateMachineAccess().getImportsAssignment_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ResourceImport_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("imports",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("imports"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getResourceImportRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getStateMachineAccess().getImportsResourceImportParserRuleCall_0_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 StateMachine_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 1, consumed); } } } // (states+=State | transitions+=AbstractTransition | variables+=VarDef)* protected class StateMachine_Alternatives_1 extends AlternativesToken { public StateMachine_Alternatives_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getStateMachineAccess().getAlternatives_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new StateMachine_StatesAssignment_1_0(lastRuleCallOrigin, this, 0, inst); case 1: return new StateMachine_TransitionsAssignment_1_1(lastRuleCallOrigin, this, 1, inst); case 2: return new StateMachine_VariablesAssignment_1_2(lastRuleCallOrigin, this, 2, inst); default: return null; } } } // states+=State protected class StateMachine_StatesAssignment_1_0 extends AssignmentToken { public StateMachine_StatesAssignment_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getStateMachineAccess().getStatesAssignment_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new State_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("states",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("states"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getStateRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getStateMachineAccess().getStatesStateParserRuleCall_1_0_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 StateMachine_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); case 1: return new StateMachine_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 2, consumed); } } } // transitions+=AbstractTransition protected class StateMachine_TransitionsAssignment_1_1 extends AssignmentToken { public StateMachine_TransitionsAssignment_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getStateMachineAccess().getTransitionsAssignment_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AbstractTransition_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("transitions",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("transitions"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getAbstractTransitionRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getStateMachineAccess().getTransitionsAbstractTransitionParserRuleCall_1_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 StateMachine_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); case 1: return new StateMachine_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 2, consumed); } } } // variables+=VarDef protected class StateMachine_VariablesAssignment_1_2 extends AssignmentToken { public StateMachine_VariablesAssignment_1_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getStateMachineAccess().getVariablesAssignment_1_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new VarDef_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("variables",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("variables"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getVarDefRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getStateMachineAccess().getVariablesVarDefParserRuleCall_1_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 StateMachine_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); case 1: return new StateMachine_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 2, consumed); } } } /************ end Rule StateMachine ****************/ /************ begin Rule ResourceImport **************** * * ResourceImport: * DomainModelImport | DomainDataImport; * **/ // DomainModelImport | DomainDataImport protected class ResourceImport_Alternatives extends AlternativesToken { public ResourceImport_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getResourceImportAccess().getAlternatives(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ResourceImport_DomainModelImportParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); case 1: return new ResourceImport_DomainDataImportParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getDomainDataImportRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getDomainModelImportRule().getType().getClassifier()) return null; return eObjectConsumer; } } // DomainModelImport protected class ResourceImport_DomainModelImportParserRuleCall_0 extends RuleCallToken { public ResourceImport_DomainModelImportParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getResourceImportAccess().getDomainModelImportParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new DomainModelImport_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getDomainModelImportRule().getType().getClassifier()) return null; if(checkForRecursion(DomainModelImport_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); } } } // DomainDataImport protected class ResourceImport_DomainDataImportParserRuleCall_1 extends RuleCallToken { public ResourceImport_DomainDataImportParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getResourceImportAccess().getDomainDataImportParserRuleCall_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new DomainDataImport_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getDomainDataImportRule().getType().getClassifier()) return null; if(checkForRecursion(DomainDataImport_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 ResourceImport ****************/ /************ begin Rule DomainModelImport **************** * * DomainModelImport: * "domain"? "model" importURI=STRING ";"; * **/ // "domain"? "model" importURI=STRING ";" protected class DomainModelImport_Group extends GroupToken { public DomainModelImport_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getDomainModelImportAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new DomainModelImport_SemicolonKeyword_3(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getDomainModelImportRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "model" protected class DomainModelImport_ModelKeyword_1 extends KeywordToken { public DomainModelImport_ModelKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getDomainModelImportAccess().getModelKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // importURI=STRING protected class DomainModelImport_ImportURIAssignment_2 extends AssignmentToken { public DomainModelImport_ImportURIAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getDomainModelImportAccess().getImportURIAssignment_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new DomainModelImport_ModelKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("importURI",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("importURI"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getDomainModelImportAccess().getImportURISTRINGTerminalRuleCall_2_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getDomainModelImportAccess().getImportURISTRINGTerminalRuleCall_2_0(); return obj; } return null; } } // ";" protected class DomainModelImport_SemicolonKeyword_3 extends KeywordToken { public DomainModelImport_SemicolonKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getDomainModelImportAccess().getSemicolonKeyword_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new DomainModelImport_ImportURIAssignment_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } /************ end Rule DomainModelImport ****************/ /************ begin Rule DomainDataImport **************** * * DomainDataImport: * "domain"? "data" importURI=STRING ";"; * **/ // "domain"? "data" importURI=STRING ";" protected class DomainDataImport_Group extends GroupToken { public DomainDataImport_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getDomainDataImportAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new DomainDataImport_SemicolonKeyword_3(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getDomainDataImportRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "data" protected class DomainDataImport_DataKeyword_1 extends KeywordToken { public DomainDataImport_DataKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getDomainDataImportAccess().getDataKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // importURI=STRING protected class DomainDataImport_ImportURIAssignment_2 extends AssignmentToken { public DomainDataImport_ImportURIAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getDomainDataImportAccess().getImportURIAssignment_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new DomainDataImport_DataKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("importURI",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("importURI"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getDomainDataImportAccess().getImportURISTRINGTerminalRuleCall_2_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getDomainDataImportAccess().getImportURISTRINGTerminalRuleCall_2_0(); return obj; } return null; } } // ";" protected class DomainDataImport_SemicolonKeyword_3 extends KeywordToken { public DomainDataImport_SemicolonKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getDomainDataImportAccess().getSemicolonKeyword_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new DomainDataImport_ImportURIAssignment_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } /************ end Rule DomainDataImport ****************/ /************ begin Rule State **************** * * State: * initialTransition=InitialTransition? name=ID (";" | "{" (states+=State | transitions+=AbstractTransition | * variables+=VarDef)* "}"); * **/ // initialTransition=InitialTransition? name=ID (";" | "{" (states+=State | transitions+=AbstractTransition | // variables+=VarDef)* "}") protected class State_Group extends GroupToken { public State_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getStateAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new State_Alternatives_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getStateRule().getType().getClassifier()) return null; return eObjectConsumer; } } // initialTransition=InitialTransition? protected class State_InitialTransitionAssignment_0 extends AssignmentToken { public State_InitialTransitionAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getStateAccess().getInitialTransitionAssignment_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new InitialTransition_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("initialTransition",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("initialTransition"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getInitialTransitionRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getStateAccess().getInitialTransitionInitialTransitionParserRuleCall_0_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) { default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, consumed); } } } // name=ID protected class State_NameAssignment_1 extends AssignmentToken { public State_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getStateAccess().getNameAssignment_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new State_InitialTransitionAssignment_0(lastRuleCallOrigin, this, 0, inst); default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index - 1, inst); } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("name",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getStateAccess().getNameIDTerminalRuleCall_1_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getStateAccess().getNameIDTerminalRuleCall_1_0(); return obj; } return null; } } // ";" | "{" (states+=State | transitions+=AbstractTransition | variables+=VarDef)* "}" protected class State_Alternatives_2 extends AlternativesToken { public State_Alternatives_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getStateAccess().getAlternatives_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new State_SemicolonKeyword_2_0(lastRuleCallOrigin, this, 0, inst); case 1: return new State_Group_2_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // ";" protected class State_SemicolonKeyword_2_0 extends KeywordToken { public State_SemicolonKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getStateAccess().getSemicolonKeyword_2_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new State_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" (states+=State | transitions+=AbstractTransition | variables+=VarDef)* "}" protected class State_Group_2_1 extends GroupToken { public State_Group_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getStateAccess().getGroup_2_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new State_RightCurlyBracketKeyword_2_1_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class State_LeftCurlyBracketKeyword_2_1_0 extends KeywordToken { public State_LeftCurlyBracketKeyword_2_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getStateAccess().getLeftCurlyBracketKeyword_2_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new State_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // (states+=State | transitions+=AbstractTransition | variables+=VarDef)* protected class State_Alternatives_2_1_1 extends AlternativesToken { public State_Alternatives_2_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getStateAccess().getAlternatives_2_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new State_StatesAssignment_2_1_1_0(lastRuleCallOrigin, this, 0, inst); case 1: return new State_TransitionsAssignment_2_1_1_1(lastRuleCallOrigin, this, 1, inst); case 2: return new State_VariablesAssignment_2_1_1_2(lastRuleCallOrigin, this, 2, inst); default: return null; } } } // states+=State protected class State_StatesAssignment_2_1_1_0 extends AssignmentToken { public State_StatesAssignment_2_1_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getStateAccess().getStatesAssignment_2_1_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new State_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("states",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("states"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getStateRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getStateAccess().getStatesStateParserRuleCall_2_1_1_0_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 State_Alternatives_2_1_1(lastRuleCallOrigin, next, actIndex, consumed); case 1: return new State_LeftCurlyBracketKeyword_2_1_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // transitions+=AbstractTransition protected class State_TransitionsAssignment_2_1_1_1 extends AssignmentToken { public State_TransitionsAssignment_2_1_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getStateAccess().getTransitionsAssignment_2_1_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AbstractTransition_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("transitions",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("transitions"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getAbstractTransitionRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getStateAccess().getTransitionsAbstractTransitionParserRuleCall_2_1_1_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 State_Alternatives_2_1_1(lastRuleCallOrigin, next, actIndex, consumed); case 1: return new State_LeftCurlyBracketKeyword_2_1_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // variables+=VarDef protected class State_VariablesAssignment_2_1_1_2 extends AssignmentToken { public State_VariablesAssignment_2_1_1_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getStateAccess().getVariablesAssignment_2_1_1_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new VarDef_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("variables",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("variables"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getVarDefRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getStateAccess().getVariablesVarDefParserRuleCall_2_1_1_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 State_Alternatives_2_1_1(lastRuleCallOrigin, next, actIndex, consumed); case 1: return new State_LeftCurlyBracketKeyword_2_1_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // "}" protected class State_RightCurlyBracketKeyword_2_1_2 extends KeywordToken { public State_RightCurlyBracketKeyword_2_1_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getStateAccess().getRightCurlyBracketKeyword_2_1_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new State_Alternatives_2_1_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } /************ end Rule State ****************/ /************ begin Rule InitialTransition **************** * * InitialTransition: // ('->' target=[State] | target=[State] '<-') * {InitialTransition} "->" ("do" action=Action)?; * **/ // // ('->' target=[State] | target=[State] '<-') // {InitialTransition} "->" ("do" action=Action)? protected class InitialTransition_Group extends GroupToken { public InitialTransition_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getInitialTransitionAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new InitialTransition_Group_2(lastRuleCallOrigin, this, 0, inst); case 1: return new InitialTransition_HyphenMinusGreaterThanSignKeyword_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getInitialTransitionAccess().getInitialTransitionAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // // ('->' target=[State] | target=[State] '<-') // {InitialTransition} protected class InitialTransition_InitialTransitionAction_0 extends ActionToken { public InitialTransition_InitialTransitionAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getInitialTransitionAccess().getInitialTransitionAction_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; } } // "->" protected class InitialTransition_HyphenMinusGreaterThanSignKeyword_1 extends KeywordToken { public InitialTransition_HyphenMinusGreaterThanSignKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getInitialTransitionAccess().getHyphenMinusGreaterThanSignKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new InitialTransition_InitialTransitionAction_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // ("do" action=Action)? protected class InitialTransition_Group_2 extends GroupToken { public InitialTransition_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getInitialTransitionAccess().getGroup_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new InitialTransition_ActionAssignment_2_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "do" protected class InitialTransition_DoKeyword_2_0 extends KeywordToken { public InitialTransition_DoKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getInitialTransitionAccess().getDoKeyword_2_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new InitialTransition_HyphenMinusGreaterThanSignKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // action=Action protected class InitialTransition_ActionAssignment_2_1 extends AssignmentToken { public InitialTransition_ActionAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getInitialTransitionAccess().getActionAssignment_2_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Action_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("action",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("action"); 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.getInitialTransitionAccess().getActionActionParserRuleCall_2_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 InitialTransition_DoKeyword_2_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } /************ end Rule InitialTransition ****************/ /************ begin Rule AbstractState **************** * * AbstractState: * StateMachine | State; * **/ // StateMachine | State protected class AbstractState_Alternatives extends AlternativesToken { public AbstractState_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getAbstractStateAccess().getAlternatives(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AbstractState_StateMachineParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); case 1: return new AbstractState_StateParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getStateRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getStateMachineRule().getType().getClassifier()) return null; return eObjectConsumer; } } // StateMachine protected class AbstractState_StateMachineParserRuleCall_0 extends RuleCallToken { public AbstractState_StateMachineParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getAbstractStateAccess().getStateMachineParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new StateMachine_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getStateMachineRule().getType().getClassifier()) return null; if(checkForRecursion(StateMachine_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); } } } // State protected class AbstractState_StateParserRuleCall_1 extends RuleCallToken { public AbstractState_StateParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getAbstractStateAccess().getStateParserRuleCall_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new State_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getStateRule().getType().getClassifier()) return null; if(checkForRecursion(State_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 AbstractState ****************/ /************ begin Rule AbstractTransition **************** * * AbstractTransition: * Transition | InternalTransition; * **/ // Transition | InternalTransition protected class AbstractTransition_Alternatives extends AlternativesToken { public AbstractTransition_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getAbstractTransitionAccess().getAlternatives(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AbstractTransition_TransitionParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); case 1: return new AbstractTransition_InternalTransitionParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getInternalTransitionRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTransitionRule().getType().getClassifier()) return null; return eObjectConsumer; } } // Transition protected class AbstractTransition_TransitionParserRuleCall_0 extends RuleCallToken { public AbstractTransition_TransitionParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getAbstractTransitionAccess().getTransitionParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTransitionRule().getType().getClassifier()) return null; if(checkForRecursion(Transition_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); } } } // InternalTransition protected class AbstractTransition_InternalTransitionParserRuleCall_1 extends RuleCallToken { public AbstractTransition_InternalTransitionParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getAbstractTransitionAccess().getInternalTransitionParserRuleCall_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new InternalTransition_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getInternalTransitionRule().getType().getClassifier()) return null; if(checkForRecursion(InternalTransition_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 AbstractTransition ****************/ /************ begin Rule Transition **************** * * Transition: * ("->" target=[State|QNAME] // (source=[State|QNAME] '->' target=[State|QNAME] | target=[State|QNAME] '<-' source=[State|QNAME]) * | target=[State|QNAME] "<-") ("on" event=Event)? ("if" condition=Condition)? ("do" action=Action)? ";"; * **/ // ("->" target=[State|QNAME] // (source=[State|QNAME] '->' target=[State|QNAME] | target=[State|QNAME] '<-' source=[State|QNAME]) // | target=[State|QNAME] "<-") ("on" event=Event)? ("if" condition=Condition)? ("do" action=Action)? ";" protected class Transition_Group extends GroupToken { public Transition_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTransitionAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_SemicolonKeyword_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTransitionRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "->" target=[State|QNAME] // (source=[State|QNAME] '->' target=[State|QNAME] | target=[State|QNAME] '<-' source=[State|QNAME]) // | target=[State|QNAME] "<-" protected class Transition_Alternatives_0 extends AlternativesToken { public Transition_Alternatives_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getTransitionAccess().getAlternatives_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_Group_0_0(lastRuleCallOrigin, this, 0, inst); case 1: return new Transition_Group_0_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // "->" target=[State|QNAME] protected class Transition_Group_0_0 extends GroupToken { public Transition_Group_0_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTransitionAccess().getGroup_0_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_TargetAssignment_0_0_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "->" protected class Transition_HyphenMinusGreaterThanSignKeyword_0_0_0 extends KeywordToken { public Transition_HyphenMinusGreaterThanSignKeyword_0_0_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTransitionAccess().getHyphenMinusGreaterThanSignKeyword_0_0_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // target=[State|QNAME] protected class Transition_TargetAssignment_0_0_1 extends AssignmentToken { public Transition_TargetAssignment_0_0_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionAccess().getTargetAssignment_0_0_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_HyphenMinusGreaterThanSignKeyword_0_0_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("target",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("target"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getTransitionAccess().getTargetStateCrossReference_0_0_1_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getTransitionAccess().getTargetStateCrossReference_0_0_1_0(); return obj; } } return null; } } // target=[State|QNAME] "<-" protected class Transition_Group_0_1 extends GroupToken { public Transition_Group_0_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTransitionAccess().getGroup_0_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_LessThanSignHyphenMinusKeyword_0_1_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // target=[State|QNAME] protected class Transition_TargetAssignment_0_1_0 extends AssignmentToken { public Transition_TargetAssignment_0_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionAccess().getTargetAssignment_0_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("target",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("target"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getTransitionAccess().getTargetStateCrossReference_0_1_0_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getTransitionAccess().getTargetStateCrossReference_0_1_0_0(); return obj; } } return null; } } // "<-" protected class Transition_LessThanSignHyphenMinusKeyword_0_1_1 extends KeywordToken { public Transition_LessThanSignHyphenMinusKeyword_0_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTransitionAccess().getLessThanSignHyphenMinusKeyword_0_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_TargetAssignment_0_1_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // ("on" event=Event)? protected class Transition_Group_1 extends GroupToken { public Transition_Group_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTransitionAccess().getGroup_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_EventAssignment_1_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "on" protected class Transition_OnKeyword_1_0 extends KeywordToken { public Transition_OnKeyword_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTransitionAccess().getOnKeyword_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_Alternatives_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // event=Event protected class Transition_EventAssignment_1_1 extends AssignmentToken { public Transition_EventAssignment_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionAccess().getEventAssignment_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Event_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("event",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("event"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getEventRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getTransitionAccess().getEventEventParserRuleCall_1_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 Transition_OnKeyword_1_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // ("if" condition=Condition)? protected class Transition_Group_2 extends GroupToken { public Transition_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTransitionAccess().getGroup_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_ConditionAssignment_2_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "if" protected class Transition_IfKeyword_2_0 extends KeywordToken { public Transition_IfKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTransitionAccess().getIfKeyword_2_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_Group_1(lastRuleCallOrigin, this, 0, inst); case 1: return new Transition_Alternatives_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // condition=Condition protected class Transition_ConditionAssignment_2_1 extends AssignmentToken { public Transition_ConditionAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionAccess().getConditionAssignment_2_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Condition_ScriptAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("condition",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("condition"); 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.getTransitionAccess().getConditionConditionParserRuleCall_2_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 Transition_IfKeyword_2_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // ("do" action=Action)? protected class Transition_Group_3 extends GroupToken { public Transition_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTransitionAccess().getGroup_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_ActionAssignment_3_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "do" protected class Transition_DoKeyword_3_0 extends KeywordToken { public Transition_DoKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTransitionAccess().getDoKeyword_3_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_Group_2(lastRuleCallOrigin, this, 0, inst); case 1: return new Transition_Group_1(lastRuleCallOrigin, this, 1, inst); case 2: return new Transition_Alternatives_0(lastRuleCallOrigin, this, 2, inst); default: return null; } } } // action=Action protected class Transition_ActionAssignment_3_1 extends AssignmentToken { public Transition_ActionAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionAccess().getActionAssignment_3_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Action_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("action",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("action"); 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.getTransitionAccess().getActionActionParserRuleCall_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 Transition_DoKeyword_3_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // ";" protected class Transition_SemicolonKeyword_4 extends KeywordToken { public Transition_SemicolonKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTransitionAccess().getSemicolonKeyword_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Transition_Group_3(lastRuleCallOrigin, this, 0, inst); case 1: return new Transition_Group_2(lastRuleCallOrigin, this, 1, inst); case 2: return new Transition_Group_1(lastRuleCallOrigin, this, 2, inst); case 3: return new Transition_Alternatives_0(lastRuleCallOrigin, this, 3, inst); default: return null; } } } /************ end Rule Transition ****************/ /************ begin Rule InternalTransition **************** * * InternalTransition: * ("on" event=Event)? ("if" condition=Condition)? "do" action=Action ";"; * **/ // ("on" event=Event)? ("if" condition=Condition)? "do" action=Action ";" protected class InternalTransition_Group extends GroupToken { public InternalTransition_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getInternalTransitionAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new InternalTransition_SemicolonKeyword_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getInternalTransitionRule().getType().getClassifier()) return null; return eObjectConsumer; } } // ("on" event=Event)? protected class InternalTransition_Group_0 extends GroupToken { public InternalTransition_Group_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getInternalTransitionAccess().getGroup_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new InternalTransition_EventAssignment_0_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "on" protected class InternalTransition_OnKeyword_0_0 extends KeywordToken { public InternalTransition_OnKeyword_0_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getInternalTransitionAccess().getOnKeyword_0_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // event=Event protected class InternalTransition_EventAssignment_0_1 extends AssignmentToken { public InternalTransition_EventAssignment_0_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getInternalTransitionAccess().getEventAssignment_0_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Event_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("event",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("event"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getEventRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getInternalTransitionAccess().getEventEventParserRuleCall_0_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 InternalTransition_OnKeyword_0_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // ("if" condition=Condition)? protected class InternalTransition_Group_1 extends GroupToken { public InternalTransition_Group_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getInternalTransitionAccess().getGroup_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new InternalTransition_ConditionAssignment_1_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "if" protected class InternalTransition_IfKeyword_1_0 extends KeywordToken { public InternalTransition_IfKeyword_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getInternalTransitionAccess().getIfKeyword_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new InternalTransition_Group_0(lastRuleCallOrigin, this, 0, inst); default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index - 1, inst); } } } // condition=Condition protected class InternalTransition_ConditionAssignment_1_1 extends AssignmentToken { public InternalTransition_ConditionAssignment_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getInternalTransitionAccess().getConditionAssignment_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Condition_ScriptAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("condition",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("condition"); 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.getInternalTransitionAccess().getConditionConditionParserRuleCall_1_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 InternalTransition_IfKeyword_1_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // "do" protected class InternalTransition_DoKeyword_2 extends KeywordToken { public InternalTransition_DoKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getInternalTransitionAccess().getDoKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new InternalTransition_Group_1(lastRuleCallOrigin, this, 0, inst); case 1: return new InternalTransition_Group_0(lastRuleCallOrigin, this, 1, inst); default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index - 2, inst); } } } // action=Action protected class InternalTransition_ActionAssignment_3 extends AssignmentToken { public InternalTransition_ActionAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getInternalTransitionAccess().getActionAssignment_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Action_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("action",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("action"); 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.getInternalTransitionAccess().getActionActionParserRuleCall_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 InternalTransition_DoKeyword_2(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // ";" protected class InternalTransition_SemicolonKeyword_4 extends KeywordToken { public InternalTransition_SemicolonKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getInternalTransitionAccess().getSemicolonKeyword_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new InternalTransition_ActionAssignment_3(lastRuleCallOrigin, this, 0, inst); default: return null; } } } /************ end Rule InternalTransition ****************/ /************ begin Rule Event **************** * * Event: * SymbolicEvent | TransitionEvent | EnterEvent | ExitEvent | ScriptEvent | TimerEvent; * **/ // SymbolicEvent | TransitionEvent | EnterEvent | ExitEvent | ScriptEvent | TimerEvent protected class Event_Alternatives extends AlternativesToken { public Event_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getEventAccess().getAlternatives(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Event_SymbolicEventParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); case 1: return new Event_TransitionEventParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); case 2: return new Event_EnterEventParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); case 3: return new Event_ExitEventParserRuleCall_3(lastRuleCallOrigin, this, 3, inst); case 4: return new Event_ScriptEventParserRuleCall_4(lastRuleCallOrigin, this, 4, inst); case 5: return new Event_TimerEventParserRuleCall_5(lastRuleCallOrigin, this, 5, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getEnterEventAccess().getEnterEventAction_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getExitEventAccess().getExitEventAction_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getScriptEventRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getSymbolicEventRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTimerEventRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTransitionEventRule().getType().getClassifier()) return null; return eObjectConsumer; } } // SymbolicEvent protected class Event_SymbolicEventParserRuleCall_0 extends RuleCallToken { public Event_SymbolicEventParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getEventAccess().getSymbolicEventParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SymbolicEvent_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getSymbolicEventRule().getType().getClassifier()) return null; if(checkForRecursion(SymbolicEvent_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); } } } // TransitionEvent protected class Event_TransitionEventParserRuleCall_1 extends RuleCallToken { public Event_TransitionEventParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getEventAccess().getTransitionEventParserRuleCall_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTransitionEventRule().getType().getClassifier()) return null; if(checkForRecursion(TransitionEvent_Alternatives.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); } } } // EnterEvent protected class Event_EnterEventParserRuleCall_2 extends RuleCallToken { public Event_EnterEventParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getEventAccess().getEnterEventParserRuleCall_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new EnterEvent_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getEnterEventAccess().getEnterEventAction_0().getType().getClassifier()) return null; if(checkForRecursion(EnterEvent_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); } } } // ExitEvent protected class Event_ExitEventParserRuleCall_3 extends RuleCallToken { public Event_ExitEventParserRuleCall_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getEventAccess().getExitEventParserRuleCall_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ExitEvent_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getExitEventAccess().getExitEventAction_0().getType().getClassifier()) return null; if(checkForRecursion(ExitEvent_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); } } } // ScriptEvent protected class Event_ScriptEventParserRuleCall_4 extends RuleCallToken { public Event_ScriptEventParserRuleCall_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getEventAccess().getScriptEventParserRuleCall_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ScriptEvent_ScriptAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getScriptEventRule().getType().getClassifier()) return null; if(checkForRecursion(ScriptEvent_ScriptAssignment.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); } } } // TimerEvent protected class Event_TimerEventParserRuleCall_5 extends RuleCallToken { public Event_TimerEventParserRuleCall_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getEventAccess().getTimerEventParserRuleCall_5(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TimerEvent_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTimerEventRule().getType().getClassifier()) return null; if(checkForRecursion(TimerEvent_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 Event ****************/ /************ begin Rule SymbolicEvent **************** * * SymbolicEvent: * name=ID "!"; * **/ // name=ID "!" protected class SymbolicEvent_Group extends GroupToken { public SymbolicEvent_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getSymbolicEventAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SymbolicEvent_ExclamationMarkKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getSymbolicEventRule().getType().getClassifier()) return null; return eObjectConsumer; } } // name=ID protected class SymbolicEvent_NameAssignment_0 extends AssignmentToken { public SymbolicEvent_NameAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getSymbolicEventAccess().getNameAssignment_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("name",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getSymbolicEventAccess().getNameIDTerminalRuleCall_0_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getSymbolicEventAccess().getNameIDTerminalRuleCall_0_0(); return obj; } return null; } } // "!" protected class SymbolicEvent_ExclamationMarkKeyword_1 extends KeywordToken { public SymbolicEvent_ExclamationMarkKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSymbolicEventAccess().getExclamationMarkKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SymbolicEvent_NameAssignment_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } /************ end Rule SymbolicEvent ****************/ /************ begin Rule TransitionEvent **************** * * TransitionEvent: * (source=[State|QNAME] "->" target=[State|QNAME] | target=[State|QNAME] "<-" source=[State|QNAME]) | ("->" * target=[State|QNAME] // implicit EnterEvent * | target=[State|QNAME] "<-") | (source=[State|QNAME] "->" // implicit ExitEvent * | "<-" source=[State|QNAME]); * **/ // (source=[State|QNAME] "->" target=[State|QNAME] | target=[State|QNAME] "<-" source=[State|QNAME]) | ("->" // target=[State|QNAME] // implicit EnterEvent // | target=[State|QNAME] "<-") | (source=[State|QNAME] "->" // implicit ExitEvent // | "<-" source=[State|QNAME]) protected class TransitionEvent_Alternatives extends AlternativesToken { public TransitionEvent_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getTransitionEventAccess().getAlternatives(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_Alternatives_0(lastRuleCallOrigin, this, 0, inst); case 1: return new TransitionEvent_Alternatives_1(lastRuleCallOrigin, this, 1, inst); case 2: return new TransitionEvent_Alternatives_2(lastRuleCallOrigin, this, 2, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTransitionEventRule().getType().getClassifier()) return null; return eObjectConsumer; } } // source=[State|QNAME] "->" target=[State|QNAME] | target=[State|QNAME] "<-" source=[State|QNAME] protected class TransitionEvent_Alternatives_0 extends AlternativesToken { public TransitionEvent_Alternatives_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getTransitionEventAccess().getAlternatives_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_Group_0_0(lastRuleCallOrigin, this, 0, inst); case 1: return new TransitionEvent_Group_0_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // source=[State|QNAME] "->" target=[State|QNAME] protected class TransitionEvent_Group_0_0 extends GroupToken { public TransitionEvent_Group_0_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTransitionEventAccess().getGroup_0_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_TargetAssignment_0_0_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // source=[State|QNAME] protected class TransitionEvent_SourceAssignment_0_0_0 extends AssignmentToken { public TransitionEvent_SourceAssignment_0_0_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionEventAccess().getSourceAssignment_0_0_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("source",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("source"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getTransitionEventAccess().getSourceStateCrossReference_0_0_0_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getTransitionEventAccess().getSourceStateCrossReference_0_0_0_0(); return obj; } } return null; } } // "->" protected class TransitionEvent_HyphenMinusGreaterThanSignKeyword_0_0_1 extends KeywordToken { public TransitionEvent_HyphenMinusGreaterThanSignKeyword_0_0_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTransitionEventAccess().getHyphenMinusGreaterThanSignKeyword_0_0_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_SourceAssignment_0_0_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // target=[State|QNAME] protected class TransitionEvent_TargetAssignment_0_0_2 extends AssignmentToken { public TransitionEvent_TargetAssignment_0_0_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionEventAccess().getTargetAssignment_0_0_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_HyphenMinusGreaterThanSignKeyword_0_0_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("target",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("target"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getTransitionEventAccess().getTargetStateCrossReference_0_0_2_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getTransitionEventAccess().getTargetStateCrossReference_0_0_2_0(); return obj; } } return null; } } // target=[State|QNAME] "<-" source=[State|QNAME] protected class TransitionEvent_Group_0_1 extends GroupToken { public TransitionEvent_Group_0_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTransitionEventAccess().getGroup_0_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_SourceAssignment_0_1_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // target=[State|QNAME] protected class TransitionEvent_TargetAssignment_0_1_0 extends AssignmentToken { public TransitionEvent_TargetAssignment_0_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionEventAccess().getTargetAssignment_0_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("target",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("target"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getTransitionEventAccess().getTargetStateCrossReference_0_1_0_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getTransitionEventAccess().getTargetStateCrossReference_0_1_0_0(); return obj; } } return null; } } // "<-" protected class TransitionEvent_LessThanSignHyphenMinusKeyword_0_1_1 extends KeywordToken { public TransitionEvent_LessThanSignHyphenMinusKeyword_0_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTransitionEventAccess().getLessThanSignHyphenMinusKeyword_0_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_TargetAssignment_0_1_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // source=[State|QNAME] protected class TransitionEvent_SourceAssignment_0_1_2 extends AssignmentToken { public TransitionEvent_SourceAssignment_0_1_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionEventAccess().getSourceAssignment_0_1_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_LessThanSignHyphenMinusKeyword_0_1_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("source",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("source"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getTransitionEventAccess().getSourceStateCrossReference_0_1_2_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getTransitionEventAccess().getSourceStateCrossReference_0_1_2_0(); return obj; } } return null; } } // "->" target=[State|QNAME] // implicit EnterEvent // | target=[State|QNAME] "<-" protected class TransitionEvent_Alternatives_1 extends AlternativesToken { public TransitionEvent_Alternatives_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getTransitionEventAccess().getAlternatives_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_Group_1_0(lastRuleCallOrigin, this, 0, inst); case 1: return new TransitionEvent_Group_1_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // "->" target=[State|QNAME] protected class TransitionEvent_Group_1_0 extends GroupToken { public TransitionEvent_Group_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTransitionEventAccess().getGroup_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_TargetAssignment_1_0_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "->" protected class TransitionEvent_HyphenMinusGreaterThanSignKeyword_1_0_0 extends KeywordToken { public TransitionEvent_HyphenMinusGreaterThanSignKeyword_1_0_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTransitionEventAccess().getHyphenMinusGreaterThanSignKeyword_1_0_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // target=[State|QNAME] protected class TransitionEvent_TargetAssignment_1_0_1 extends AssignmentToken { public TransitionEvent_TargetAssignment_1_0_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionEventAccess().getTargetAssignment_1_0_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_HyphenMinusGreaterThanSignKeyword_1_0_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("target",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("target"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getTransitionEventAccess().getTargetStateCrossReference_1_0_1_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getTransitionEventAccess().getTargetStateCrossReference_1_0_1_0(); return obj; } } return null; } } // target=[State|QNAME] "<-" protected class TransitionEvent_Group_1_1 extends GroupToken { public TransitionEvent_Group_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTransitionEventAccess().getGroup_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_LessThanSignHyphenMinusKeyword_1_1_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // target=[State|QNAME] protected class TransitionEvent_TargetAssignment_1_1_0 extends AssignmentToken { public TransitionEvent_TargetAssignment_1_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionEventAccess().getTargetAssignment_1_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("target",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("target"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getTransitionEventAccess().getTargetStateCrossReference_1_1_0_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getTransitionEventAccess().getTargetStateCrossReference_1_1_0_0(); return obj; } } return null; } } // "<-" protected class TransitionEvent_LessThanSignHyphenMinusKeyword_1_1_1 extends KeywordToken { public TransitionEvent_LessThanSignHyphenMinusKeyword_1_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTransitionEventAccess().getLessThanSignHyphenMinusKeyword_1_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_TargetAssignment_1_1_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // source=[State|QNAME] "->" // implicit ExitEvent // | "<-" source=[State|QNAME] protected class TransitionEvent_Alternatives_2 extends AlternativesToken { public TransitionEvent_Alternatives_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getTransitionEventAccess().getAlternatives_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_Group_2_0(lastRuleCallOrigin, this, 0, inst); case 1: return new TransitionEvent_Group_2_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // source=[State|QNAME] "->" protected class TransitionEvent_Group_2_0 extends GroupToken { public TransitionEvent_Group_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTransitionEventAccess().getGroup_2_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_HyphenMinusGreaterThanSignKeyword_2_0_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // source=[State|QNAME] protected class TransitionEvent_SourceAssignment_2_0_0 extends AssignmentToken { public TransitionEvent_SourceAssignment_2_0_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionEventAccess().getSourceAssignment_2_0_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("source",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("source"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getTransitionEventAccess().getSourceStateCrossReference_2_0_0_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getTransitionEventAccess().getSourceStateCrossReference_2_0_0_0(); return obj; } } return null; } } // "->" protected class TransitionEvent_HyphenMinusGreaterThanSignKeyword_2_0_1 extends KeywordToken { public TransitionEvent_HyphenMinusGreaterThanSignKeyword_2_0_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTransitionEventAccess().getHyphenMinusGreaterThanSignKeyword_2_0_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_SourceAssignment_2_0_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "<-" source=[State|QNAME] protected class TransitionEvent_Group_2_1 extends GroupToken { public TransitionEvent_Group_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTransitionEventAccess().getGroup_2_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_SourceAssignment_2_1_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "<-" protected class TransitionEvent_LessThanSignHyphenMinusKeyword_2_1_0 extends KeywordToken { public TransitionEvent_LessThanSignHyphenMinusKeyword_2_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTransitionEventAccess().getLessThanSignHyphenMinusKeyword_2_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // source=[State|QNAME] protected class TransitionEvent_SourceAssignment_2_1_1 extends AssignmentToken { public TransitionEvent_SourceAssignment_2_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTransitionEventAccess().getSourceAssignment_2_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TransitionEvent_LessThanSignHyphenMinusKeyword_2_1_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("source",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("source"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getTransitionEventAccess().getSourceStateCrossReference_2_1_1_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getTransitionEventAccess().getSourceStateCrossReference_2_1_1_0(); return obj; } } return null; } } /************ end Rule TransitionEvent ****************/ /************ begin Rule EnterEvent **************** * * EnterEvent: * {EnterEvent} "enter"; * **/ // {EnterEvent} "enter" protected class EnterEvent_Group extends GroupToken { public EnterEvent_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getEnterEventAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new EnterEvent_EnterKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getEnterEventAccess().getEnterEventAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {EnterEvent} protected class EnterEvent_EnterEventAction_0 extends ActionToken { public EnterEvent_EnterEventAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getEnterEventAccess().getEnterEventAction_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; } } // "enter" protected class EnterEvent_EnterKeyword_1 extends KeywordToken { public EnterEvent_EnterKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getEnterEventAccess().getEnterKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new EnterEvent_EnterEventAction_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } /************ end Rule EnterEvent ****************/ /************ begin Rule ExitEvent **************** * * ExitEvent: * {ExitEvent} "exit"; * **/ // {ExitEvent} "exit" protected class ExitEvent_Group extends GroupToken { public ExitEvent_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getExitEventAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ExitEvent_ExitKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getExitEventAccess().getExitEventAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {ExitEvent} protected class ExitEvent_ExitEventAction_0 extends ActionToken { public ExitEvent_ExitEventAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getExitEventAccess().getExitEventAction_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; } } // "exit" protected class ExitEvent_ExitKeyword_1 extends KeywordToken { public ExitEvent_ExitKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getExitEventAccess().getExitKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ExitEvent_ExitEventAction_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } /************ end Rule ExitEvent ****************/ /************ begin Rule ScriptEvent **************** * * ScriptEvent: * script=SCRIPT_EXPRESSION; * **/ // script=SCRIPT_EXPRESSION protected class ScriptEvent_ScriptAssignment extends AssignmentToken { public ScriptEvent_ScriptAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getScriptEventAccess().getScriptAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getScriptEventRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("script",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("script"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getScriptEventAccess().getScriptSCRIPT_EXPRESSIONTerminalRuleCall_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getScriptEventAccess().getScriptSCRIPT_EXPRESSIONTerminalRuleCall_0(); return obj; } return null; } } /************ end Rule ScriptEvent ****************/ /************ begin Rule TimerEvent **************** * * TimerEvent: * "t" ">" delay=Expression "after" event=Event; * **/ // "t" ">" delay=Expression "after" event=Event protected class TimerEvent_Group extends GroupToken { public TimerEvent_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTimerEventAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TimerEvent_EventAssignment_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTimerEventRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "t" protected class TimerEvent_TKeyword_0 extends KeywordToken { public TimerEvent_TKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTimerEventAccess().getTKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // ">" protected class TimerEvent_GreaterThanSignKeyword_1 extends KeywordToken { public TimerEvent_GreaterThanSignKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTimerEventAccess().getGreaterThanSignKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TimerEvent_TKeyword_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // delay=Expression protected class TimerEvent_DelayAssignment_2 extends AssignmentToken { public TimerEvent_DelayAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTimerEventAccess().getDelayAssignment_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Expression_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("delay",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("delay"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getExpressionRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getTimerEventAccess().getDelayExpressionParserRuleCall_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 TimerEvent_GreaterThanSignKeyword_1(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // "after" protected class TimerEvent_AfterKeyword_3 extends KeywordToken { public TimerEvent_AfterKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTimerEventAccess().getAfterKeyword_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TimerEvent_DelayAssignment_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // event=Event protected class TimerEvent_EventAssignment_4 extends AssignmentToken { public TimerEvent_EventAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTimerEventAccess().getEventAssignment_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Event_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("event",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("event"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getEventRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getTimerEventAccess().getEventEventParserRuleCall_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 TimerEvent_AfterKeyword_3(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } /************ end Rule TimerEvent ****************/ /************ begin Rule Condition **************** * * Condition: * script=SCRIPT_EXPRESSION; * **/ // script=SCRIPT_EXPRESSION protected class Condition_ScriptAssignment extends AssignmentToken { public Condition_ScriptAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getConditionAccess().getScriptAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getConditionRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("script",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("script"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getConditionAccess().getScriptSCRIPT_EXPRESSIONTerminalRuleCall_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getConditionAccess().getScriptSCRIPT_EXPRESSIONTerminalRuleCall_0(); return obj; } return null; } } /************ end Rule Condition ****************/ /************ begin Rule Action **************** * * Action: * SymbolicAction | ScriptAction | AssignmentAction; * **/ // SymbolicAction | ScriptAction | AssignmentAction protected class Action_Alternatives extends AlternativesToken { public Action_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getActionAccess().getAlternatives(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Action_SymbolicActionParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); case 1: return new Action_ScriptActionParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); case 2: return new Action_AssignmentActionParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getAssignmentActionRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getScriptActionRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getSymbolicActionRule().getType().getClassifier()) return null; return eObjectConsumer; } } // SymbolicAction protected class Action_SymbolicActionParserRuleCall_0 extends RuleCallToken { public Action_SymbolicActionParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getActionAccess().getSymbolicActionParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SymbolicAction_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getSymbolicActionRule().getType().getClassifier()) return null; if(checkForRecursion(SymbolicAction_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); } } } // ScriptAction protected class Action_ScriptActionParserRuleCall_1 extends RuleCallToken { public Action_ScriptActionParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getActionAccess().getScriptActionParserRuleCall_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ScriptAction_ScriptAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getScriptActionRule().getType().getClassifier()) return null; if(checkForRecursion(ScriptAction_ScriptAssignment.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); } } } // AssignmentAction protected class Action_AssignmentActionParserRuleCall_2 extends RuleCallToken { public Action_AssignmentActionParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getActionAccess().getAssignmentActionParserRuleCall_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AssignmentAction_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getAssignmentActionRule().getType().getClassifier()) return null; if(checkForRecursion(AssignmentAction_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 SymbolicAction **************** * * SymbolicAction: * name=ID ("after" delay=Expression)? "!"; * **/ // name=ID ("after" delay=Expression)? "!" protected class SymbolicAction_Group extends GroupToken { public SymbolicAction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getSymbolicActionAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SymbolicAction_ExclamationMarkKeyword_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getSymbolicActionRule().getType().getClassifier()) return null; return eObjectConsumer; } } // name=ID protected class SymbolicAction_NameAssignment_0 extends AssignmentToken { public SymbolicAction_NameAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getSymbolicActionAccess().getNameAssignment_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("name",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getSymbolicActionAccess().getNameIDTerminalRuleCall_0_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getSymbolicActionAccess().getNameIDTerminalRuleCall_0_0(); return obj; } return null; } } // ("after" delay=Expression)? protected class SymbolicAction_Group_1 extends GroupToken { public SymbolicAction_Group_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getSymbolicActionAccess().getGroup_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SymbolicAction_DelayAssignment_1_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "after" protected class SymbolicAction_AfterKeyword_1_0 extends KeywordToken { public SymbolicAction_AfterKeyword_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSymbolicActionAccess().getAfterKeyword_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SymbolicAction_NameAssignment_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // delay=Expression protected class SymbolicAction_DelayAssignment_1_1 extends AssignmentToken { public SymbolicAction_DelayAssignment_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getSymbolicActionAccess().getDelayAssignment_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Expression_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("delay",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("delay"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getExpressionRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getSymbolicActionAccess().getDelayExpressionParserRuleCall_1_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 SymbolicAction_AfterKeyword_1_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // "!" protected class SymbolicAction_ExclamationMarkKeyword_2 extends KeywordToken { public SymbolicAction_ExclamationMarkKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getSymbolicActionAccess().getExclamationMarkKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new SymbolicAction_Group_1(lastRuleCallOrigin, this, 0, inst); case 1: return new SymbolicAction_NameAssignment_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } } /************ end Rule SymbolicAction ****************/ /************ begin Rule ScriptAction **************** * * ScriptAction: * script=SCRIPT_STATEMENTS; * **/ // script=SCRIPT_STATEMENTS protected class ScriptAction_ScriptAssignment extends AssignmentToken { public ScriptAction_ScriptAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getScriptActionAccess().getScriptAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getScriptActionRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("script",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("script"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getScriptActionAccess().getScriptSCRIPT_STATEMENTSTerminalRuleCall_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getScriptActionAccess().getScriptSCRIPT_STATEMENTSTerminalRuleCall_0(); return obj; } return null; } } /************ end Rule ScriptAction ****************/ /************ begin Rule VarDef **************** * * VarDef: * "var" name=ID (":" eType=[ecore::EClassifier|QNAME] many?=("*" | "[]")?)? ("=" init=Expression)? ";"; * **/ // "var" name=ID (":" eType=[ecore::EClassifier|QNAME] many?=("*" | "[]")?)? ("=" init=Expression)? ";" protected class VarDef_Group extends GroupToken { public VarDef_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getVarDefAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new VarDef_SemicolonKeyword_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getVarDefRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "var" protected class VarDef_VarKeyword_0 extends KeywordToken { public VarDef_VarKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getVarDefAccess().getVarKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // name=ID protected class VarDef_NameAssignment_1 extends AssignmentToken { public VarDef_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getVarDefAccess().getNameAssignment_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new VarDef_VarKeyword_0(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.getVarDefAccess().getNameIDTerminalRuleCall_1_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getVarDefAccess().getNameIDTerminalRuleCall_1_0(); return obj; } return null; } } // (":" eType=[ecore::EClassifier|QNAME] many?=("*" | "[]")?)? protected class VarDef_Group_2 extends GroupToken { public VarDef_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getVarDefAccess().getGroup_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new VarDef_ManyAssignment_2_2(lastRuleCallOrigin, this, 0, inst); case 1: return new VarDef_ETypeAssignment_2_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // ":" protected class VarDef_ColonKeyword_2_0 extends KeywordToken { public VarDef_ColonKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getVarDefAccess().getColonKeyword_2_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new VarDef_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // eType=[ecore::EClassifier|QNAME] protected class VarDef_ETypeAssignment_2_1 extends AssignmentToken { public VarDef_ETypeAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getVarDefAccess().getETypeAssignment_2_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new VarDef_ColonKeyword_2_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("eType",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("eType"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getVarDefAccess().getETypeEClassifierCrossReference_2_1_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getVarDefAccess().getETypeEClassifierCrossReference_2_1_0(); return obj; } } return null; } } // many?=("*" | "[]")? protected class VarDef_ManyAssignment_2_2 extends AssignmentToken { public VarDef_ManyAssignment_2_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getVarDefAccess().getManyAssignment_2_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new VarDef_ETypeAssignment_2_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("many",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("many"); if(Boolean.TRUE.equals(value)) { // org::eclipse::xtext::impl::KeywordImpl type = AssignmentType.KEYWORD; element = grammarAccess.getVarDefAccess().getManyAsteriskKeyword_2_2_0_0(); return obj; } if(Boolean.TRUE.equals(value)) { // org::eclipse::xtext::impl::KeywordImpl type = AssignmentType.KEYWORD; element = grammarAccess.getVarDefAccess().getManyLeftSquareBracketRightSquareBracketKeyword_2_2_0_1(); return obj; } return null; } } // ("=" init=Expression)? protected class VarDef_Group_3 extends GroupToken { public VarDef_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getVarDefAccess().getGroup_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new VarDef_InitAssignment_3_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "=" protected class VarDef_EqualsSignKeyword_3_0 extends KeywordToken { public VarDef_EqualsSignKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getVarDefAccess().getEqualsSignKeyword_3_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new VarDef_Group_2(lastRuleCallOrigin, this, 0, inst); case 1: return new VarDef_NameAssignment_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // init=Expression protected class VarDef_InitAssignment_3_1 extends AssignmentToken { public VarDef_InitAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getVarDefAccess().getInitAssignment_3_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Expression_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("init",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("init"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getExpressionRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getVarDefAccess().getInitExpressionParserRuleCall_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 VarDef_EqualsSignKeyword_3_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // ";" protected class VarDef_SemicolonKeyword_4 extends KeywordToken { public VarDef_SemicolonKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getVarDefAccess().getSemicolonKeyword_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new VarDef_Group_3(lastRuleCallOrigin, this, 0, inst); case 1: return new VarDef_Group_2(lastRuleCallOrigin, this, 1, inst); case 2: return new VarDef_NameAssignment_1(lastRuleCallOrigin, this, 2, inst); default: return null; } } } /************ end Rule VarDef ****************/ /************ begin Rule AssignmentAction **************** * * AssignmentAction: * var=[VarDef|QNAME] "=" value=Expression; * **/ // var=[VarDef|QNAME] "=" value=Expression protected class AssignmentAction_Group extends GroupToken { public AssignmentAction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getAssignmentActionAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AssignmentAction_ValueAssignment_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getAssignmentActionRule().getType().getClassifier()) return null; return eObjectConsumer; } } // var=[VarDef|QNAME] protected class AssignmentAction_VarAssignment_0 extends AssignmentToken { public AssignmentAction_VarAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getAssignmentActionAccess().getVarAssignment_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("var",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("var"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getAssignmentActionAccess().getVarVarDefCrossReference_0_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getAssignmentActionAccess().getVarVarDefCrossReference_0_0(); return obj; } } return null; } } // "=" protected class AssignmentAction_EqualsSignKeyword_1 extends KeywordToken { public AssignmentAction_EqualsSignKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getAssignmentActionAccess().getEqualsSignKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AssignmentAction_VarAssignment_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // value=Expression protected class AssignmentAction_ValueAssignment_2 extends AssignmentToken { public AssignmentAction_ValueAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getAssignmentActionAccess().getValueAssignment_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Expression_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("value",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("value"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getExpressionRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getAssignmentActionAccess().getValueExpressionParserRuleCall_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 AssignmentAction_EqualsSignKeyword_1(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } /************ end Rule AssignmentAction ****************/ /************ begin Rule Expression **************** * * Expression: * Literal | ScriptExpression | EPath; * **/ // Literal | ScriptExpression | EPath protected class Expression_Alternatives extends AlternativesToken { public Expression_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getExpressionAccess().getAlternatives(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Expression_LiteralParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); case 1: return new Expression_ScriptExpressionParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); case 2: return new Expression_EPathParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getBooleanLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getDelayLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getEObjectUriLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getEPathRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getFloatLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getIntLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getScriptExpressionRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getStringLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUriLiteralRule().getType().getClassifier()) return null; return eObjectConsumer; } } // Literal protected class Expression_LiteralParserRuleCall_0 extends RuleCallToken { public Expression_LiteralParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getExpressionAccess().getLiteralParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Literal_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getBooleanLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getDelayLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getEObjectUriLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getFloatLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getIntLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getStringLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUriLiteralRule().getType().getClassifier()) return null; if(checkForRecursion(Literal_Alternatives.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); } } } // ScriptExpression protected class Expression_ScriptExpressionParserRuleCall_1 extends RuleCallToken { public Expression_ScriptExpressionParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getExpressionAccess().getScriptExpressionParserRuleCall_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ScriptExpression_ScriptAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getScriptExpressionRule().getType().getClassifier()) return null; if(checkForRecursion(ScriptExpression_ScriptAssignment.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); } } } // EPath protected class Expression_EPathParserRuleCall_2 extends RuleCallToken { public Expression_EPathParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getExpressionAccess().getEPathParserRuleCall_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new EPath_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getEPathRule().getType().getClassifier()) return null; if(checkForRecursion(EPath_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 Expression ****************/ /************ begin Rule Literal **************** * * Literal: * BooleanLiteral | FloatLiteral | IntLiteral | StringLiteral | UriLiteral | EObjectUriLiteral | DelayLiteral; * **/ // BooleanLiteral | FloatLiteral | IntLiteral | StringLiteral | UriLiteral | EObjectUriLiteral | DelayLiteral protected class Literal_Alternatives extends AlternativesToken { public Literal_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getLiteralAccess().getAlternatives(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Literal_BooleanLiteralParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); case 1: return new Literal_FloatLiteralParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); case 2: return new Literal_IntLiteralParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); case 3: return new Literal_StringLiteralParserRuleCall_3(lastRuleCallOrigin, this, 3, inst); case 4: return new Literal_UriLiteralParserRuleCall_4(lastRuleCallOrigin, this, 4, inst); case 5: return new Literal_EObjectUriLiteralParserRuleCall_5(lastRuleCallOrigin, this, 5, inst); case 6: return new Literal_DelayLiteralParserRuleCall_6(lastRuleCallOrigin, this, 6, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getBooleanLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getDelayLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getEObjectUriLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getFloatLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getIntLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getStringLiteralRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUriLiteralRule().getType().getClassifier()) return null; return eObjectConsumer; } } // BooleanLiteral protected class Literal_BooleanLiteralParserRuleCall_0 extends RuleCallToken { public Literal_BooleanLiteralParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getLiteralAccess().getBooleanLiteralParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new BooleanLiteral_BooleanValueAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getBooleanLiteralRule().getType().getClassifier()) return null; if(checkForRecursion(BooleanLiteral_BooleanValueAssignment.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); } } } // FloatLiteral protected class Literal_FloatLiteralParserRuleCall_1 extends RuleCallToken { public Literal_FloatLiteralParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getLiteralAccess().getFloatLiteralParserRuleCall_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new FloatLiteral_FloatValueAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getFloatLiteralRule().getType().getClassifier()) return null; if(checkForRecursion(FloatLiteral_FloatValueAssignment.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); } } } // IntLiteral protected class Literal_IntLiteralParserRuleCall_2 extends RuleCallToken { public Literal_IntLiteralParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getLiteralAccess().getIntLiteralParserRuleCall_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new IntLiteral_IntValueAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getIntLiteralRule().getType().getClassifier()) return null; if(checkForRecursion(IntLiteral_IntValueAssignment.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); } } } // StringLiteral protected class Literal_StringLiteralParserRuleCall_3 extends RuleCallToken { public Literal_StringLiteralParserRuleCall_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new StringLiteral_StringValueAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getStringLiteralRule().getType().getClassifier()) return null; if(checkForRecursion(StringLiteral_StringValueAssignment.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); } } } // UriLiteral protected class Literal_UriLiteralParserRuleCall_4 extends RuleCallToken { public Literal_UriLiteralParserRuleCall_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getLiteralAccess().getUriLiteralParserRuleCall_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new UriLiteral_UriAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getUriLiteralRule().getType().getClassifier()) return null; if(checkForRecursion(UriLiteral_UriAssignment.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); } } } // EObjectUriLiteral protected class Literal_EObjectUriLiteralParserRuleCall_5 extends RuleCallToken { public Literal_EObjectUriLiteralParserRuleCall_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getLiteralAccess().getEObjectUriLiteralParserRuleCall_5(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new EObjectUriLiteral_UriAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getEObjectUriLiteralRule().getType().getClassifier()) return null; if(checkForRecursion(EObjectUriLiteral_UriAssignment.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); } } } // DelayLiteral protected class Literal_DelayLiteralParserRuleCall_6 extends RuleCallToken { public Literal_DelayLiteralParserRuleCall_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getLiteralAccess().getDelayLiteralParserRuleCall_6(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new DelayLiteral_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getDelayLiteralRule().getType().getClassifier()) return null; if(checkForRecursion(DelayLiteral_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 Literal ****************/ /************ begin Rule BooleanLiteral **************** * * BooleanLiteral: * booleanValue=BOOLEAN_LITERAL; * **/ // booleanValue=BOOLEAN_LITERAL protected class BooleanLiteral_BooleanValueAssignment extends AssignmentToken { public BooleanLiteral_BooleanValueAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getBooleanLiteralAccess().getBooleanValueAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getBooleanLiteralRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("booleanValue",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("booleanValue"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getBooleanLiteralAccess().getBooleanValueBOOLEAN_LITERALParserRuleCall_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getBooleanLiteralAccess().getBooleanValueBOOLEAN_LITERALParserRuleCall_0(); return obj; } return null; } } /************ end Rule BooleanLiteral ****************/ /************ begin Rule IntLiteral **************** * * IntLiteral: * intValue=(INT | POS_INT | NEG_INT); * **/ // intValue=(INT | POS_INT | NEG_INT) protected class IntLiteral_IntValueAssignment extends AssignmentToken { public IntLiteral_IntValueAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getIntLiteralAccess().getIntValueAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getIntLiteralRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("intValue",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("intValue"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getIntLiteralAccess().getIntValueINTTerminalRuleCall_0_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getIntLiteralAccess().getIntValueINTTerminalRuleCall_0_0(); return obj; } if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getIntLiteralAccess().getIntValuePOS_INTParserRuleCall_0_1(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getIntLiteralAccess().getIntValuePOS_INTParserRuleCall_0_1(); return obj; } if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getIntLiteralAccess().getIntValueNEG_INTParserRuleCall_0_2(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getIntLiteralAccess().getIntValueNEG_INTParserRuleCall_0_2(); return obj; } return null; } } /************ end Rule IntLiteral ****************/ /************ begin Rule FloatLiteral **************** * * FloatLiteral: * floatValue=FLOAT_LITERAL; * **/ // floatValue=FLOAT_LITERAL protected class FloatLiteral_FloatValueAssignment extends AssignmentToken { public FloatLiteral_FloatValueAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getFloatLiteralAccess().getFloatValueAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getFloatLiteralRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("floatValue",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("floatValue"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getFloatLiteralAccess().getFloatValueFLOAT_LITERALParserRuleCall_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getFloatLiteralAccess().getFloatValueFLOAT_LITERALParserRuleCall_0(); return obj; } return null; } } /************ end Rule FloatLiteral ****************/ /************ begin Rule StringLiteral **************** * * StringLiteral: * stringValue=STRING; * **/ // stringValue=STRING protected class StringLiteral_StringValueAssignment extends AssignmentToken { public StringLiteral_StringValueAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getStringLiteralAccess().getStringValueAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getStringLiteralRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("stringValue",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("stringValue"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getStringLiteralAccess().getStringValueSTRINGTerminalRuleCall_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getStringLiteralAccess().getStringValueSTRINGTerminalRuleCall_0(); return obj; } return null; } } /************ end Rule StringLiteral ****************/ /************ begin Rule UriLiteral **************** * * UriLiteral: * uri=URI_LITERAL; * **/ // uri=URI_LITERAL protected class UriLiteral_UriAssignment extends AssignmentToken { public UriLiteral_UriAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getUriLiteralAccess().getUriAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getUriLiteralRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("uri",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("uri"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getUriLiteralAccess().getUriURI_LITERALTerminalRuleCall_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getUriLiteralAccess().getUriURI_LITERALTerminalRuleCall_0(); return obj; } return null; } } /************ end Rule UriLiteral ****************/ /************ begin Rule EObjectUriLiteral **************** * * EObjectUriLiteral: * uri=EOBJECT_URI_LITERAL; * **/ // uri=EOBJECT_URI_LITERAL protected class EObjectUriLiteral_UriAssignment extends AssignmentToken { public EObjectUriLiteral_UriAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getEObjectUriLiteralAccess().getUriAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getEObjectUriLiteralRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("uri",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("uri"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getEObjectUriLiteralAccess().getUriEOBJECT_URI_LITERALTerminalRuleCall_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getEObjectUriLiteralAccess().getUriEOBJECT_URI_LITERALTerminalRuleCall_0(); return obj; } return null; } } /************ end Rule EObjectUriLiteral ****************/ /************ begin Rule DelayLiteral **************** * * DelayLiteral: * intValue=INT timeUnit=TimeUnit; * **/ // intValue=INT timeUnit=TimeUnit protected class DelayLiteral_Group extends GroupToken { public DelayLiteral_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getDelayLiteralAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new DelayLiteral_TimeUnitAssignment_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getDelayLiteralRule().getType().getClassifier()) return null; return eObjectConsumer; } } // intValue=INT protected class DelayLiteral_IntValueAssignment_0 extends AssignmentToken { public DelayLiteral_IntValueAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getDelayLiteralAccess().getIntValueAssignment_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("intValue",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("intValue"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getDelayLiteralAccess().getIntValueINTTerminalRuleCall_0_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getDelayLiteralAccess().getIntValueINTTerminalRuleCall_0_0(); return obj; } return null; } } // timeUnit=TimeUnit protected class DelayLiteral_TimeUnitAssignment_1 extends AssignmentToken { public DelayLiteral_TimeUnitAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getDelayLiteralAccess().getTimeUnitAssignment_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new DelayLiteral_IntValueAssignment_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("timeUnit",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("timeUnit"); if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getDelayLiteralAccess().getTimeUnitTimeUnitEnumRuleCall_1_0(), value, null)) { type = AssignmentType.ENUM_RULE_CALL; element = grammarAccess.getDelayLiteralAccess().getTimeUnitTimeUnitEnumRuleCall_1_0(); return obj; } return null; } } /************ end Rule DelayLiteral ****************/ /************ begin Rule VarRef **************** * * VarRef: * var=[VarDef|QNAME]; * **/ // var=[VarDef|QNAME] protected class VarRef_VarAssignment extends AssignmentToken { public VarRef_VarAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getVarRefAccess().getVarAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getVarRefRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("var",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("var"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getVarRefAccess().getVarVarDefCrossReference_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getVarRefAccess().getVarVarDefCrossReference_0(); return obj; } } return null; } } /************ end Rule VarRef ****************/ /************ begin Rule EPath **************** * * EPath: * var=VarRef steps+=EStep*; * **/ // var=VarRef steps+=EStep* protected class EPath_Group extends GroupToken { public EPath_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getEPathAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new EPath_StepsAssignment_1(lastRuleCallOrigin, this, 0, inst); case 1: return new EPath_VarAssignment_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getEPathRule().getType().getClassifier()) return null; return eObjectConsumer; } } // var=VarRef protected class EPath_VarAssignment_0 extends AssignmentToken { public EPath_VarAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getEPathAccess().getVarAssignment_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new VarRef_VarAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("var",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("var"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getVarRefRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getEPathAccess().getVarVarRefParserRuleCall_0_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) { default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, consumed); } } } // steps+=EStep* protected class EPath_StepsAssignment_1 extends AssignmentToken { public EPath_StepsAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getEPathAccess().getStepsAssignment_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new EStep_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("steps",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("steps"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getEStepRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getEPathAccess().getStepsEStepParserRuleCall_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 EPath_StepsAssignment_1(lastRuleCallOrigin, next, actIndex, consumed); case 1: return new EPath_VarAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } /************ end Rule EPath ****************/ /************ begin Rule EStep **************** * * EStep: * "/ " featureName=ID filter=EStepFilter?; * **/ // "/ " featureName=ID filter=EStepFilter? protected class EStep_Group extends GroupToken { public EStep_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getEStepAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new EStep_FilterAssignment_2(lastRuleCallOrigin, this, 0, inst); case 1: return new EStep_FeatureNameAssignment_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getEStepRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "/ " protected class EStep_SolidusSpaceKeyword_0 extends KeywordToken { public EStep_SolidusSpaceKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getEStepAccess().getSolidusSpaceKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // featureName=ID protected class EStep_FeatureNameAssignment_1 extends AssignmentToken { public EStep_FeatureNameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getEStepAccess().getFeatureNameAssignment_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new EStep_SolidusSpaceKeyword_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("featureName",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("featureName"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getEStepAccess().getFeatureNameIDTerminalRuleCall_1_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getEStepAccess().getFeatureNameIDTerminalRuleCall_1_0(); return obj; } return null; } } // filter=EStepFilter? protected class EStep_FilterAssignment_2 extends AssignmentToken { public EStep_FilterAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getEStepAccess().getFilterAssignment_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new EStepFilter_ScriptAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("filter",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("filter"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getEStepFilterRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getEStepAccess().getFilterEStepFilterParserRuleCall_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 EStep_FeatureNameAssignment_1(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } /************ end Rule EStep ****************/ /************ begin Rule EStepFilter **************** * * EStepFilter: * script=ScriptExpression; * **/ // script=ScriptExpression protected class EStepFilter_ScriptAssignment extends AssignmentToken { public EStepFilter_ScriptAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getEStepFilterAccess().getScriptAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ScriptExpression_ScriptAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getEStepFilterRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("script",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("script"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getScriptExpressionRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getEStepFilterAccess().getScriptScriptExpressionParserRuleCall_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) { default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, consumed); } } } /************ end Rule EStepFilter ****************/ /************ begin Rule ScriptExpression **************** * * ScriptExpression: * script=SCRIPT_EXPRESSION; * **/ // script=SCRIPT_EXPRESSION protected class ScriptExpression_ScriptAssignment extends AssignmentToken { public ScriptExpression_ScriptAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getScriptExpressionAccess().getScriptAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getScriptExpressionRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("script",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("script"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getScriptExpressionAccess().getScriptSCRIPT_EXPRESSIONTerminalRuleCall_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getScriptExpressionAccess().getScriptSCRIPT_EXPRESSIONTerminalRuleCall_0(); return obj; } return null; } } /************ end Rule ScriptExpression ****************/ }