diff options
Diffstat (limited to 'plugins/org.eclipse.osee.framework.core.dsl/src-gen/org/eclipse/osee/framework/core/dsl/parseTreeConstruction/OseeDslParsetreeConstructor.java')
-rw-r--r-- | plugins/org.eclipse.osee.framework.core.dsl/src-gen/org/eclipse/osee/framework/core/dsl/parseTreeConstruction/OseeDslParsetreeConstructor.java | 19669 |
1 files changed, 10359 insertions, 9310 deletions
diff --git a/plugins/org.eclipse.osee.framework.core.dsl/src-gen/org/eclipse/osee/framework/core/dsl/parseTreeConstruction/OseeDslParsetreeConstructor.java b/plugins/org.eclipse.osee.framework.core.dsl/src-gen/org/eclipse/osee/framework/core/dsl/parseTreeConstruction/OseeDslParsetreeConstructor.java index 47feebae4f4..b2902c773b2 100644 --- a/plugins/org.eclipse.osee.framework.core.dsl/src-gen/org/eclipse/osee/framework/core/dsl/parseTreeConstruction/OseeDslParsetreeConstructor.java +++ b/plugins/org.eclipse.osee.framework.core.dsl/src-gen/org/eclipse/osee/framework/core/dsl/parseTreeConstruction/OseeDslParsetreeConstructor.java @@ -3,9320 +3,10369 @@ */ package org.eclipse.osee.framework.core.dsl.parseTreeConstruction; -import org.eclipse.emf.ecore.*; -import org.eclipse.xtext.*; -import org.eclipse.xtext.parsetree.reconstr.IEObjectConsumer; - -import org.eclipse.osee.framework.core.dsl.services.OseeDslGrammarAccess; - import com.google.inject.Inject; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.osee.framework.core.dsl.services.OseeDslGrammarAccess; +import org.eclipse.xtext.Alternatives; +import org.eclipse.xtext.Assignment; +import org.eclipse.xtext.Group; +import org.eclipse.xtext.Keyword; +import org.eclipse.xtext.RuleCall; +import org.eclipse.xtext.UnorderedGroup; +import org.eclipse.xtext.parsetree.reconstr.IEObjectConsumer; @SuppressWarnings("all") public class OseeDslParsetreeConstructor extends org.eclipse.xtext.parsetree.reconstr.impl.AbstractParseTreeConstructor { - - @Inject - private OseeDslGrammarAccess 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 OseeDsl_Group(this, this, 0, inst); - case 1: return new Import_Group(this, this, 1, inst); - case 2: return new OseeElement_Alternatives(this, this, 2, inst); - case 3: return new OseeType_Alternatives(this, this, 3, inst); - case 4: return new XArtifactType_Group(this, this, 4, inst); - case 5: return new XAttributeTypeRef_Group(this, this, 5, inst); - case 6: return new XAttributeType_Group(this, this, 6, inst); - case 7: return new XOseeEnumType_Group(this, this, 7, inst); - case 8: return new XOseeEnumEntry_Group(this, this, 8, inst); - case 9: return new XOseeEnumOverride_Group(this, this, 9, inst); - case 10: return new OverrideOption_Alternatives(this, this, 10, inst); - case 11: return new AddEnum_Group(this, this, 11, inst); - case 12: return new RemoveEnum_Group(this, this, 12, inst); - case 13: return new XOseeArtifactTypeOverride_Group(this, this, 13, inst); - case 14: return new AttributeOverrideOption_Alternatives(this, this, 14, inst); - case 15: return new AddAttribute_Group(this, this, 15, inst); - case 16: return new RemoveAttribute_Group(this, this, 16, inst); - case 17: return new UpdateAttribute_Group(this, this, 17, inst); - case 18: return new XRelationType_Group(this, this, 18, inst); - case 19: return new Condition_Alternatives(this, this, 19, inst); - case 20: return new SimpleCondition_Group(this, this, 20, inst); - case 21: return new CompoundCondition_Group(this, this, 21, inst); - case 22: return new XArtifactMatcher_Group(this, this, 22, inst); - case 23: return new Role_Group(this, this, 23, inst); - case 24: return new ReferencedContext_Group(this, this, 24, inst); - case 25: return new UsersAndGroups_Group(this, this, 25, inst); - case 26: return new AccessContext_Group(this, this, 26, inst); - case 27: return new HierarchyRestriction_Group(this, this, 27, inst); - case 28: return new RelationTypeArtifactTypePredicate_Group(this, this, 28, inst); - case 29: return new RelationTypeArtifactPredicate_Group(this, this, 29, inst); - case 30: return new RelationTypePredicate_Alternatives(this, this, 30, inst); - case 31: return new ObjectRestriction_Alternatives(this, this, 31, inst); - case 32: return new ArtifactMatchRestriction_Group(this, this, 32, inst); - case 33: return new ArtifactTypeRestriction_Group(this, this, 33, inst); - case 34: return new AttributeTypeRestriction_Group(this, this, 34, inst); - case 35: return new LegacyRelationTypeRestriction_Group(this, this, 35, inst); - case 36: return new RelationTypeRestriction_Group(this, this, 36, inst); - default: return null; - } - } -} - - -/************ begin Rule OseeDsl **************** - * - * OseeDsl: - * imports+=Import* (artifactTypes+=XArtifactType | relationTypes+=XRelationType | attributeTypes+=XAttributeType | - * enumTypes+=XOseeEnumType | enumOverrides+=XOseeEnumOverride | artifactTypeOverrides+=XOseeArtifactTypeOverride)* - * (artifactMatchRefs+=XArtifactMatcher | accessDeclarations+=AccessContext | roleDeclarations+=Role)*; - * - **/ - -// imports+=Import* (artifactTypes+=XArtifactType | relationTypes+=XRelationType | attributeTypes+=XAttributeType | -// enumTypes+=XOseeEnumType | enumOverrides+=XOseeEnumOverride | artifactTypeOverrides+=XOseeArtifactTypeOverride)* -// (artifactMatchRefs+=XArtifactMatcher | accessDeclarations+=AccessContext | roleDeclarations+=Role)* -protected class OseeDsl_Group extends GroupToken { - - public OseeDsl_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getOseeDslAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new OseeDsl_Alternatives_2(lastRuleCallOrigin, this, 0, inst); - case 1: return new OseeDsl_Alternatives_1(lastRuleCallOrigin, this, 1, inst); - case 2: return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, this, 2, inst); - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index - 3, inst); - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getOseeDslRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// imports+=Import* -protected class OseeDsl_ImportsAssignment_0 extends AssignmentToken { - - public OseeDsl_ImportsAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getOseeDslAccess().getImportsAssignment_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Import_Group(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.getImportRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getOseeDslAccess().getImportsImportParserRuleCall_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 OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 1, consumed); - } - } -} - -// (artifactTypes+=XArtifactType | relationTypes+=XRelationType | attributeTypes+=XAttributeType | enumTypes+=XOseeEnumType -// | enumOverrides+=XOseeEnumOverride | artifactTypeOverrides+=XOseeArtifactTypeOverride)* -protected class OseeDsl_Alternatives_1 extends AlternativesToken { - - public OseeDsl_Alternatives_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Alternatives getGrammarElement() { - return grammarAccess.getOseeDslAccess().getAlternatives_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new OseeDsl_ArtifactTypesAssignment_1_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new OseeDsl_RelationTypesAssignment_1_1(lastRuleCallOrigin, this, 1, inst); - case 2: return new OseeDsl_AttributeTypesAssignment_1_2(lastRuleCallOrigin, this, 2, inst); - case 3: return new OseeDsl_EnumTypesAssignment_1_3(lastRuleCallOrigin, this, 3, inst); - case 4: return new OseeDsl_EnumOverridesAssignment_1_4(lastRuleCallOrigin, this, 4, inst); - case 5: return new OseeDsl_ArtifactTypeOverridesAssignment_1_5(lastRuleCallOrigin, this, 5, inst); - default: return null; - } - } - -} - -// artifactTypes+=XArtifactType -protected class OseeDsl_ArtifactTypesAssignment_1_0 extends AssignmentToken { - - public OseeDsl_ArtifactTypesAssignment_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getOseeDslAccess().getArtifactTypesAssignment_1_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("artifactTypes",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactTypes"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXArtifactTypeRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getOseeDslAccess().getArtifactTypesXArtifactTypeParserRuleCall_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 OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 2, consumed); - } - } -} - -// relationTypes+=XRelationType -protected class OseeDsl_RelationTypesAssignment_1_1 extends AssignmentToken { - - public OseeDsl_RelationTypesAssignment_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getOseeDslAccess().getRelationTypesAssignment_1_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("relationTypes",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationTypes"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXRelationTypeRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getOseeDslAccess().getRelationTypesXRelationTypeParserRuleCall_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 OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 2, consumed); - } - } -} - -// attributeTypes+=XAttributeType -protected class OseeDsl_AttributeTypesAssignment_1_2 extends AssignmentToken { - - public OseeDsl_AttributeTypesAssignment_1_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getOseeDslAccess().getAttributeTypesAssignment_1_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("attributeTypes",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("attributeTypes"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXAttributeTypeRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getOseeDslAccess().getAttributeTypesXAttributeTypeParserRuleCall_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 OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 2, consumed); - } - } -} - -// enumTypes+=XOseeEnumType -protected class OseeDsl_EnumTypesAssignment_1_3 extends AssignmentToken { - - public OseeDsl_EnumTypesAssignment_1_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getOseeDslAccess().getEnumTypesAssignment_1_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumType_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("enumTypes",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("enumTypes"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXOseeEnumTypeRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getOseeDslAccess().getEnumTypesXOseeEnumTypeParserRuleCall_1_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 OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 2, consumed); - } - } -} - -// enumOverrides+=XOseeEnumOverride -protected class OseeDsl_EnumOverridesAssignment_1_4 extends AssignmentToken { - - public OseeDsl_EnumOverridesAssignment_1_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getOseeDslAccess().getEnumOverridesAssignment_1_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumOverride_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("enumOverrides",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("enumOverrides"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXOseeEnumOverrideRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getOseeDslAccess().getEnumOverridesXOseeEnumOverrideParserRuleCall_1_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 OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 2, consumed); - } - } -} - -// artifactTypeOverrides+=XOseeArtifactTypeOverride -protected class OseeDsl_ArtifactTypeOverridesAssignment_1_5 extends AssignmentToken { - - public OseeDsl_ArtifactTypeOverridesAssignment_1_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getOseeDslAccess().getArtifactTypeOverridesAssignment_1_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeArtifactTypeOverride_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("artifactTypeOverrides",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactTypeOverrides"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXOseeArtifactTypeOverrideRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getOseeDslAccess().getArtifactTypeOverridesXOseeArtifactTypeOverrideParserRuleCall_1_5_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 OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 2, consumed); - } - } -} - - -// (artifactMatchRefs+=XArtifactMatcher | accessDeclarations+=AccessContext | roleDeclarations+=Role)* -protected class OseeDsl_Alternatives_2 extends AlternativesToken { - - public OseeDsl_Alternatives_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Alternatives getGrammarElement() { - return grammarAccess.getOseeDslAccess().getAlternatives_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new OseeDsl_ArtifactMatchRefsAssignment_2_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new OseeDsl_AccessDeclarationsAssignment_2_1(lastRuleCallOrigin, this, 1, inst); - case 2: return new OseeDsl_RoleDeclarationsAssignment_2_2(lastRuleCallOrigin, this, 2, inst); - default: return null; - } - } - -} - -// artifactMatchRefs+=XArtifactMatcher -protected class OseeDsl_ArtifactMatchRefsAssignment_2_0 extends AssignmentToken { - - public OseeDsl_ArtifactMatchRefsAssignment_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getOseeDslAccess().getArtifactMatchRefsAssignment_2_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactMatcher_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("artifactMatchRefs",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactMatchRefs"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXArtifactMatcherRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getOseeDslAccess().getArtifactMatchRefsXArtifactMatcherParserRuleCall_2_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 OseeDsl_Alternatives_2(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); - case 2: return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 3, consumed); - } - } -} - -// accessDeclarations+=AccessContext -protected class OseeDsl_AccessDeclarationsAssignment_2_1 extends AssignmentToken { - - public OseeDsl_AccessDeclarationsAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getOseeDslAccess().getAccessDeclarationsAssignment_2_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AccessContext_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("accessDeclarations",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("accessDeclarations"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getAccessContextRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getOseeDslAccess().getAccessDeclarationsAccessContextParserRuleCall_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 OseeDsl_Alternatives_2(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); - case 2: return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 3, consumed); - } - } -} - -// roleDeclarations+=Role -protected class OseeDsl_RoleDeclarationsAssignment_2_2 extends AssignmentToken { - - public OseeDsl_RoleDeclarationsAssignment_2_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getOseeDslAccess().getRoleDeclarationsAssignment_2_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Role_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("roleDeclarations",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("roleDeclarations"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getRoleRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getOseeDslAccess().getRoleDeclarationsRoleParserRuleCall_2_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 OseeDsl_Alternatives_2(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); - case 2: return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index - 3, consumed); - } - } -} - - - -/************ end Rule OseeDsl ****************/ - - -/************ begin Rule Import **************** - * - * Import: - * "import" importURI=STRING; - * - **/ - -// "import" importURI=STRING -protected class Import_Group extends GroupToken { - - public Import_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getImportAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Import_ImportURIAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getImportRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "import" -protected class Import_ImportKeyword_0 extends KeywordToken { - - public Import_ImportKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getImportAccess().getImportKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// importURI=STRING -protected class Import_ImportURIAssignment_1 extends AssignmentToken { - - public Import_ImportURIAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getImportAccess().getImportURIAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Import_ImportKeyword_0(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.getImportAccess().getImportURISTRINGTerminalRuleCall_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_1_0(); - return obj; - } - return null; - } - -} - - -/************ end Rule Import ****************/ - - - -/************ begin Rule OseeElement **************** - * - * /////////////////////////////////////// - * // OSEE TYPE MODEL // - * - * /////////////////////////////////////// - * OseeElement: - * XOseeEnumOverride | OseeType; - * - **/ - -// XOseeEnumOverride | OseeType -protected class OseeElement_Alternatives extends AlternativesToken { - - public OseeElement_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Alternatives getGrammarElement() { - return grammarAccess.getOseeElementAccess().getAlternatives(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new OseeElement_XOseeEnumOverrideParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new OseeElement_OseeTypeParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXArtifactTypeRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getXAttributeTypeRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getXOseeEnumOverrideRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getXOseeEnumTypeRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getXRelationTypeRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// XOseeEnumOverride -protected class OseeElement_XOseeEnumOverrideParserRuleCall_0 extends RuleCallToken { - - public OseeElement_XOseeEnumOverrideParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getOseeElementAccess().getXOseeEnumOverrideParserRuleCall_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumOverride_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXOseeEnumOverrideRule().getType().getClassifier()) - return null; - if(checkForRecursion(XOseeEnumOverride_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); - } - } -} - -// OseeType -protected class OseeElement_OseeTypeParserRuleCall_1 extends RuleCallToken { - - public OseeElement_OseeTypeParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getOseeElementAccess().getOseeTypeParserRuleCall_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new OseeType_Alternatives(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXArtifactTypeRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getXAttributeTypeRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getXOseeEnumTypeRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getXRelationTypeRule().getType().getClassifier()) - return null; - if(checkForRecursion(OseeType_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); - } - } -} - - -/************ end Rule OseeElement ****************/ - - -/************ begin Rule OseeType **************** - * - * OseeType: - * XArtifactType | XRelationType | XAttributeType | XOseeEnumType; - * - **/ - -// XArtifactType | XRelationType | XAttributeType | XOseeEnumType -protected class OseeType_Alternatives extends AlternativesToken { - - public OseeType_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Alternatives getGrammarElement() { - return grammarAccess.getOseeTypeAccess().getAlternatives(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new OseeType_XArtifactTypeParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new OseeType_XRelationTypeParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); - case 2: return new OseeType_XAttributeTypeParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); - case 3: return new OseeType_XOseeEnumTypeParserRuleCall_3(lastRuleCallOrigin, this, 3, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXArtifactTypeRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getXAttributeTypeRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getXOseeEnumTypeRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getXRelationTypeRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// XArtifactType -protected class OseeType_XArtifactTypeParserRuleCall_0 extends RuleCallToken { - - public OseeType_XArtifactTypeParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getOseeTypeAccess().getXArtifactTypeParserRuleCall_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXArtifactTypeRule().getType().getClassifier()) - return null; - if(checkForRecursion(XArtifactType_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); - } - } -} - -// XRelationType -protected class OseeType_XRelationTypeParserRuleCall_1 extends RuleCallToken { - - public OseeType_XRelationTypeParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getOseeTypeAccess().getXRelationTypeParserRuleCall_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXRelationTypeRule().getType().getClassifier()) - return null; - if(checkForRecursion(XRelationType_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); - } - } -} - -// XAttributeType -protected class OseeType_XAttributeTypeParserRuleCall_2 extends RuleCallToken { - - public OseeType_XAttributeTypeParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getOseeTypeAccess().getXAttributeTypeParserRuleCall_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXAttributeTypeRule().getType().getClassifier()) - return null; - if(checkForRecursion(XAttributeType_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); - } - } -} - -// XOseeEnumType -protected class OseeType_XOseeEnumTypeParserRuleCall_3 extends RuleCallToken { - - public OseeType_XOseeEnumTypeParserRuleCall_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getOseeTypeAccess().getXOseeEnumTypeParserRuleCall_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumType_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXOseeEnumTypeRule().getType().getClassifier()) - return null; - if(checkForRecursion(XOseeEnumType_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 OseeType ****************/ - - -/************ begin Rule XArtifactType **************** - * - * XArtifactType: - * abstract?="abstract"? "artifactType" name=STRING ("extends" superArtifactTypes+=[XArtifactType|STRING] ("," - * superArtifactTypes+=[XArtifactType|STRING])*)? "{" ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT - * validAttributeTypes+=XAttributeTypeRef* "}"; - * - **/ - -// abstract?="abstract"? "artifactType" name=STRING ("extends" superArtifactTypes+=[XArtifactType|STRING] ("," -// superArtifactTypes+=[XArtifactType|STRING])*)? "{" ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT -// validAttributeTypes+=XAttributeTypeRef* "}" -protected class XArtifactType_Group extends GroupToken { - - public XArtifactType_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_RightCurlyBracketKeyword_9(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXArtifactTypeRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// abstract?="abstract"? -protected class XArtifactType_AbstractAssignment_0 extends AssignmentToken { - - public XArtifactType_AbstractAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getAbstractAssignment_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("abstract",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("abstract"); - if(Boolean.TRUE.equals(value)) { // org::eclipse::xtext::impl::KeywordImpl - type = AssignmentType.KEYWORD; - element = grammarAccess.getXArtifactTypeAccess().getAbstractAbstractKeyword_0_0(); - return obj; - } - return null; - } - -} - -// "artifactType" -protected class XArtifactType_ArtifactTypeKeyword_1 extends KeywordToken { - - public XArtifactType_ArtifactTypeKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getArtifactTypeKeyword_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_AbstractAssignment_0(lastRuleCallOrigin, this, 0, inst); - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index - 1, inst); - } - } - -} - -// name=STRING -protected class XArtifactType_NameAssignment_2 extends AssignmentToken { - - public XArtifactType_NameAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getNameAssignment_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_ArtifactTypeKeyword_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("name",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXArtifactTypeAccess().getNameSTRINGTerminalRuleCall_2_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXArtifactTypeAccess().getNameSTRINGTerminalRuleCall_2_0(); - return obj; - } - return null; - } - -} - -// ("extends" superArtifactTypes+=[XArtifactType|STRING] ("," superArtifactTypes+=[XArtifactType|STRING])*)? -protected class XArtifactType_Group_3 extends GroupToken { - - public XArtifactType_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getGroup_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_Group_3_2(lastRuleCallOrigin, this, 0, inst); - case 1: return new XArtifactType_SuperArtifactTypesAssignment_3_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// "extends" -protected class XArtifactType_ExtendsKeyword_3_0 extends KeywordToken { - - public XArtifactType_ExtendsKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getExtendsKeyword_3_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_NameAssignment_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// superArtifactTypes+=[XArtifactType|STRING] -protected class XArtifactType_SuperArtifactTypesAssignment_3_1 extends AssignmentToken { - - public XArtifactType_SuperArtifactTypesAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getSuperArtifactTypesAssignment_3_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_ExtendsKeyword_3_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("superArtifactTypes",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("superArtifactTypes"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXArtifactTypeAccess().getSuperArtifactTypesXArtifactTypeCrossReference_3_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getXArtifactTypeAccess().getSuperArtifactTypesXArtifactTypeCrossReference_3_1_0(); - return obj; - } - } - return null; - } - -} - -// ("," superArtifactTypes+=[XArtifactType|STRING])* -protected class XArtifactType_Group_3_2 extends GroupToken { - - public XArtifactType_Group_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getGroup_3_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_SuperArtifactTypesAssignment_3_2_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "," -protected class XArtifactType_CommaKeyword_3_2_0 extends KeywordToken { - - public XArtifactType_CommaKeyword_3_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getCommaKeyword_3_2_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_Group_3_2(lastRuleCallOrigin, this, 0, inst); - case 1: return new XArtifactType_SuperArtifactTypesAssignment_3_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// superArtifactTypes+=[XArtifactType|STRING] -protected class XArtifactType_SuperArtifactTypesAssignment_3_2_1 extends AssignmentToken { - - public XArtifactType_SuperArtifactTypesAssignment_3_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getSuperArtifactTypesAssignment_3_2_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_CommaKeyword_3_2_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("superArtifactTypes",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("superArtifactTypes"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXArtifactTypeAccess().getSuperArtifactTypesXArtifactTypeCrossReference_3_2_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getXArtifactTypeAccess().getSuperArtifactTypesXArtifactTypeCrossReference_3_2_1_0(); - return obj; - } - } - return null; - } - -} - - - -// "{" -protected class XArtifactType_LeftCurlyBracketKeyword_4 extends KeywordToken { - - public XArtifactType_LeftCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getLeftCurlyBracketKeyword_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_Group_3(lastRuleCallOrigin, this, 0, inst); - case 1: return new XArtifactType_NameAssignment_2(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// ("guid" typeGuid=STRING)? -protected class XArtifactType_Group_5 extends GroupToken { - - public XArtifactType_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getGroup_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_TypeGuidAssignment_5_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "guid" -protected class XArtifactType_GuidKeyword_5_0 extends KeywordToken { - - public XArtifactType_GuidKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getGuidKeyword_5_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// typeGuid=STRING -protected class XArtifactType_TypeGuidAssignment_5_1 extends AssignmentToken { - - public XArtifactType_TypeGuidAssignment_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getTypeGuidAssignment_5_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_GuidKeyword_5_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("typeGuid",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("typeGuid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXArtifactTypeAccess().getTypeGuidSTRINGTerminalRuleCall_5_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXArtifactTypeAccess().getTypeGuidSTRINGTerminalRuleCall_5_1_0(); - return obj; - } - return null; - } - -} - - -// "uuid" -protected class XArtifactType_UuidKeyword_6 extends KeywordToken { - - public XArtifactType_UuidKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getUuidKeyword_6(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_Group_5(lastRuleCallOrigin, this, 0, inst); - case 1: return new XArtifactType_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// uuid=HEX_INT -protected class XArtifactType_UuidAssignment_7 extends AssignmentToken { - - public XArtifactType_UuidAssignment_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getUuidAssignment_7(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_UuidKeyword_6(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("uuid",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("uuid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXArtifactTypeAccess().getUuidHEX_INTTerminalRuleCall_7_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXArtifactTypeAccess().getUuidHEX_INTTerminalRuleCall_7_0(); - return obj; - } - return null; - } - -} - -// validAttributeTypes+=XAttributeTypeRef* -protected class XArtifactType_ValidAttributeTypesAssignment_8 extends AssignmentToken { - - public XArtifactType_ValidAttributeTypesAssignment_8(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getValidAttributeTypesAssignment_8(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeTypeRef_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("validAttributeTypes",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("validAttributeTypes"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXAttributeTypeRefRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getXArtifactTypeAccess().getValidAttributeTypesXAttributeTypeRefParserRuleCall_8_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 XArtifactType_ValidAttributeTypesAssignment_8(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new XArtifactType_UuidAssignment_7(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - -// "}" -protected class XArtifactType_RightCurlyBracketKeyword_9 extends KeywordToken { - - public XArtifactType_RightCurlyBracketKeyword_9(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXArtifactTypeAccess().getRightCurlyBracketKeyword_9(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactType_ValidAttributeTypesAssignment_8(lastRuleCallOrigin, this, 0, inst); - case 1: return new XArtifactType_UuidAssignment_7(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - - -/************ end Rule XArtifactType ****************/ - - -/************ begin Rule XAttributeTypeRef **************** - * - * XAttributeTypeRef: - * "attribute" validAttributeType=[XAttributeType|STRING] ("branchUuid" branchUuid=WHOLE_NUM_STR)?; - * - **/ - -// "attribute" validAttributeType=[XAttributeType|STRING] ("branchUuid" branchUuid=WHOLE_NUM_STR)? -protected class XAttributeTypeRef_Group extends GroupToken { - - public XAttributeTypeRef_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXAttributeTypeRefAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeTypeRef_Group_2(lastRuleCallOrigin, this, 0, inst); - case 1: return new XAttributeTypeRef_ValidAttributeTypeAssignment_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXAttributeTypeRefRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "attribute" -protected class XAttributeTypeRef_AttributeKeyword_0 extends KeywordToken { - - public XAttributeTypeRef_AttributeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeRefAccess().getAttributeKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// validAttributeType=[XAttributeType|STRING] -protected class XAttributeTypeRef_ValidAttributeTypeAssignment_1 extends AssignmentToken { - - public XAttributeTypeRef_ValidAttributeTypeAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeRefAccess().getValidAttributeTypeAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeTypeRef_AttributeKeyword_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("validAttributeType",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("validAttributeType"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXAttributeTypeRefAccess().getValidAttributeTypeXAttributeTypeCrossReference_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getXAttributeTypeRefAccess().getValidAttributeTypeXAttributeTypeCrossReference_1_0(); - return obj; - } - } - return null; - } - -} - -// ("branchUuid" branchUuid=WHOLE_NUM_STR)? -protected class XAttributeTypeRef_Group_2 extends GroupToken { - - public XAttributeTypeRef_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXAttributeTypeRefAccess().getGroup_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeTypeRef_BranchUuidAssignment_2_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "branchUuid" -protected class XAttributeTypeRef_BranchUuidKeyword_2_0 extends KeywordToken { - - public XAttributeTypeRef_BranchUuidKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeRefAccess().getBranchUuidKeyword_2_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeTypeRef_ValidAttributeTypeAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// branchUuid=WHOLE_NUM_STR -protected class XAttributeTypeRef_BranchUuidAssignment_2_1 extends AssignmentToken { - - public XAttributeTypeRef_BranchUuidAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeRefAccess().getBranchUuidAssignment_2_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeTypeRef_BranchUuidKeyword_2_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("branchUuid",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("branchUuid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeRefAccess().getBranchUuidWHOLE_NUM_STRTerminalRuleCall_2_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXAttributeTypeRefAccess().getBranchUuidWHOLE_NUM_STRTerminalRuleCall_2_1_0(); - return obj; - } - return null; - } - -} - - - -/************ end Rule XAttributeTypeRef ****************/ - - -/************ begin Rule XAttributeType **************** - * - * XAttributeType: - * "attributeType" name=STRING ("extends" baseAttributeType=AttributeBaseType) ("overrides" - * override=[XAttributeType|STRING])? "{" ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT "dataProvider" - * dataProvider=("DefaultAttributeDataProvider" | "UriAttributeDataProvider" | QUALIFIED_NAME) "min" min=WHOLE_NUM_STR - * "max" max=(WHOLE_NUM_STR | "unlimited") (("taggerId" taggerId=("DefaultAttributeTaggerProvider" | QUALIFIED_NAME))? & - * ("enumType" enumType=[XOseeEnumType|STRING])? & ("description" description=STRING)? & ("defaultValue" - * defaultValue=STRING)? & ("fileExtension" fileExtension=STRING)? & ("mediaType" mediaType=STRING)?) "}"; - * - **/ - -// "attributeType" name=STRING ("extends" baseAttributeType=AttributeBaseType) ("overrides" -// override=[XAttributeType|STRING])? "{" ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT "dataProvider" -// dataProvider=("DefaultAttributeDataProvider" | "UriAttributeDataProvider" | QUALIFIED_NAME) "min" min=WHOLE_NUM_STR -// "max" max=(WHOLE_NUM_STR | "unlimited") (("taggerId" taggerId=("DefaultAttributeTaggerProvider" | QUALIFIED_NAME))? & -// ("enumType" enumType=[XOseeEnumType|STRING])? & ("description" description=STRING)? & ("defaultValue" -// defaultValue=STRING)? & ("fileExtension" fileExtension=STRING)? & ("mediaType" mediaType=STRING)?) "}" -protected class XAttributeType_Group extends GroupToken { - - public XAttributeType_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_RightCurlyBracketKeyword_15(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXAttributeTypeRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "attributeType" -protected class XAttributeType_AttributeTypeKeyword_0 extends KeywordToken { - - public XAttributeType_AttributeTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getAttributeTypeKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// name=STRING -protected class XAttributeType_NameAssignment_1 extends AssignmentToken { - - public XAttributeType_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getNameAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_AttributeTypeKeyword_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.getXAttributeTypeAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXAttributeTypeAccess().getNameSTRINGTerminalRuleCall_1_0(); - return obj; - } - return null; - } - -} - -// "extends" baseAttributeType=AttributeBaseType -protected class XAttributeType_Group_2 extends GroupToken { - - public XAttributeType_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getGroup_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_BaseAttributeTypeAssignment_2_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "extends" -protected class XAttributeType_ExtendsKeyword_2_0 extends KeywordToken { - - public XAttributeType_ExtendsKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getExtendsKeyword_2_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// baseAttributeType=AttributeBaseType -protected class XAttributeType_BaseAttributeTypeAssignment_2_1 extends AssignmentToken { - - public XAttributeType_BaseAttributeTypeAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getBaseAttributeTypeAssignment_2_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_ExtendsKeyword_2_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("baseAttributeType",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("baseAttributeType"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getBaseAttributeTypeAttributeBaseTypeParserRuleCall_2_1_0(), value, null)) { - type = AssignmentType.DATATYPE_RULE_CALL; - element = grammarAccess.getXAttributeTypeAccess().getBaseAttributeTypeAttributeBaseTypeParserRuleCall_2_1_0(); - return obj; - } - return null; - } - -} - - -// ("overrides" override=[XAttributeType|STRING])? -protected class XAttributeType_Group_3 extends GroupToken { - - public XAttributeType_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getGroup_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_OverrideAssignment_3_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "overrides" -protected class XAttributeType_OverridesKeyword_3_0 extends KeywordToken { - - public XAttributeType_OverridesKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getOverridesKeyword_3_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_Group_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// override=[XAttributeType|STRING] -protected class XAttributeType_OverrideAssignment_3_1 extends AssignmentToken { - - public XAttributeType_OverrideAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getOverrideAssignment_3_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_OverridesKeyword_3_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("override",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("override"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXAttributeTypeAccess().getOverrideXAttributeTypeCrossReference_3_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getXAttributeTypeAccess().getOverrideXAttributeTypeCrossReference_3_1_0(); - return obj; - } - } - return null; - } - -} - - -// "{" -protected class XAttributeType_LeftCurlyBracketKeyword_4 extends KeywordToken { - - public XAttributeType_LeftCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getLeftCurlyBracketKeyword_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_Group_3(lastRuleCallOrigin, this, 0, inst); - case 1: return new XAttributeType_Group_2(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// ("guid" typeGuid=STRING)? -protected class XAttributeType_Group_5 extends GroupToken { - - public XAttributeType_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getGroup_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_TypeGuidAssignment_5_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "guid" -protected class XAttributeType_GuidKeyword_5_0 extends KeywordToken { - - public XAttributeType_GuidKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getGuidKeyword_5_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// typeGuid=STRING -protected class XAttributeType_TypeGuidAssignment_5_1 extends AssignmentToken { - - public XAttributeType_TypeGuidAssignment_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getTypeGuidAssignment_5_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_GuidKeyword_5_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("typeGuid",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("typeGuid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getTypeGuidSTRINGTerminalRuleCall_5_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXAttributeTypeAccess().getTypeGuidSTRINGTerminalRuleCall_5_1_0(); - return obj; - } - return null; - } - -} - - -// "uuid" -protected class XAttributeType_UuidKeyword_6 extends KeywordToken { - - public XAttributeType_UuidKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getUuidKeyword_6(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_Group_5(lastRuleCallOrigin, this, 0, inst); - case 1: return new XAttributeType_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// uuid=HEX_INT -protected class XAttributeType_UuidAssignment_7 extends AssignmentToken { - - public XAttributeType_UuidAssignment_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getUuidAssignment_7(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_UuidKeyword_6(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("uuid",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("uuid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getUuidHEX_INTTerminalRuleCall_7_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXAttributeTypeAccess().getUuidHEX_INTTerminalRuleCall_7_0(); - return obj; - } - return null; - } - -} - -// "dataProvider" -protected class XAttributeType_DataProviderKeyword_8 extends KeywordToken { - - public XAttributeType_DataProviderKeyword_8(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getDataProviderKeyword_8(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_UuidAssignment_7(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// dataProvider=("DefaultAttributeDataProvider" | "UriAttributeDataProvider" | QUALIFIED_NAME) -protected class XAttributeType_DataProviderAssignment_9 extends AssignmentToken { - - public XAttributeType_DataProviderAssignment_9(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getDataProviderAssignment_9(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_DataProviderKeyword_8(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("dataProvider",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("dataProvider"); - if(keywordSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getDataProviderDefaultAttributeDataProviderKeyword_9_0_0(), value, null)) { - type = AssignmentType.KEYWORD; - element = grammarAccess.getXAttributeTypeAccess().getDataProviderDefaultAttributeDataProviderKeyword_9_0_0(); - return obj; - } - if(keywordSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getDataProviderUriAttributeDataProviderKeyword_9_0_1(), value, null)) { - type = AssignmentType.KEYWORD; - element = grammarAccess.getXAttributeTypeAccess().getDataProviderUriAttributeDataProviderKeyword_9_0_1(); - return obj; - } - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getDataProviderQUALIFIED_NAMEParserRuleCall_9_0_2(), value, null)) { - type = AssignmentType.DATATYPE_RULE_CALL; - element = grammarAccess.getXAttributeTypeAccess().getDataProviderQUALIFIED_NAMEParserRuleCall_9_0_2(); - return obj; - } - return null; - } - -} - -// "min" -protected class XAttributeType_MinKeyword_10 extends KeywordToken { - - public XAttributeType_MinKeyword_10(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getMinKeyword_10(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_DataProviderAssignment_9(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// min=WHOLE_NUM_STR -protected class XAttributeType_MinAssignment_11 extends AssignmentToken { - - public XAttributeType_MinAssignment_11(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getMinAssignment_11(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_MinKeyword_10(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("min",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("min"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getMinWHOLE_NUM_STRTerminalRuleCall_11_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXAttributeTypeAccess().getMinWHOLE_NUM_STRTerminalRuleCall_11_0(); - return obj; - } - return null; - } - -} - -// "max" -protected class XAttributeType_MaxKeyword_12 extends KeywordToken { - - public XAttributeType_MaxKeyword_12(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getMaxKeyword_12(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_MinAssignment_11(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// max=(WHOLE_NUM_STR | "unlimited") -protected class XAttributeType_MaxAssignment_13 extends AssignmentToken { - - public XAttributeType_MaxAssignment_13(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getMaxAssignment_13(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_MaxKeyword_12(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("max",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("max"); - if(keywordSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getMaxUnlimitedKeyword_13_0_1(), value, null)) { - type = AssignmentType.KEYWORD; - element = grammarAccess.getXAttributeTypeAccess().getMaxUnlimitedKeyword_13_0_1(); - return obj; - } - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getMaxWHOLE_NUM_STRTerminalRuleCall_13_0_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXAttributeTypeAccess().getMaxWHOLE_NUM_STRTerminalRuleCall_13_0_0(); - return obj; - } - return null; - } - -} - -// ("taggerId" taggerId=("DefaultAttributeTaggerProvider" | QUALIFIED_NAME))? & ("enumType" -// enumType=[XOseeEnumType|STRING])? & ("description" description=STRING)? & ("defaultValue" defaultValue=STRING)? & -// ("fileExtension" fileExtension=STRING)? & ("mediaType" mediaType=STRING)? -protected class XAttributeType_UnorderedGroup_14 extends UnorderedGroupToken { - - public XAttributeType_UnorderedGroup_14(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public UnorderedGroup getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getUnorderedGroup_14(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_Group_14_5(lastRuleCallOrigin, this, 0, inst); - case 1: return new XAttributeType_Group_14_4(lastRuleCallOrigin, this, 1, inst); - case 2: return new XAttributeType_Group_14_3(lastRuleCallOrigin, this, 2, inst); - case 3: return new XAttributeType_Group_14_2(lastRuleCallOrigin, this, 3, inst); - case 4: return new XAttributeType_Group_14_1(lastRuleCallOrigin, this, 4, inst); - case 5: return new XAttributeType_Group_14_0(lastRuleCallOrigin, this, 5, inst); - case 6: return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 6, inst); - default: return null; - } - } - -} - -// ("taggerId" taggerId=("DefaultAttributeTaggerProvider" | QUALIFIED_NAME))? -protected class XAttributeType_Group_14_0 extends GroupToken { - - public XAttributeType_Group_14_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getGroup_14_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_TaggerIdAssignment_14_0_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "taggerId" -protected class XAttributeType_TaggerIdKeyword_14_0_0 extends KeywordToken { - - public XAttributeType_TaggerIdKeyword_14_0_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getTaggerIdKeyword_14_0_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// taggerId=("DefaultAttributeTaggerProvider" | QUALIFIED_NAME) -protected class XAttributeType_TaggerIdAssignment_14_0_1 extends AssignmentToken { - - public XAttributeType_TaggerIdAssignment_14_0_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getTaggerIdAssignment_14_0_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_TaggerIdKeyword_14_0_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("taggerId",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("taggerId"); - if(keywordSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getTaggerIdDefaultAttributeTaggerProviderKeyword_14_0_1_0_0(), value, null)) { - type = AssignmentType.KEYWORD; - element = grammarAccess.getXAttributeTypeAccess().getTaggerIdDefaultAttributeTaggerProviderKeyword_14_0_1_0_0(); - return obj; - } - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getTaggerIdQUALIFIED_NAMEParserRuleCall_14_0_1_0_1(), value, null)) { - type = AssignmentType.DATATYPE_RULE_CALL; - element = grammarAccess.getXAttributeTypeAccess().getTaggerIdQUALIFIED_NAMEParserRuleCall_14_0_1_0_1(); - return obj; - } - return null; - } - -} - - -// ("enumType" enumType=[XOseeEnumType|STRING])? -protected class XAttributeType_Group_14_1 extends GroupToken { - - public XAttributeType_Group_14_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getGroup_14_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_EnumTypeAssignment_14_1_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "enumType" -protected class XAttributeType_EnumTypeKeyword_14_1_0 extends KeywordToken { - - public XAttributeType_EnumTypeKeyword_14_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getEnumTypeKeyword_14_1_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_Group_14_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// enumType=[XOseeEnumType|STRING] -protected class XAttributeType_EnumTypeAssignment_14_1_1 extends AssignmentToken { - - public XAttributeType_EnumTypeAssignment_14_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getEnumTypeAssignment_14_1_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_EnumTypeKeyword_14_1_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("enumType",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("enumType"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXAttributeTypeAccess().getEnumTypeXOseeEnumTypeCrossReference_14_1_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getXAttributeTypeAccess().getEnumTypeXOseeEnumTypeCrossReference_14_1_1_0(); - return obj; - } - } - return null; - } - -} - - -// ("description" description=STRING)? -protected class XAttributeType_Group_14_2 extends GroupToken { - - public XAttributeType_Group_14_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getGroup_14_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_DescriptionAssignment_14_2_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "description" -protected class XAttributeType_DescriptionKeyword_14_2_0 extends KeywordToken { - - public XAttributeType_DescriptionKeyword_14_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getDescriptionKeyword_14_2_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_Group_14_1(lastRuleCallOrigin, this, 0, inst); - case 1: return new XAttributeType_Group_14_0(lastRuleCallOrigin, this, 1, inst); - case 2: return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 2, inst); - default: return null; - } - } - -} - -// description=STRING -protected class XAttributeType_DescriptionAssignment_14_2_1 extends AssignmentToken { - - public XAttributeType_DescriptionAssignment_14_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getDescriptionAssignment_14_2_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_DescriptionKeyword_14_2_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("description",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("description"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getDescriptionSTRINGTerminalRuleCall_14_2_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXAttributeTypeAccess().getDescriptionSTRINGTerminalRuleCall_14_2_1_0(); - return obj; - } - return null; - } - -} - - -// ("defaultValue" defaultValue=STRING)? -protected class XAttributeType_Group_14_3 extends GroupToken { - - public XAttributeType_Group_14_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getGroup_14_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_DefaultValueAssignment_14_3_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "defaultValue" -protected class XAttributeType_DefaultValueKeyword_14_3_0 extends KeywordToken { - - public XAttributeType_DefaultValueKeyword_14_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getDefaultValueKeyword_14_3_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_Group_14_2(lastRuleCallOrigin, this, 0, inst); - case 1: return new XAttributeType_Group_14_1(lastRuleCallOrigin, this, 1, inst); - case 2: return new XAttributeType_Group_14_0(lastRuleCallOrigin, this, 2, inst); - case 3: return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 3, inst); - default: return null; - } - } - -} - -// defaultValue=STRING -protected class XAttributeType_DefaultValueAssignment_14_3_1 extends AssignmentToken { - - public XAttributeType_DefaultValueAssignment_14_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getDefaultValueAssignment_14_3_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_DefaultValueKeyword_14_3_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("defaultValue",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("defaultValue"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getDefaultValueSTRINGTerminalRuleCall_14_3_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXAttributeTypeAccess().getDefaultValueSTRINGTerminalRuleCall_14_3_1_0(); - return obj; - } - return null; - } - -} - - -// ("fileExtension" fileExtension=STRING)? -protected class XAttributeType_Group_14_4 extends GroupToken { - - public XAttributeType_Group_14_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getGroup_14_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_FileExtensionAssignment_14_4_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "fileExtension" -protected class XAttributeType_FileExtensionKeyword_14_4_0 extends KeywordToken { - - public XAttributeType_FileExtensionKeyword_14_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getFileExtensionKeyword_14_4_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_Group_14_3(lastRuleCallOrigin, this, 0, inst); - case 1: return new XAttributeType_Group_14_2(lastRuleCallOrigin, this, 1, inst); - case 2: return new XAttributeType_Group_14_1(lastRuleCallOrigin, this, 2, inst); - case 3: return new XAttributeType_Group_14_0(lastRuleCallOrigin, this, 3, inst); - case 4: return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 4, inst); - default: return null; - } - } - -} - -// fileExtension=STRING -protected class XAttributeType_FileExtensionAssignment_14_4_1 extends AssignmentToken { - - public XAttributeType_FileExtensionAssignment_14_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getFileExtensionAssignment_14_4_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_FileExtensionKeyword_14_4_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("fileExtension",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("fileExtension"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getFileExtensionSTRINGTerminalRuleCall_14_4_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXAttributeTypeAccess().getFileExtensionSTRINGTerminalRuleCall_14_4_1_0(); - return obj; - } - return null; - } - -} - - -// ("mediaType" mediaType=STRING)? -protected class XAttributeType_Group_14_5 extends GroupToken { - - public XAttributeType_Group_14_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getGroup_14_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_MediaTypeAssignment_14_5_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "mediaType" -protected class XAttributeType_MediaTypeKeyword_14_5_0 extends KeywordToken { - - public XAttributeType_MediaTypeKeyword_14_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getMediaTypeKeyword_14_5_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_Group_14_4(lastRuleCallOrigin, this, 0, inst); - case 1: return new XAttributeType_Group_14_3(lastRuleCallOrigin, this, 1, inst); - case 2: return new XAttributeType_Group_14_2(lastRuleCallOrigin, this, 2, inst); - case 3: return new XAttributeType_Group_14_1(lastRuleCallOrigin, this, 3, inst); - case 4: return new XAttributeType_Group_14_0(lastRuleCallOrigin, this, 4, inst); - case 5: return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 5, inst); - default: return null; - } - } - -} - -// mediaType=STRING -protected class XAttributeType_MediaTypeAssignment_14_5_1 extends AssignmentToken { - - public XAttributeType_MediaTypeAssignment_14_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getMediaTypeAssignment_14_5_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_MediaTypeKeyword_14_5_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("mediaType",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("mediaType"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXAttributeTypeAccess().getMediaTypeSTRINGTerminalRuleCall_14_5_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXAttributeTypeAccess().getMediaTypeSTRINGTerminalRuleCall_14_5_1_0(); - return obj; - } - return null; - } - -} - - - -// "}" -protected class XAttributeType_RightCurlyBracketKeyword_15 extends KeywordToken { - - public XAttributeType_RightCurlyBracketKeyword_15(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXAttributeTypeAccess().getRightCurlyBracketKeyword_15(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeType_UnorderedGroup_14(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - - -/************ end Rule XAttributeType ****************/ - - - -/************ begin Rule XOseeEnumType **************** - * - * XOseeEnumType: - * "oseeEnumType" name=STRING "{" ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT enumEntries+=XOseeEnumEntry* "}"; - * - **/ - -// "oseeEnumType" name=STRING "{" ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT enumEntries+=XOseeEnumEntry* "}" -protected class XOseeEnumType_Group extends GroupToken { - - public XOseeEnumType_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXOseeEnumTypeAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumType_RightCurlyBracketKeyword_7(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXOseeEnumTypeRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "oseeEnumType" -protected class XOseeEnumType_OseeEnumTypeKeyword_0 extends KeywordToken { - - public XOseeEnumType_OseeEnumTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeEnumTypeAccess().getOseeEnumTypeKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// name=STRING -protected class XOseeEnumType_NameAssignment_1 extends AssignmentToken { - - public XOseeEnumType_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeEnumTypeAccess().getNameAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumType_OseeEnumTypeKeyword_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.getXOseeEnumTypeAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXOseeEnumTypeAccess().getNameSTRINGTerminalRuleCall_1_0(); - return obj; - } - return null; - } - -} - -// "{" -protected class XOseeEnumType_LeftCurlyBracketKeyword_2 extends KeywordToken { - - public XOseeEnumType_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeEnumTypeAccess().getLeftCurlyBracketKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumType_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// ("guid" typeGuid=STRING)? -protected class XOseeEnumType_Group_3 extends GroupToken { - - public XOseeEnumType_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXOseeEnumTypeAccess().getGroup_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumType_TypeGuidAssignment_3_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "guid" -protected class XOseeEnumType_GuidKeyword_3_0 extends KeywordToken { - - public XOseeEnumType_GuidKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeEnumTypeAccess().getGuidKeyword_3_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumType_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// typeGuid=STRING -protected class XOseeEnumType_TypeGuidAssignment_3_1 extends AssignmentToken { - - public XOseeEnumType_TypeGuidAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeEnumTypeAccess().getTypeGuidAssignment_3_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumType_GuidKeyword_3_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("typeGuid",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("typeGuid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXOseeEnumTypeAccess().getTypeGuidSTRINGTerminalRuleCall_3_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXOseeEnumTypeAccess().getTypeGuidSTRINGTerminalRuleCall_3_1_0(); - return obj; - } - return null; - } - -} - - -// "uuid" -protected class XOseeEnumType_UuidKeyword_4 extends KeywordToken { - - public XOseeEnumType_UuidKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeEnumTypeAccess().getUuidKeyword_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumType_Group_3(lastRuleCallOrigin, this, 0, inst); - case 1: return new XOseeEnumType_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// uuid=HEX_INT -protected class XOseeEnumType_UuidAssignment_5 extends AssignmentToken { - - public XOseeEnumType_UuidAssignment_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeEnumTypeAccess().getUuidAssignment_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumType_UuidKeyword_4(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("uuid",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("uuid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXOseeEnumTypeAccess().getUuidHEX_INTTerminalRuleCall_5_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXOseeEnumTypeAccess().getUuidHEX_INTTerminalRuleCall_5_0(); - return obj; - } - return null; - } - -} - -// enumEntries+=XOseeEnumEntry* -protected class XOseeEnumType_EnumEntriesAssignment_6 extends AssignmentToken { - - public XOseeEnumType_EnumEntriesAssignment_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeEnumTypeAccess().getEnumEntriesAssignment_6(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumEntry_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("enumEntries",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("enumEntries"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXOseeEnumEntryRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getXOseeEnumTypeAccess().getEnumEntriesXOseeEnumEntryParserRuleCall_6_0(); - consumed = obj; - return param; - } - } - return null; - } - - @Override - public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { - if(value == inst.getEObject() && !inst.isConsumed()) return null; - switch(index) { - case 0: return new XOseeEnumType_EnumEntriesAssignment_6(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new XOseeEnumType_UuidAssignment_5(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - -// "}" -protected class XOseeEnumType_RightCurlyBracketKeyword_7 extends KeywordToken { - - public XOseeEnumType_RightCurlyBracketKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeEnumTypeAccess().getRightCurlyBracketKeyword_7(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumType_EnumEntriesAssignment_6(lastRuleCallOrigin, this, 0, inst); - case 1: return new XOseeEnumType_UuidAssignment_5(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - - -/************ end Rule XOseeEnumType ****************/ - - -/************ begin Rule XOseeEnumEntry **************** - * - * XOseeEnumEntry: - * "entry" name=STRING ordinal=WHOLE_NUM_STR? ("entryGuid" entryGuid=STRING)? ("description" description=STRING)?; - * - **/ - -// "entry" name=STRING ordinal=WHOLE_NUM_STR? ("entryGuid" entryGuid=STRING)? ("description" description=STRING)? -protected class XOseeEnumEntry_Group extends GroupToken { - - public XOseeEnumEntry_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXOseeEnumEntryAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumEntry_Group_4(lastRuleCallOrigin, this, 0, inst); - case 1: return new XOseeEnumEntry_Group_3(lastRuleCallOrigin, this, 1, inst); - case 2: return new XOseeEnumEntry_OrdinalAssignment_2(lastRuleCallOrigin, this, 2, inst); - case 3: return new XOseeEnumEntry_NameAssignment_1(lastRuleCallOrigin, this, 3, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXOseeEnumEntryRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "entry" -protected class XOseeEnumEntry_EntryKeyword_0 extends KeywordToken { - - public XOseeEnumEntry_EntryKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeEnumEntryAccess().getEntryKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// name=STRING -protected class XOseeEnumEntry_NameAssignment_1 extends AssignmentToken { - - public XOseeEnumEntry_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeEnumEntryAccess().getNameAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumEntry_EntryKeyword_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.getXOseeEnumEntryAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXOseeEnumEntryAccess().getNameSTRINGTerminalRuleCall_1_0(); - return obj; - } - return null; - } - -} - -// ordinal=WHOLE_NUM_STR? -protected class XOseeEnumEntry_OrdinalAssignment_2 extends AssignmentToken { - - public XOseeEnumEntry_OrdinalAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeEnumEntryAccess().getOrdinalAssignment_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumEntry_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("ordinal",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("ordinal"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXOseeEnumEntryAccess().getOrdinalWHOLE_NUM_STRTerminalRuleCall_2_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXOseeEnumEntryAccess().getOrdinalWHOLE_NUM_STRTerminalRuleCall_2_0(); - return obj; - } - return null; - } - -} - -// ("entryGuid" entryGuid=STRING)? -protected class XOseeEnumEntry_Group_3 extends GroupToken { - - public XOseeEnumEntry_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXOseeEnumEntryAccess().getGroup_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumEntry_EntryGuidAssignment_3_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "entryGuid" -protected class XOseeEnumEntry_EntryGuidKeyword_3_0 extends KeywordToken { - - public XOseeEnumEntry_EntryGuidKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeEnumEntryAccess().getEntryGuidKeyword_3_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumEntry_OrdinalAssignment_2(lastRuleCallOrigin, this, 0, inst); - case 1: return new XOseeEnumEntry_NameAssignment_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// entryGuid=STRING -protected class XOseeEnumEntry_EntryGuidAssignment_3_1 extends AssignmentToken { - - public XOseeEnumEntry_EntryGuidAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeEnumEntryAccess().getEntryGuidAssignment_3_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumEntry_EntryGuidKeyword_3_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("entryGuid",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("entryGuid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXOseeEnumEntryAccess().getEntryGuidSTRINGTerminalRuleCall_3_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXOseeEnumEntryAccess().getEntryGuidSTRINGTerminalRuleCall_3_1_0(); - return obj; - } - return null; - } - -} - - -// ("description" description=STRING)? -protected class XOseeEnumEntry_Group_4 extends GroupToken { - - public XOseeEnumEntry_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXOseeEnumEntryAccess().getGroup_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumEntry_DescriptionAssignment_4_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "description" -protected class XOseeEnumEntry_DescriptionKeyword_4_0 extends KeywordToken { - - public XOseeEnumEntry_DescriptionKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeEnumEntryAccess().getDescriptionKeyword_4_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumEntry_Group_3(lastRuleCallOrigin, this, 0, inst); - case 1: return new XOseeEnumEntry_OrdinalAssignment_2(lastRuleCallOrigin, this, 1, inst); - case 2: return new XOseeEnumEntry_NameAssignment_1(lastRuleCallOrigin, this, 2, inst); - default: return null; - } - } - -} - -// description=STRING -protected class XOseeEnumEntry_DescriptionAssignment_4_1 extends AssignmentToken { - - public XOseeEnumEntry_DescriptionAssignment_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeEnumEntryAccess().getDescriptionAssignment_4_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumEntry_DescriptionKeyword_4_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("description",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("description"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXOseeEnumEntryAccess().getDescriptionSTRINGTerminalRuleCall_4_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXOseeEnumEntryAccess().getDescriptionSTRINGTerminalRuleCall_4_1_0(); - return obj; - } - return null; - } - -} - - - -/************ end Rule XOseeEnumEntry ****************/ - - -/************ begin Rule XOseeEnumOverride **************** - * - * XOseeEnumOverride: - * "overrides enum" overridenEnumType=[XOseeEnumType|STRING] "{" inheritAll?="inheritAll"? - * overrideOptions+=OverrideOption* "}"; - * - **/ - -// "overrides enum" overridenEnumType=[XOseeEnumType|STRING] "{" inheritAll?="inheritAll"? overrideOptions+=OverrideOption* -// "}" -protected class XOseeEnumOverride_Group extends GroupToken { - - public XOseeEnumOverride_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXOseeEnumOverrideAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumOverride_RightCurlyBracketKeyword_5(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXOseeEnumOverrideRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "overrides enum" -protected class XOseeEnumOverride_OverridesEnumKeyword_0 extends KeywordToken { - - public XOseeEnumOverride_OverridesEnumKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeEnumOverrideAccess().getOverridesEnumKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// overridenEnumType=[XOseeEnumType|STRING] -protected class XOseeEnumOverride_OverridenEnumTypeAssignment_1 extends AssignmentToken { - - public XOseeEnumOverride_OverridenEnumTypeAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeEnumOverrideAccess().getOverridenEnumTypeAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumOverride_OverridesEnumKeyword_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("overridenEnumType",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("overridenEnumType"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXOseeEnumOverrideAccess().getOverridenEnumTypeXOseeEnumTypeCrossReference_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getXOseeEnumOverrideAccess().getOverridenEnumTypeXOseeEnumTypeCrossReference_1_0(); - return obj; - } - } - return null; - } - -} - -// "{" -protected class XOseeEnumOverride_LeftCurlyBracketKeyword_2 extends KeywordToken { - - public XOseeEnumOverride_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeEnumOverrideAccess().getLeftCurlyBracketKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumOverride_OverridenEnumTypeAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// inheritAll?="inheritAll"? -protected class XOseeEnumOverride_InheritAllAssignment_3 extends AssignmentToken { - - public XOseeEnumOverride_InheritAllAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeEnumOverrideAccess().getInheritAllAssignment_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumOverride_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("inheritAll",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("inheritAll"); - if(Boolean.TRUE.equals(value)) { // org::eclipse::xtext::impl::KeywordImpl - type = AssignmentType.KEYWORD; - element = grammarAccess.getXOseeEnumOverrideAccess().getInheritAllInheritAllKeyword_3_0(); - return obj; - } - return null; - } - -} - -// overrideOptions+=OverrideOption* -protected class XOseeEnumOverride_OverrideOptionsAssignment_4 extends AssignmentToken { - - public XOseeEnumOverride_OverrideOptionsAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeEnumOverrideAccess().getOverrideOptionsAssignment_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new OverrideOption_Alternatives(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("overrideOptions",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("overrideOptions"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getOverrideOptionRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getXOseeEnumOverrideAccess().getOverrideOptionsOverrideOptionParserRuleCall_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 XOseeEnumOverride_OverrideOptionsAssignment_4(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new XOseeEnumOverride_InheritAllAssignment_3(lastRuleCallOrigin, next, actIndex, consumed); - case 2: return new XOseeEnumOverride_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - -// "}" -protected class XOseeEnumOverride_RightCurlyBracketKeyword_5 extends KeywordToken { - - public XOseeEnumOverride_RightCurlyBracketKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeEnumOverrideAccess().getRightCurlyBracketKeyword_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeEnumOverride_OverrideOptionsAssignment_4(lastRuleCallOrigin, this, 0, inst); - case 1: return new XOseeEnumOverride_InheritAllAssignment_3(lastRuleCallOrigin, this, 1, inst); - case 2: return new XOseeEnumOverride_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 2, inst); - default: return null; - } - } - -} - - -/************ end Rule XOseeEnumOverride ****************/ - - -/************ begin Rule OverrideOption **************** - * - * OverrideOption: - * AddEnum | RemoveEnum; - * - **/ - -// AddEnum | RemoveEnum -protected class OverrideOption_Alternatives extends AlternativesToken { - - public OverrideOption_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Alternatives getGrammarElement() { - return grammarAccess.getOverrideOptionAccess().getAlternatives(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new OverrideOption_AddEnumParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new OverrideOption_RemoveEnumParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getAddEnumRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getRemoveEnumRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// AddEnum -protected class OverrideOption_AddEnumParserRuleCall_0 extends RuleCallToken { - - public OverrideOption_AddEnumParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getOverrideOptionAccess().getAddEnumParserRuleCall_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AddEnum_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getAddEnumRule().getType().getClassifier()) - return null; - if(checkForRecursion(AddEnum_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); - } - } -} - -// RemoveEnum -protected class OverrideOption_RemoveEnumParserRuleCall_1 extends RuleCallToken { - - public OverrideOption_RemoveEnumParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getOverrideOptionAccess().getRemoveEnumParserRuleCall_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RemoveEnum_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getRemoveEnumRule().getType().getClassifier()) - return null; - if(checkForRecursion(RemoveEnum_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 OverrideOption ****************/ - - -/************ begin Rule AddEnum **************** - * - * AddEnum: - * "add" enumEntry=STRING ordinal=WHOLE_NUM_STR? ("entryGuid" entryGuid=STRING)? ("description" description=STRING)?; - * - **/ - -// "add" enumEntry=STRING ordinal=WHOLE_NUM_STR? ("entryGuid" entryGuid=STRING)? ("description" description=STRING)? -protected class AddEnum_Group extends GroupToken { - - public AddEnum_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getAddEnumAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AddEnum_Group_4(lastRuleCallOrigin, this, 0, inst); - case 1: return new AddEnum_Group_3(lastRuleCallOrigin, this, 1, inst); - case 2: return new AddEnum_OrdinalAssignment_2(lastRuleCallOrigin, this, 2, inst); - case 3: return new AddEnum_EnumEntryAssignment_1(lastRuleCallOrigin, this, 3, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getAddEnumRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "add" -protected class AddEnum_AddKeyword_0 extends KeywordToken { - - public AddEnum_AddKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAddEnumAccess().getAddKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// enumEntry=STRING -protected class AddEnum_EnumEntryAssignment_1 extends AssignmentToken { - - public AddEnum_EnumEntryAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAddEnumAccess().getEnumEntryAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AddEnum_AddKeyword_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("enumEntry",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("enumEntry"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getAddEnumAccess().getEnumEntrySTRINGTerminalRuleCall_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getAddEnumAccess().getEnumEntrySTRINGTerminalRuleCall_1_0(); - return obj; - } - return null; - } - -} - -// ordinal=WHOLE_NUM_STR? -protected class AddEnum_OrdinalAssignment_2 extends AssignmentToken { - - public AddEnum_OrdinalAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAddEnumAccess().getOrdinalAssignment_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AddEnum_EnumEntryAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("ordinal",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("ordinal"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getAddEnumAccess().getOrdinalWHOLE_NUM_STRTerminalRuleCall_2_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getAddEnumAccess().getOrdinalWHOLE_NUM_STRTerminalRuleCall_2_0(); - return obj; - } - return null; - } - -} - -// ("entryGuid" entryGuid=STRING)? -protected class AddEnum_Group_3 extends GroupToken { - - public AddEnum_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getAddEnumAccess().getGroup_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AddEnum_EntryGuidAssignment_3_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "entryGuid" -protected class AddEnum_EntryGuidKeyword_3_0 extends KeywordToken { - - public AddEnum_EntryGuidKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAddEnumAccess().getEntryGuidKeyword_3_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AddEnum_OrdinalAssignment_2(lastRuleCallOrigin, this, 0, inst); - case 1: return new AddEnum_EnumEntryAssignment_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// entryGuid=STRING -protected class AddEnum_EntryGuidAssignment_3_1 extends AssignmentToken { - - public AddEnum_EntryGuidAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAddEnumAccess().getEntryGuidAssignment_3_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AddEnum_EntryGuidKeyword_3_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("entryGuid",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("entryGuid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getAddEnumAccess().getEntryGuidSTRINGTerminalRuleCall_3_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getAddEnumAccess().getEntryGuidSTRINGTerminalRuleCall_3_1_0(); - return obj; - } - return null; - } - -} - - -// ("description" description=STRING)? -protected class AddEnum_Group_4 extends GroupToken { - - public AddEnum_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getAddEnumAccess().getGroup_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AddEnum_DescriptionAssignment_4_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "description" -protected class AddEnum_DescriptionKeyword_4_0 extends KeywordToken { - - public AddEnum_DescriptionKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAddEnumAccess().getDescriptionKeyword_4_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AddEnum_Group_3(lastRuleCallOrigin, this, 0, inst); - case 1: return new AddEnum_OrdinalAssignment_2(lastRuleCallOrigin, this, 1, inst); - case 2: return new AddEnum_EnumEntryAssignment_1(lastRuleCallOrigin, this, 2, inst); - default: return null; - } - } - -} - -// description=STRING -protected class AddEnum_DescriptionAssignment_4_1 extends AssignmentToken { - - public AddEnum_DescriptionAssignment_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAddEnumAccess().getDescriptionAssignment_4_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AddEnum_DescriptionKeyword_4_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("description",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("description"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getAddEnumAccess().getDescriptionSTRINGTerminalRuleCall_4_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getAddEnumAccess().getDescriptionSTRINGTerminalRuleCall_4_1_0(); - return obj; - } - return null; - } - -} - - - -/************ end Rule AddEnum ****************/ - - -/************ begin Rule RemoveEnum **************** - * - * RemoveEnum: - * "remove" enumEntry=[XOseeEnumEntry|STRING]; - * - **/ - -// "remove" enumEntry=[XOseeEnumEntry|STRING] -protected class RemoveEnum_Group extends GroupToken { - - public RemoveEnum_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getRemoveEnumAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RemoveEnum_EnumEntryAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getRemoveEnumRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "remove" -protected class RemoveEnum_RemoveKeyword_0 extends KeywordToken { - - public RemoveEnum_RemoveKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getRemoveEnumAccess().getRemoveKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// enumEntry=[XOseeEnumEntry|STRING] -protected class RemoveEnum_EnumEntryAssignment_1 extends AssignmentToken { - - public RemoveEnum_EnumEntryAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRemoveEnumAccess().getEnumEntryAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RemoveEnum_RemoveKeyword_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("enumEntry",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("enumEntry"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getRemoveEnumAccess().getEnumEntryXOseeEnumEntryCrossReference_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getRemoveEnumAccess().getEnumEntryXOseeEnumEntryCrossReference_1_0(); - return obj; - } - } - return null; - } - -} - - -/************ end Rule RemoveEnum ****************/ - - -/************ begin Rule XOseeArtifactTypeOverride **************** - * - * XOseeArtifactTypeOverride: - * "overrides artifactType" overridenArtifactType=[XArtifactType|STRING] "{" inheritAll?="inheritAll"? - * overrideOptions+=AttributeOverrideOption+ "}"; - * - **/ - -// "overrides artifactType" overridenArtifactType=[XArtifactType|STRING] "{" inheritAll?="inheritAll"? -// overrideOptions+=AttributeOverrideOption+ "}" -protected class XOseeArtifactTypeOverride_Group extends GroupToken { - - public XOseeArtifactTypeOverride_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXOseeArtifactTypeOverrideAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeArtifactTypeOverride_RightCurlyBracketKeyword_5(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXOseeArtifactTypeOverrideRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "overrides artifactType" -protected class XOseeArtifactTypeOverride_OverridesArtifactTypeKeyword_0 extends KeywordToken { - - public XOseeArtifactTypeOverride_OverridesArtifactTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeArtifactTypeOverrideAccess().getOverridesArtifactTypeKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// overridenArtifactType=[XArtifactType|STRING] -protected class XOseeArtifactTypeOverride_OverridenArtifactTypeAssignment_1 extends AssignmentToken { - - public XOseeArtifactTypeOverride_OverridenArtifactTypeAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeArtifactTypeOverrideAccess().getOverridenArtifactTypeAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeArtifactTypeOverride_OverridesArtifactTypeKeyword_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("overridenArtifactType",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("overridenArtifactType"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXOseeArtifactTypeOverrideAccess().getOverridenArtifactTypeXArtifactTypeCrossReference_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getXOseeArtifactTypeOverrideAccess().getOverridenArtifactTypeXArtifactTypeCrossReference_1_0(); - return obj; - } - } - return null; - } - -} - -// "{" -protected class XOseeArtifactTypeOverride_LeftCurlyBracketKeyword_2 extends KeywordToken { - - public XOseeArtifactTypeOverride_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeArtifactTypeOverrideAccess().getLeftCurlyBracketKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeArtifactTypeOverride_OverridenArtifactTypeAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// inheritAll?="inheritAll"? -protected class XOseeArtifactTypeOverride_InheritAllAssignment_3 extends AssignmentToken { - - public XOseeArtifactTypeOverride_InheritAllAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeArtifactTypeOverrideAccess().getInheritAllAssignment_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeArtifactTypeOverride_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("inheritAll",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("inheritAll"); - if(Boolean.TRUE.equals(value)) { // org::eclipse::xtext::impl::KeywordImpl - type = AssignmentType.KEYWORD; - element = grammarAccess.getXOseeArtifactTypeOverrideAccess().getInheritAllInheritAllKeyword_3_0(); - return obj; - } - return null; - } - -} - -// overrideOptions+=AttributeOverrideOption+ -protected class XOseeArtifactTypeOverride_OverrideOptionsAssignment_4 extends AssignmentToken { - - public XOseeArtifactTypeOverride_OverrideOptionsAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXOseeArtifactTypeOverrideAccess().getOverrideOptionsAssignment_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AttributeOverrideOption_Alternatives(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("overrideOptions",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("overrideOptions"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getAttributeOverrideOptionRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getXOseeArtifactTypeOverrideAccess().getOverrideOptionsAttributeOverrideOptionParserRuleCall_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 XOseeArtifactTypeOverride_OverrideOptionsAssignment_4(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new XOseeArtifactTypeOverride_InheritAllAssignment_3(lastRuleCallOrigin, next, actIndex, consumed); - case 2: return new XOseeArtifactTypeOverride_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - -// "}" -protected class XOseeArtifactTypeOverride_RightCurlyBracketKeyword_5 extends KeywordToken { - - public XOseeArtifactTypeOverride_RightCurlyBracketKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXOseeArtifactTypeOverrideAccess().getRightCurlyBracketKeyword_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XOseeArtifactTypeOverride_OverrideOptionsAssignment_4(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - - -/************ end Rule XOseeArtifactTypeOverride ****************/ - - -/************ begin Rule AttributeOverrideOption **************** - * - * AttributeOverrideOption: - * AddAttribute | RemoveAttribute | UpdateAttribute; - * - **/ - -// AddAttribute | RemoveAttribute | UpdateAttribute -protected class AttributeOverrideOption_Alternatives extends AlternativesToken { - - public AttributeOverrideOption_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Alternatives getGrammarElement() { - return grammarAccess.getAttributeOverrideOptionAccess().getAlternatives(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AttributeOverrideOption_AddAttributeParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new AttributeOverrideOption_RemoveAttributeParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); - case 2: return new AttributeOverrideOption_UpdateAttributeParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getAddAttributeRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getRemoveAttributeRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getUpdateAttributeRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// AddAttribute -protected class AttributeOverrideOption_AddAttributeParserRuleCall_0 extends RuleCallToken { - - public AttributeOverrideOption_AddAttributeParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getAttributeOverrideOptionAccess().getAddAttributeParserRuleCall_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AddAttribute_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getAddAttributeRule().getType().getClassifier()) - return null; - if(checkForRecursion(AddAttribute_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); - } - } -} - -// RemoveAttribute -protected class AttributeOverrideOption_RemoveAttributeParserRuleCall_1 extends RuleCallToken { - - public AttributeOverrideOption_RemoveAttributeParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getAttributeOverrideOptionAccess().getRemoveAttributeParserRuleCall_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RemoveAttribute_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getRemoveAttributeRule().getType().getClassifier()) - return null; - if(checkForRecursion(RemoveAttribute_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); - } - } -} - -// UpdateAttribute -protected class AttributeOverrideOption_UpdateAttributeParserRuleCall_2 extends RuleCallToken { - - public AttributeOverrideOption_UpdateAttributeParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getAttributeOverrideOptionAccess().getUpdateAttributeParserRuleCall_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new UpdateAttribute_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getUpdateAttributeRule().getType().getClassifier()) - return null; - if(checkForRecursion(UpdateAttribute_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 AttributeOverrideOption ****************/ - - -/************ begin Rule AddAttribute **************** - * - * AddAttribute: - * "add" attribute=XAttributeTypeRef; - * - **/ - -// "add" attribute=XAttributeTypeRef -protected class AddAttribute_Group extends GroupToken { - - public AddAttribute_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getAddAttributeAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AddAttribute_AttributeAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getAddAttributeRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "add" -protected class AddAttribute_AddKeyword_0 extends KeywordToken { - - public AddAttribute_AddKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAddAttributeAccess().getAddKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// attribute=XAttributeTypeRef -protected class AddAttribute_AttributeAssignment_1 extends AssignmentToken { - - public AddAttribute_AttributeAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAddAttributeAccess().getAttributeAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeTypeRef_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("attribute",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("attribute"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXAttributeTypeRefRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getAddAttributeAccess().getAttributeXAttributeTypeRefParserRuleCall_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 AddAttribute_AddKeyword_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - - -/************ end Rule AddAttribute ****************/ - - -/************ begin Rule RemoveAttribute **************** - * - * RemoveAttribute: - * "remove" "attribute" attribute=[XAttributeType|STRING]; - * - **/ - -// "remove" "attribute" attribute=[XAttributeType|STRING] -protected class RemoveAttribute_Group extends GroupToken { - - public RemoveAttribute_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getRemoveAttributeAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RemoveAttribute_AttributeAssignment_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getRemoveAttributeRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "remove" -protected class RemoveAttribute_RemoveKeyword_0 extends KeywordToken { - - public RemoveAttribute_RemoveKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getRemoveAttributeAccess().getRemoveKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// "attribute" -protected class RemoveAttribute_AttributeKeyword_1 extends KeywordToken { - - public RemoveAttribute_AttributeKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getRemoveAttributeAccess().getAttributeKeyword_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RemoveAttribute_RemoveKeyword_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// attribute=[XAttributeType|STRING] -protected class RemoveAttribute_AttributeAssignment_2 extends AssignmentToken { - - public RemoveAttribute_AttributeAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRemoveAttributeAccess().getAttributeAssignment_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RemoveAttribute_AttributeKeyword_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("attribute",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("attribute"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getRemoveAttributeAccess().getAttributeXAttributeTypeCrossReference_2_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getRemoveAttributeAccess().getAttributeXAttributeTypeCrossReference_2_0(); - return obj; - } - } - return null; - } - -} - - -/************ end Rule RemoveAttribute ****************/ - - -/************ begin Rule UpdateAttribute **************** - * - * UpdateAttribute: - * "update" attribute=XAttributeTypeRef; - * - **/ - -// "update" attribute=XAttributeTypeRef -protected class UpdateAttribute_Group extends GroupToken { - - public UpdateAttribute_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getUpdateAttributeAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new UpdateAttribute_AttributeAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getUpdateAttributeRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "update" -protected class UpdateAttribute_UpdateKeyword_0 extends KeywordToken { - - public UpdateAttribute_UpdateKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getUpdateAttributeAccess().getUpdateKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// attribute=XAttributeTypeRef -protected class UpdateAttribute_AttributeAssignment_1 extends AssignmentToken { - - public UpdateAttribute_AttributeAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getUpdateAttributeAccess().getAttributeAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XAttributeTypeRef_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("attribute",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("attribute"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXAttributeTypeRefRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getUpdateAttributeAccess().getAttributeXAttributeTypeRefParserRuleCall_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 UpdateAttribute_UpdateKeyword_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - - -/************ end Rule UpdateAttribute ****************/ - - -/************ begin Rule XRelationType **************** - * - * XRelationType: - * "relationType" name=STRING "{" ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT "sideAName" sideAName=STRING - * "sideAArtifactType" sideAArtifactType=[XArtifactType|STRING] "sideBName" sideBName=STRING "sideBArtifactType" - * sideBArtifactType=[XArtifactType|STRING] "defaultOrderType" defaultOrderType=RelationOrderType "multiplicity" - * multiplicity=RelationMultiplicityEnum "}"; - * - **/ - -// "relationType" name=STRING "{" ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT "sideAName" sideAName=STRING -// "sideAArtifactType" sideAArtifactType=[XArtifactType|STRING] "sideBName" sideBName=STRING "sideBArtifactType" -// sideBArtifactType=[XArtifactType|STRING] "defaultOrderType" defaultOrderType=RelationOrderType "multiplicity" -// multiplicity=RelationMultiplicityEnum "}" -protected class XRelationType_Group extends GroupToken { - - public XRelationType_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_RightCurlyBracketKeyword_18(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXRelationTypeRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "relationType" -protected class XRelationType_RelationTypeKeyword_0 extends KeywordToken { - - public XRelationType_RelationTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getRelationTypeKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// name=STRING -protected class XRelationType_NameAssignment_1 extends AssignmentToken { - - public XRelationType_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getNameAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_RelationTypeKeyword_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.getXRelationTypeAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXRelationTypeAccess().getNameSTRINGTerminalRuleCall_1_0(); - return obj; - } - return null; - } - -} - -// "{" -protected class XRelationType_LeftCurlyBracketKeyword_2 extends KeywordToken { - - public XRelationType_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getLeftCurlyBracketKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// ("guid" typeGuid=STRING)? -protected class XRelationType_Group_3 extends GroupToken { - - public XRelationType_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getGroup_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_TypeGuidAssignment_3_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "guid" -protected class XRelationType_GuidKeyword_3_0 extends KeywordToken { - - public XRelationType_GuidKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getGuidKeyword_3_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// typeGuid=STRING -protected class XRelationType_TypeGuidAssignment_3_1 extends AssignmentToken { - - public XRelationType_TypeGuidAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getTypeGuidAssignment_3_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_GuidKeyword_3_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("typeGuid",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("typeGuid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXRelationTypeAccess().getTypeGuidSTRINGTerminalRuleCall_3_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXRelationTypeAccess().getTypeGuidSTRINGTerminalRuleCall_3_1_0(); - return obj; - } - return null; - } - -} - - -// "uuid" -protected class XRelationType_UuidKeyword_4 extends KeywordToken { - - public XRelationType_UuidKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getUuidKeyword_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_Group_3(lastRuleCallOrigin, this, 0, inst); - case 1: return new XRelationType_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// uuid=HEX_INT -protected class XRelationType_UuidAssignment_5 extends AssignmentToken { - - public XRelationType_UuidAssignment_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getUuidAssignment_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_UuidKeyword_4(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("uuid",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("uuid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXRelationTypeAccess().getUuidHEX_INTTerminalRuleCall_5_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXRelationTypeAccess().getUuidHEX_INTTerminalRuleCall_5_0(); - return obj; - } - return null; - } - -} - -// "sideAName" -protected class XRelationType_SideANameKeyword_6 extends KeywordToken { - - public XRelationType_SideANameKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getSideANameKeyword_6(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_UuidAssignment_5(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// sideAName=STRING -protected class XRelationType_SideANameAssignment_7 extends AssignmentToken { - - public XRelationType_SideANameAssignment_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getSideANameAssignment_7(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_SideANameKeyword_6(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("sideAName",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("sideAName"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXRelationTypeAccess().getSideANameSTRINGTerminalRuleCall_7_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXRelationTypeAccess().getSideANameSTRINGTerminalRuleCall_7_0(); - return obj; - } - return null; - } - -} - -// "sideAArtifactType" -protected class XRelationType_SideAArtifactTypeKeyword_8 extends KeywordToken { - - public XRelationType_SideAArtifactTypeKeyword_8(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getSideAArtifactTypeKeyword_8(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_SideANameAssignment_7(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// sideAArtifactType=[XArtifactType|STRING] -protected class XRelationType_SideAArtifactTypeAssignment_9 extends AssignmentToken { - - public XRelationType_SideAArtifactTypeAssignment_9(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getSideAArtifactTypeAssignment_9(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_SideAArtifactTypeKeyword_8(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("sideAArtifactType",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("sideAArtifactType"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXRelationTypeAccess().getSideAArtifactTypeXArtifactTypeCrossReference_9_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getXRelationTypeAccess().getSideAArtifactTypeXArtifactTypeCrossReference_9_0(); - return obj; - } - } - return null; - } - -} - -// "sideBName" -protected class XRelationType_SideBNameKeyword_10 extends KeywordToken { - - public XRelationType_SideBNameKeyword_10(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getSideBNameKeyword_10(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_SideAArtifactTypeAssignment_9(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// sideBName=STRING -protected class XRelationType_SideBNameAssignment_11 extends AssignmentToken { - - public XRelationType_SideBNameAssignment_11(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getSideBNameAssignment_11(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_SideBNameKeyword_10(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("sideBName",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("sideBName"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXRelationTypeAccess().getSideBNameSTRINGTerminalRuleCall_11_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXRelationTypeAccess().getSideBNameSTRINGTerminalRuleCall_11_0(); - return obj; - } - return null; - } - -} - -// "sideBArtifactType" -protected class XRelationType_SideBArtifactTypeKeyword_12 extends KeywordToken { - - public XRelationType_SideBArtifactTypeKeyword_12(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getSideBArtifactTypeKeyword_12(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_SideBNameAssignment_11(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// sideBArtifactType=[XArtifactType|STRING] -protected class XRelationType_SideBArtifactTypeAssignment_13 extends AssignmentToken { - - public XRelationType_SideBArtifactTypeAssignment_13(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getSideBArtifactTypeAssignment_13(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_SideBArtifactTypeKeyword_12(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("sideBArtifactType",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("sideBArtifactType"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getXRelationTypeAccess().getSideBArtifactTypeXArtifactTypeCrossReference_13_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getXRelationTypeAccess().getSideBArtifactTypeXArtifactTypeCrossReference_13_0(); - return obj; - } - } - return null; - } - -} - -// "defaultOrderType" -protected class XRelationType_DefaultOrderTypeKeyword_14 extends KeywordToken { - - public XRelationType_DefaultOrderTypeKeyword_14(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getDefaultOrderTypeKeyword_14(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_SideBArtifactTypeAssignment_13(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// defaultOrderType=RelationOrderType -protected class XRelationType_DefaultOrderTypeAssignment_15 extends AssignmentToken { - - public XRelationType_DefaultOrderTypeAssignment_15(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getDefaultOrderTypeAssignment_15(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_DefaultOrderTypeKeyword_14(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("defaultOrderType",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("defaultOrderType"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getXRelationTypeAccess().getDefaultOrderTypeRelationOrderTypeParserRuleCall_15_0(), value, null)) { - type = AssignmentType.DATATYPE_RULE_CALL; - element = grammarAccess.getXRelationTypeAccess().getDefaultOrderTypeRelationOrderTypeParserRuleCall_15_0(); - return obj; - } - return null; - } - -} - -// "multiplicity" -protected class XRelationType_MultiplicityKeyword_16 extends KeywordToken { - - public XRelationType_MultiplicityKeyword_16(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getMultiplicityKeyword_16(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_DefaultOrderTypeAssignment_15(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// multiplicity=RelationMultiplicityEnum -protected class XRelationType_MultiplicityAssignment_17 extends AssignmentToken { - - public XRelationType_MultiplicityAssignment_17(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getMultiplicityAssignment_17(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_MultiplicityKeyword_16(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("multiplicity",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("multiplicity"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getXRelationTypeAccess().getMultiplicityRelationMultiplicityEnumEnumRuleCall_17_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getXRelationTypeAccess().getMultiplicityRelationMultiplicityEnumEnumRuleCall_17_0(); - return obj; - } - return null; - } - -} - -// "}" -protected class XRelationType_RightCurlyBracketKeyword_18 extends KeywordToken { - - public XRelationType_RightCurlyBracketKeyword_18(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXRelationTypeAccess().getRightCurlyBracketKeyword_18(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XRelationType_MultiplicityAssignment_17(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - - -/************ end Rule XRelationType ****************/ - - - - -/************ begin Rule Condition **************** - * - * Condition: - * SimpleCondition | CompoundCondition; - * - **/ - -// SimpleCondition | CompoundCondition -protected class Condition_Alternatives extends AlternativesToken { - - public Condition_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Alternatives getGrammarElement() { - return grammarAccess.getConditionAccess().getAlternatives(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Condition_SimpleConditionParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new Condition_CompoundConditionParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getCompoundConditionRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getSimpleConditionRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// SimpleCondition -protected class Condition_SimpleConditionParserRuleCall_0 extends RuleCallToken { - - public Condition_SimpleConditionParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getConditionAccess().getSimpleConditionParserRuleCall_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new SimpleCondition_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getSimpleConditionRule().getType().getClassifier()) - return null; - if(checkForRecursion(SimpleCondition_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); - } - } -} - -// CompoundCondition -protected class Condition_CompoundConditionParserRuleCall_1 extends RuleCallToken { - - public Condition_CompoundConditionParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getConditionAccess().getCompoundConditionParserRuleCall_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new CompoundCondition_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getCompoundConditionRule().getType().getClassifier()) - return null; - if(checkForRecursion(CompoundCondition_Group.class, eObjectConsumer)) return null; - return eObjectConsumer; - } - - @Override - public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst); - } - } -} - - -/************ end Rule Condition ****************/ - - -/************ begin Rule SimpleCondition **************** - * - * SimpleCondition: - * field=MatchField op=CompareOp expression=STRING; - * - **/ - -// field=MatchField op=CompareOp expression=STRING -protected class SimpleCondition_Group extends GroupToken { - - public SimpleCondition_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getSimpleConditionAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new SimpleCondition_ExpressionAssignment_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getSimpleConditionRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// field=MatchField -protected class SimpleCondition_FieldAssignment_0 extends AssignmentToken { - - public SimpleCondition_FieldAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getSimpleConditionAccess().getFieldAssignment_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("field",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("field"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getSimpleConditionAccess().getFieldMatchFieldEnumRuleCall_0_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getSimpleConditionAccess().getFieldMatchFieldEnumRuleCall_0_0(); - return obj; - } - return null; - } - -} - -// op=CompareOp -protected class SimpleCondition_OpAssignment_1 extends AssignmentToken { - - public SimpleCondition_OpAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getSimpleConditionAccess().getOpAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new SimpleCondition_FieldAssignment_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("op",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("op"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getSimpleConditionAccess().getOpCompareOpEnumRuleCall_1_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getSimpleConditionAccess().getOpCompareOpEnumRuleCall_1_0(); - return obj; - } - return null; - } - -} - -// expression=STRING -protected class SimpleCondition_ExpressionAssignment_2 extends AssignmentToken { - - public SimpleCondition_ExpressionAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getSimpleConditionAccess().getExpressionAssignment_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new SimpleCondition_OpAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("expression",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("expression"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getSimpleConditionAccess().getExpressionSTRINGTerminalRuleCall_2_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getSimpleConditionAccess().getExpressionSTRINGTerminalRuleCall_2_0(); - return obj; - } - return null; - } - -} - - -/************ end Rule SimpleCondition ****************/ - - -/************ begin Rule CompoundCondition **************** - * - * CompoundCondition: - * "(" conditions+=SimpleCondition (operators+=XLogicOperator conditions+=SimpleCondition)+ ")"; - * - **/ - -// "(" conditions+=SimpleCondition (operators+=XLogicOperator conditions+=SimpleCondition)+ ")" -protected class CompoundCondition_Group extends GroupToken { - - public CompoundCondition_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getCompoundConditionAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new CompoundCondition_RightParenthesisKeyword_3(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getCompoundConditionRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "(" -protected class CompoundCondition_LeftParenthesisKeyword_0 extends KeywordToken { - - public CompoundCondition_LeftParenthesisKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getCompoundConditionAccess().getLeftParenthesisKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// conditions+=SimpleCondition -protected class CompoundCondition_ConditionsAssignment_1 extends AssignmentToken { - - public CompoundCondition_ConditionsAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getCompoundConditionAccess().getConditionsAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new SimpleCondition_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("conditions",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("conditions"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getSimpleConditionRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getCompoundConditionAccess().getConditionsSimpleConditionParserRuleCall_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 CompoundCondition_LeftParenthesisKeyword_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - -// (operators+=XLogicOperator conditions+=SimpleCondition)+ -protected class CompoundCondition_Group_2 extends GroupToken { - - public CompoundCondition_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getCompoundConditionAccess().getGroup_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new CompoundCondition_ConditionsAssignment_2_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// operators+=XLogicOperator -protected class CompoundCondition_OperatorsAssignment_2_0 extends AssignmentToken { - - public CompoundCondition_OperatorsAssignment_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getCompoundConditionAccess().getOperatorsAssignment_2_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new CompoundCondition_Group_2(lastRuleCallOrigin, this, 0, inst); - case 1: return new CompoundCondition_ConditionsAssignment_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("operators",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("operators"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getCompoundConditionAccess().getOperatorsXLogicOperatorEnumRuleCall_2_0_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getCompoundConditionAccess().getOperatorsXLogicOperatorEnumRuleCall_2_0_0(); - return obj; - } - return null; - } - -} - -// conditions+=SimpleCondition -protected class CompoundCondition_ConditionsAssignment_2_1 extends AssignmentToken { - - public CompoundCondition_ConditionsAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getCompoundConditionAccess().getConditionsAssignment_2_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new SimpleCondition_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("conditions",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("conditions"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getSimpleConditionRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getCompoundConditionAccess().getConditionsSimpleConditionParserRuleCall_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 CompoundCondition_OperatorsAssignment_2_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - - -// ")" -protected class CompoundCondition_RightParenthesisKeyword_3 extends KeywordToken { - - public CompoundCondition_RightParenthesisKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getCompoundConditionAccess().getRightParenthesisKeyword_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new CompoundCondition_Group_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - - -/************ end Rule CompoundCondition ****************/ - - -/************ begin Rule XArtifactMatcher **************** - * - * XArtifactMatcher: - * "artifactMatcher" name=STRING "where" conditions+=Condition (operators+=XLogicOperator conditions+=Condition)* ";"; - * - **/ - -// "artifactMatcher" name=STRING "where" conditions+=Condition (operators+=XLogicOperator conditions+=Condition)* ";" -protected class XArtifactMatcher_Group extends GroupToken { - - public XArtifactMatcher_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXArtifactMatcherAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactMatcher_SemicolonKeyword_5(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getXArtifactMatcherRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "artifactMatcher" -protected class XArtifactMatcher_ArtifactMatcherKeyword_0 extends KeywordToken { - - public XArtifactMatcher_ArtifactMatcherKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXArtifactMatcherAccess().getArtifactMatcherKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// name=STRING -protected class XArtifactMatcher_NameAssignment_1 extends AssignmentToken { - - public XArtifactMatcher_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXArtifactMatcherAccess().getNameAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactMatcher_ArtifactMatcherKeyword_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.getXArtifactMatcherAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getXArtifactMatcherAccess().getNameSTRINGTerminalRuleCall_1_0(); - return obj; - } - return null; - } - -} - -// "where" -protected class XArtifactMatcher_WhereKeyword_2 extends KeywordToken { - - public XArtifactMatcher_WhereKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXArtifactMatcherAccess().getWhereKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactMatcher_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// conditions+=Condition -protected class XArtifactMatcher_ConditionsAssignment_3 extends AssignmentToken { - - public XArtifactMatcher_ConditionsAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXArtifactMatcherAccess().getConditionsAssignment_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Condition_Alternatives(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("conditions",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("conditions"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getConditionRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getXArtifactMatcherAccess().getConditionsConditionParserRuleCall_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 XArtifactMatcher_WhereKeyword_2(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - -// (operators+=XLogicOperator conditions+=Condition)* -protected class XArtifactMatcher_Group_4 extends GroupToken { - - public XArtifactMatcher_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getXArtifactMatcherAccess().getGroup_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactMatcher_ConditionsAssignment_4_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// operators+=XLogicOperator -protected class XArtifactMatcher_OperatorsAssignment_4_0 extends AssignmentToken { - - public XArtifactMatcher_OperatorsAssignment_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXArtifactMatcherAccess().getOperatorsAssignment_4_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactMatcher_Group_4(lastRuleCallOrigin, this, 0, inst); - case 1: return new XArtifactMatcher_ConditionsAssignment_3(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("operators",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("operators"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getXArtifactMatcherAccess().getOperatorsXLogicOperatorEnumRuleCall_4_0_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getXArtifactMatcherAccess().getOperatorsXLogicOperatorEnumRuleCall_4_0_0(); - return obj; - } - return null; - } - -} - -// conditions+=Condition -protected class XArtifactMatcher_ConditionsAssignment_4_1 extends AssignmentToken { - - public XArtifactMatcher_ConditionsAssignment_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getXArtifactMatcherAccess().getConditionsAssignment_4_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Condition_Alternatives(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("conditions",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("conditions"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getConditionRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getXArtifactMatcherAccess().getConditionsConditionParserRuleCall_4_1_0(); - consumed = obj; - return param; - } - } - return null; - } - - @Override - public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { - if(value == inst.getEObject() && !inst.isConsumed()) return null; - switch(index) { - case 0: return new XArtifactMatcher_OperatorsAssignment_4_0(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - - -// ";" -protected class XArtifactMatcher_SemicolonKeyword_5 extends KeywordToken { - - public XArtifactMatcher_SemicolonKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getXArtifactMatcherAccess().getSemicolonKeyword_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new XArtifactMatcher_Group_4(lastRuleCallOrigin, this, 0, inst); - case 1: return new XArtifactMatcher_ConditionsAssignment_3(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - - -/************ end Rule XArtifactMatcher ****************/ - - -/************ begin Rule Role **************** - * - * /////////////////////////////////////// - * // OSEE ACCESS MODEL // - * - * /////////////////////////////////////// - * Role: - * "role" name=STRING ("extends" superRoles+=[Role|STRING])? "{" (usersAndGroups+=UsersAndGroups | - * referencedContexts+=ReferencedContext)+ "}"; - * - **/ - -// "role" name=STRING ("extends" superRoles+=[Role|STRING])? "{" (usersAndGroups+=UsersAndGroups | -// referencedContexts+=ReferencedContext)+ "}" -protected class Role_Group extends GroupToken { - - public Role_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getRoleAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Role_RightCurlyBracketKeyword_5(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getRoleRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "role" -protected class Role_RoleKeyword_0 extends KeywordToken { - - public Role_RoleKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getRoleAccess().getRoleKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// name=STRING -protected class Role_NameAssignment_1 extends AssignmentToken { - - public Role_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRoleAccess().getNameAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Role_RoleKeyword_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.getRoleAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getRoleAccess().getNameSTRINGTerminalRuleCall_1_0(); - return obj; - } - return null; - } - -} - -// ("extends" superRoles+=[Role|STRING])? -protected class Role_Group_2 extends GroupToken { - - public Role_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getRoleAccess().getGroup_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Role_SuperRolesAssignment_2_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "extends" -protected class Role_ExtendsKeyword_2_0 extends KeywordToken { - - public Role_ExtendsKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getRoleAccess().getExtendsKeyword_2_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Role_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// superRoles+=[Role|STRING] -protected class Role_SuperRolesAssignment_2_1 extends AssignmentToken { - - public Role_SuperRolesAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRoleAccess().getSuperRolesAssignment_2_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Role_ExtendsKeyword_2_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("superRoles",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("superRoles"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getRoleAccess().getSuperRolesRoleCrossReference_2_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getRoleAccess().getSuperRolesRoleCrossReference_2_1_0(); - return obj; - } - } - return null; - } - -} - - -// "{" -protected class Role_LeftCurlyBracketKeyword_3 extends KeywordToken { - - public Role_LeftCurlyBracketKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getRoleAccess().getLeftCurlyBracketKeyword_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Role_Group_2(lastRuleCallOrigin, this, 0, inst); - case 1: return new Role_NameAssignment_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// (usersAndGroups+=UsersAndGroups | referencedContexts+=ReferencedContext)+ -protected class Role_Alternatives_4 extends AlternativesToken { - - public Role_Alternatives_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Alternatives getGrammarElement() { - return grammarAccess.getRoleAccess().getAlternatives_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Role_UsersAndGroupsAssignment_4_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new Role_ReferencedContextsAssignment_4_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// usersAndGroups+=UsersAndGroups -protected class Role_UsersAndGroupsAssignment_4_0 extends AssignmentToken { - - public Role_UsersAndGroupsAssignment_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRoleAccess().getUsersAndGroupsAssignment_4_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new UsersAndGroups_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("usersAndGroups",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("usersAndGroups"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getUsersAndGroupsRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getRoleAccess().getUsersAndGroupsUsersAndGroupsParserRuleCall_4_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 Role_Alternatives_4(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new Role_LeftCurlyBracketKeyword_3(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - -// referencedContexts+=ReferencedContext -protected class Role_ReferencedContextsAssignment_4_1 extends AssignmentToken { - - public Role_ReferencedContextsAssignment_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRoleAccess().getReferencedContextsAssignment_4_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ReferencedContext_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("referencedContexts",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("referencedContexts"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getReferencedContextRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getRoleAccess().getReferencedContextsReferencedContextParserRuleCall_4_1_0(); - consumed = obj; - return param; - } - } - return null; - } - - @Override - public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { - if(value == inst.getEObject() && !inst.isConsumed()) return null; - switch(index) { - case 0: return new Role_Alternatives_4(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new Role_LeftCurlyBracketKeyword_3(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - - -// "}" -protected class Role_RightCurlyBracketKeyword_5 extends KeywordToken { - - public Role_RightCurlyBracketKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getRoleAccess().getRightCurlyBracketKeyword_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new Role_Alternatives_4(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - - -/************ end Rule Role ****************/ - - -/************ begin Rule ReferencedContext **************** - * - * ReferencedContext: - * "accessContext" accessContextRef=STRING ";"; - * - **/ - -// "accessContext" accessContextRef=STRING ";" -protected class ReferencedContext_Group extends GroupToken { - - public ReferencedContext_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getReferencedContextAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ReferencedContext_SemicolonKeyword_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getReferencedContextRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "accessContext" -protected class ReferencedContext_AccessContextKeyword_0 extends KeywordToken { - - public ReferencedContext_AccessContextKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getReferencedContextAccess().getAccessContextKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// accessContextRef=STRING -protected class ReferencedContext_AccessContextRefAssignment_1 extends AssignmentToken { - - public ReferencedContext_AccessContextRefAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getReferencedContextAccess().getAccessContextRefAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ReferencedContext_AccessContextKeyword_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("accessContextRef",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("accessContextRef"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getReferencedContextAccess().getAccessContextRefSTRINGTerminalRuleCall_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getReferencedContextAccess().getAccessContextRefSTRINGTerminalRuleCall_1_0(); - return obj; - } - return null; - } - -} - -// ";" -protected class ReferencedContext_SemicolonKeyword_2 extends KeywordToken { - - public ReferencedContext_SemicolonKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getReferencedContextAccess().getSemicolonKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ReferencedContext_AccessContextRefAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - - -/************ end Rule ReferencedContext ****************/ - - -/************ begin Rule UsersAndGroups **************** - * - * UsersAndGroups: - * "guid" userOrGroupGuid=STRING ";"; - * - **/ - -// "guid" userOrGroupGuid=STRING ";" -protected class UsersAndGroups_Group extends GroupToken { - - public UsersAndGroups_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getUsersAndGroupsAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new UsersAndGroups_SemicolonKeyword_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getUsersAndGroupsRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "guid" -protected class UsersAndGroups_GuidKeyword_0 extends KeywordToken { - - public UsersAndGroups_GuidKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getUsersAndGroupsAccess().getGuidKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// userOrGroupGuid=STRING -protected class UsersAndGroups_UserOrGroupGuidAssignment_1 extends AssignmentToken { - - public UsersAndGroups_UserOrGroupGuidAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getUsersAndGroupsAccess().getUserOrGroupGuidAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new UsersAndGroups_GuidKeyword_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("userOrGroupGuid",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("userOrGroupGuid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getUsersAndGroupsAccess().getUserOrGroupGuidSTRINGTerminalRuleCall_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getUsersAndGroupsAccess().getUserOrGroupGuidSTRINGTerminalRuleCall_1_0(); - return obj; - } - return null; - } - -} - -// ";" -protected class UsersAndGroups_SemicolonKeyword_2 extends KeywordToken { - - public UsersAndGroups_SemicolonKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getUsersAndGroupsAccess().getSemicolonKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new UsersAndGroups_UserOrGroupGuidAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - - -/************ end Rule UsersAndGroups ****************/ - - -/************ begin Rule AccessContext **************** - * - * AccessContext: - * "accessContext" name=STRING ("extends" superAccessContexts+=[AccessContext|STRING])? "{" "guid" guid=STRING ";" - * (accessRules+=ObjectRestriction | hierarchyRestrictions+=HierarchyRestriction)+ "}"; - * - **/ - -// "accessContext" name=STRING ("extends" superAccessContexts+=[AccessContext|STRING])? "{" "guid" guid=STRING ";" -// (accessRules+=ObjectRestriction | hierarchyRestrictions+=HierarchyRestriction)+ "}" -protected class AccessContext_Group extends GroupToken { - - public AccessContext_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getAccessContextAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AccessContext_RightCurlyBracketKeyword_8(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getAccessContextRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "accessContext" -protected class AccessContext_AccessContextKeyword_0 extends KeywordToken { - - public AccessContext_AccessContextKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAccessContextAccess().getAccessContextKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// name=STRING -protected class AccessContext_NameAssignment_1 extends AssignmentToken { - - public AccessContext_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAccessContextAccess().getNameAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AccessContext_AccessContextKeyword_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.getAccessContextAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getAccessContextAccess().getNameSTRINGTerminalRuleCall_1_0(); - return obj; - } - return null; - } - -} - -// ("extends" superAccessContexts+=[AccessContext|STRING])? -protected class AccessContext_Group_2 extends GroupToken { - - public AccessContext_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getAccessContextAccess().getGroup_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AccessContext_SuperAccessContextsAssignment_2_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "extends" -protected class AccessContext_ExtendsKeyword_2_0 extends KeywordToken { - - public AccessContext_ExtendsKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAccessContextAccess().getExtendsKeyword_2_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AccessContext_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// superAccessContexts+=[AccessContext|STRING] -protected class AccessContext_SuperAccessContextsAssignment_2_1 extends AssignmentToken { - - public AccessContext_SuperAccessContextsAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAccessContextAccess().getSuperAccessContextsAssignment_2_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AccessContext_ExtendsKeyword_2_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("superAccessContexts",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("superAccessContexts"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getAccessContextAccess().getSuperAccessContextsAccessContextCrossReference_2_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getAccessContextAccess().getSuperAccessContextsAccessContextCrossReference_2_1_0(); - return obj; - } - } - return null; - } - -} - - -// "{" -protected class AccessContext_LeftCurlyBracketKeyword_3 extends KeywordToken { - - public AccessContext_LeftCurlyBracketKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAccessContextAccess().getLeftCurlyBracketKeyword_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AccessContext_Group_2(lastRuleCallOrigin, this, 0, inst); - case 1: return new AccessContext_NameAssignment_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// "guid" -protected class AccessContext_GuidKeyword_4 extends KeywordToken { - - public AccessContext_GuidKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAccessContextAccess().getGuidKeyword_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AccessContext_LeftCurlyBracketKeyword_3(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// guid=STRING -protected class AccessContext_GuidAssignment_5 extends AssignmentToken { - - public AccessContext_GuidAssignment_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAccessContextAccess().getGuidAssignment_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AccessContext_GuidKeyword_4(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("guid",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("guid"); - if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getAccessContextAccess().getGuidSTRINGTerminalRuleCall_5_0(), value, null)) { - type = AssignmentType.TERMINAL_RULE_CALL; - element = grammarAccess.getAccessContextAccess().getGuidSTRINGTerminalRuleCall_5_0(); - return obj; - } - return null; - } - -} - -// ";" -protected class AccessContext_SemicolonKeyword_6 extends KeywordToken { - - public AccessContext_SemicolonKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAccessContextAccess().getSemicolonKeyword_6(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AccessContext_GuidAssignment_5(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// (accessRules+=ObjectRestriction | hierarchyRestrictions+=HierarchyRestriction)+ -protected class AccessContext_Alternatives_7 extends AlternativesToken { - - public AccessContext_Alternatives_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Alternatives getGrammarElement() { - return grammarAccess.getAccessContextAccess().getAlternatives_7(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AccessContext_AccessRulesAssignment_7_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new AccessContext_HierarchyRestrictionsAssignment_7_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// accessRules+=ObjectRestriction -protected class AccessContext_AccessRulesAssignment_7_0 extends AssignmentToken { - - public AccessContext_AccessRulesAssignment_7_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAccessContextAccess().getAccessRulesAssignment_7_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ObjectRestriction_Alternatives(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("accessRules",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("accessRules"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getObjectRestrictionRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getAccessContextAccess().getAccessRulesObjectRestrictionParserRuleCall_7_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 AccessContext_Alternatives_7(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new AccessContext_SemicolonKeyword_6(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - -// hierarchyRestrictions+=HierarchyRestriction -protected class AccessContext_HierarchyRestrictionsAssignment_7_1 extends AssignmentToken { - - public AccessContext_HierarchyRestrictionsAssignment_7_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAccessContextAccess().getHierarchyRestrictionsAssignment_7_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new HierarchyRestriction_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("hierarchyRestrictions",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("hierarchyRestrictions"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getHierarchyRestrictionRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getAccessContextAccess().getHierarchyRestrictionsHierarchyRestrictionParserRuleCall_7_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 AccessContext_Alternatives_7(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new AccessContext_SemicolonKeyword_6(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - - -// "}" -protected class AccessContext_RightCurlyBracketKeyword_8 extends KeywordToken { - - public AccessContext_RightCurlyBracketKeyword_8(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAccessContextAccess().getRightCurlyBracketKeyword_8(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AccessContext_Alternatives_7(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - - -/************ end Rule AccessContext ****************/ - - -/************ begin Rule HierarchyRestriction **************** - * - * HierarchyRestriction: - * "childrenOf" artifactMatcherRef=[XArtifactMatcher|STRING] "{" accessRules+=ObjectRestriction+ "}"; - * - **/ - -// "childrenOf" artifactMatcherRef=[XArtifactMatcher|STRING] "{" accessRules+=ObjectRestriction+ "}" -protected class HierarchyRestriction_Group extends GroupToken { - - public HierarchyRestriction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getHierarchyRestrictionAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new HierarchyRestriction_RightCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getHierarchyRestrictionRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "childrenOf" -protected class HierarchyRestriction_ChildrenOfKeyword_0 extends KeywordToken { - - public HierarchyRestriction_ChildrenOfKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getHierarchyRestrictionAccess().getChildrenOfKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// artifactMatcherRef=[XArtifactMatcher|STRING] -protected class HierarchyRestriction_ArtifactMatcherRefAssignment_1 extends AssignmentToken { - - public HierarchyRestriction_ArtifactMatcherRefAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getHierarchyRestrictionAccess().getArtifactMatcherRefAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new HierarchyRestriction_ChildrenOfKeyword_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("artifactMatcherRef",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactMatcherRef"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getHierarchyRestrictionAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getHierarchyRestrictionAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_1_0(); - return obj; - } - } - return null; - } - -} - -// "{" -protected class HierarchyRestriction_LeftCurlyBracketKeyword_2 extends KeywordToken { - - public HierarchyRestriction_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getHierarchyRestrictionAccess().getLeftCurlyBracketKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new HierarchyRestriction_ArtifactMatcherRefAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// accessRules+=ObjectRestriction+ -protected class HierarchyRestriction_AccessRulesAssignment_3 extends AssignmentToken { - - public HierarchyRestriction_AccessRulesAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getHierarchyRestrictionAccess().getAccessRulesAssignment_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ObjectRestriction_Alternatives(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("accessRules",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("accessRules"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getObjectRestrictionRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getHierarchyRestrictionAccess().getAccessRulesObjectRestrictionParserRuleCall_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 HierarchyRestriction_AccessRulesAssignment_3(lastRuleCallOrigin, next, actIndex, consumed); - case 1: return new HierarchyRestriction_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - -// "}" -protected class HierarchyRestriction_RightCurlyBracketKeyword_4 extends KeywordToken { - - public HierarchyRestriction_RightCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getHierarchyRestrictionAccess().getRightCurlyBracketKeyword_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new HierarchyRestriction_AccessRulesAssignment_3(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - - -/************ end Rule HierarchyRestriction ****************/ - - -/************ begin Rule RelationTypeArtifactTypePredicate **************** - * - * RelationTypeArtifactTypePredicate: - * "artifactType" artifactTypeRef=[XArtifactType|STRING]; - * - **/ - -// "artifactType" artifactTypeRef=[XArtifactType|STRING] -protected class RelationTypeArtifactTypePredicate_Group extends GroupToken { - - public RelationTypeArtifactTypePredicate_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getRelationTypeArtifactTypePredicateAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeArtifactTypePredicate_ArtifactTypeRefAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getRelationTypeArtifactTypePredicateRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "artifactType" -protected class RelationTypeArtifactTypePredicate_ArtifactTypeKeyword_0 extends KeywordToken { - - public RelationTypeArtifactTypePredicate_ArtifactTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getRelationTypeArtifactTypePredicateAccess().getArtifactTypeKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// artifactTypeRef=[XArtifactType|STRING] -protected class RelationTypeArtifactTypePredicate_ArtifactTypeRefAssignment_1 extends AssignmentToken { - - public RelationTypeArtifactTypePredicate_ArtifactTypeRefAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRelationTypeArtifactTypePredicateAccess().getArtifactTypeRefAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeArtifactTypePredicate_ArtifactTypeKeyword_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("artifactTypeRef",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactTypeRef"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getRelationTypeArtifactTypePredicateAccess().getArtifactTypeRefXArtifactTypeCrossReference_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getRelationTypeArtifactTypePredicateAccess().getArtifactTypeRefXArtifactTypeCrossReference_1_0(); - return obj; - } - } - return null; - } - -} - - -/************ end Rule RelationTypeArtifactTypePredicate ****************/ - - -/************ begin Rule RelationTypeArtifactPredicate **************** - * - * RelationTypeArtifactPredicate: - * "artifact" artifactMatcherRef=[XArtifactMatcher|STRING]; - * - **/ - -// "artifact" artifactMatcherRef=[XArtifactMatcher|STRING] -protected class RelationTypeArtifactPredicate_Group extends GroupToken { - - public RelationTypeArtifactPredicate_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getRelationTypeArtifactPredicateAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeArtifactPredicate_ArtifactMatcherRefAssignment_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getRelationTypeArtifactPredicateRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// "artifact" -protected class RelationTypeArtifactPredicate_ArtifactKeyword_0 extends KeywordToken { - - public RelationTypeArtifactPredicate_ArtifactKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getRelationTypeArtifactPredicateAccess().getArtifactKeyword_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); - } - } - -} - -// artifactMatcherRef=[XArtifactMatcher|STRING] -protected class RelationTypeArtifactPredicate_ArtifactMatcherRefAssignment_1 extends AssignmentToken { - - public RelationTypeArtifactPredicate_ArtifactMatcherRefAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRelationTypeArtifactPredicateAccess().getArtifactMatcherRefAssignment_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeArtifactPredicate_ArtifactKeyword_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("artifactMatcherRef",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactMatcherRef"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getRelationTypeArtifactPredicateAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getRelationTypeArtifactPredicateAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_1_0(); - return obj; - } - } - return null; - } - -} - - -/************ end Rule RelationTypeArtifactPredicate ****************/ - - -/************ begin Rule RelationTypePredicate **************** - * - * RelationTypePredicate: - * RelationTypeArtifactPredicate | RelationTypeArtifactTypePredicate; - * - **/ - -// RelationTypeArtifactPredicate | RelationTypeArtifactTypePredicate -protected class RelationTypePredicate_Alternatives extends AlternativesToken { - - public RelationTypePredicate_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Alternatives getGrammarElement() { - return grammarAccess.getRelationTypePredicateAccess().getAlternatives(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypePredicate_RelationTypeArtifactPredicateParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new RelationTypePredicate_RelationTypeArtifactTypePredicateParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getRelationTypeArtifactPredicateRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getRelationTypeArtifactTypePredicateRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// RelationTypeArtifactPredicate -protected class RelationTypePredicate_RelationTypeArtifactPredicateParserRuleCall_0 extends RuleCallToken { - - public RelationTypePredicate_RelationTypeArtifactPredicateParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getRelationTypePredicateAccess().getRelationTypeArtifactPredicateParserRuleCall_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeArtifactPredicate_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getRelationTypeArtifactPredicateRule().getType().getClassifier()) - return null; - if(checkForRecursion(RelationTypeArtifactPredicate_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); - } - } -} - -// RelationTypeArtifactTypePredicate -protected class RelationTypePredicate_RelationTypeArtifactTypePredicateParserRuleCall_1 extends RuleCallToken { - - public RelationTypePredicate_RelationTypeArtifactTypePredicateParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getRelationTypePredicateAccess().getRelationTypeArtifactTypePredicateParserRuleCall_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeArtifactTypePredicate_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getRelationTypeArtifactTypePredicateRule().getType().getClassifier()) - return null; - if(checkForRecursion(RelationTypeArtifactTypePredicate_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 RelationTypePredicate ****************/ - - -/************ begin Rule ObjectRestriction **************** - * - * ObjectRestriction: - * ArtifactMatchRestriction | ArtifactTypeRestriction | RelationTypeRestriction | AttributeTypeRestriction; - * - **/ - -// ArtifactMatchRestriction | ArtifactTypeRestriction | RelationTypeRestriction | AttributeTypeRestriction -protected class ObjectRestriction_Alternatives extends AlternativesToken { - - public ObjectRestriction_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Alternatives getGrammarElement() { - return grammarAccess.getObjectRestrictionAccess().getAlternatives(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ObjectRestriction_ArtifactMatchRestrictionParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new ObjectRestriction_ArtifactTypeRestrictionParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); - case 2: return new ObjectRestriction_RelationTypeRestrictionParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); - case 3: return new ObjectRestriction_AttributeTypeRestrictionParserRuleCall_3(lastRuleCallOrigin, this, 3, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getArtifactMatchRestrictionRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getArtifactTypeRestrictionRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getAttributeTypeRestrictionRule().getType().getClassifier() && - getEObject().eClass() != grammarAccess.getRelationTypeRestrictionRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// ArtifactMatchRestriction -protected class ObjectRestriction_ArtifactMatchRestrictionParserRuleCall_0 extends RuleCallToken { - - public ObjectRestriction_ArtifactMatchRestrictionParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getObjectRestrictionAccess().getArtifactMatchRestrictionParserRuleCall_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ArtifactMatchRestriction_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getArtifactMatchRestrictionRule().getType().getClassifier()) - return null; - if(checkForRecursion(ArtifactMatchRestriction_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); - } - } -} - -// ArtifactTypeRestriction -protected class ObjectRestriction_ArtifactTypeRestrictionParserRuleCall_1 extends RuleCallToken { - - public ObjectRestriction_ArtifactTypeRestrictionParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getObjectRestrictionAccess().getArtifactTypeRestrictionParserRuleCall_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ArtifactTypeRestriction_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getArtifactTypeRestrictionRule().getType().getClassifier()) - return null; - if(checkForRecursion(ArtifactTypeRestriction_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); - } - } -} - -// RelationTypeRestriction -protected class ObjectRestriction_RelationTypeRestrictionParserRuleCall_2 extends RuleCallToken { - - public ObjectRestriction_RelationTypeRestrictionParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getObjectRestrictionAccess().getRelationTypeRestrictionParserRuleCall_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeRestriction_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getRelationTypeRestrictionRule().getType().getClassifier()) - return null; - if(checkForRecursion(RelationTypeRestriction_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); - } - } -} - -// AttributeTypeRestriction -protected class ObjectRestriction_AttributeTypeRestrictionParserRuleCall_3 extends RuleCallToken { - - public ObjectRestriction_AttributeTypeRestrictionParserRuleCall_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public RuleCall getGrammarElement() { - return grammarAccess.getObjectRestrictionAccess().getAttributeTypeRestrictionParserRuleCall_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AttributeTypeRestriction_Group(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getAttributeTypeRestrictionRule().getType().getClassifier()) - return null; - if(checkForRecursion(AttributeTypeRestriction_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 ObjectRestriction ****************/ - - -/************ begin Rule ArtifactMatchRestriction **************** - * - * ArtifactMatchRestriction: - * permission=AccessPermissionEnum "edit" "artifact" artifactMatcherRef=[XArtifactMatcher|STRING] ";"; - * - **/ - -// permission=AccessPermissionEnum "edit" "artifact" artifactMatcherRef=[XArtifactMatcher|STRING] ";" -protected class ArtifactMatchRestriction_Group extends GroupToken { - - public ArtifactMatchRestriction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getArtifactMatchRestrictionAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ArtifactMatchRestriction_SemicolonKeyword_4(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getArtifactMatchRestrictionRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// permission=AccessPermissionEnum -protected class ArtifactMatchRestriction_PermissionAssignment_0 extends AssignmentToken { - - public ArtifactMatchRestriction_PermissionAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getArtifactMatchRestrictionAccess().getPermissionAssignment_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("permission",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("permission"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getArtifactMatchRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getArtifactMatchRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(); - return obj; - } - return null; - } - -} - -// "edit" -protected class ArtifactMatchRestriction_EditKeyword_1 extends KeywordToken { - - public ArtifactMatchRestriction_EditKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getArtifactMatchRestrictionAccess().getEditKeyword_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ArtifactMatchRestriction_PermissionAssignment_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "artifact" -protected class ArtifactMatchRestriction_ArtifactKeyword_2 extends KeywordToken { - - public ArtifactMatchRestriction_ArtifactKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getArtifactMatchRestrictionAccess().getArtifactKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ArtifactMatchRestriction_EditKeyword_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// artifactMatcherRef=[XArtifactMatcher|STRING] -protected class ArtifactMatchRestriction_ArtifactMatcherRefAssignment_3 extends AssignmentToken { - - public ArtifactMatchRestriction_ArtifactMatcherRefAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getArtifactMatchRestrictionAccess().getArtifactMatcherRefAssignment_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ArtifactMatchRestriction_ArtifactKeyword_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("artifactMatcherRef",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactMatcherRef"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getArtifactMatchRestrictionAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_3_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getArtifactMatchRestrictionAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_3_0(); - return obj; - } - } - return null; - } - -} - -// ";" -protected class ArtifactMatchRestriction_SemicolonKeyword_4 extends KeywordToken { - - public ArtifactMatchRestriction_SemicolonKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getArtifactMatchRestrictionAccess().getSemicolonKeyword_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ArtifactMatchRestriction_ArtifactMatcherRefAssignment_3(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - - -/************ end Rule ArtifactMatchRestriction ****************/ - - -/************ begin Rule ArtifactTypeRestriction **************** - * - * ArtifactTypeRestriction: - * permission=AccessPermissionEnum "edit" "artifactType" artifactTypeRef=[XArtifactType|STRING] ";"; - * - **/ - -// permission=AccessPermissionEnum "edit" "artifactType" artifactTypeRef=[XArtifactType|STRING] ";" -protected class ArtifactTypeRestriction_Group extends GroupToken { - - public ArtifactTypeRestriction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getArtifactTypeRestrictionAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ArtifactTypeRestriction_SemicolonKeyword_4(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getArtifactTypeRestrictionRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// permission=AccessPermissionEnum -protected class ArtifactTypeRestriction_PermissionAssignment_0 extends AssignmentToken { - - public ArtifactTypeRestriction_PermissionAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getArtifactTypeRestrictionAccess().getPermissionAssignment_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("permission",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("permission"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getArtifactTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getArtifactTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(); - return obj; - } - return null; - } - -} - -// "edit" -protected class ArtifactTypeRestriction_EditKeyword_1 extends KeywordToken { - - public ArtifactTypeRestriction_EditKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getArtifactTypeRestrictionAccess().getEditKeyword_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ArtifactTypeRestriction_PermissionAssignment_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "artifactType" -protected class ArtifactTypeRestriction_ArtifactTypeKeyword_2 extends KeywordToken { - - public ArtifactTypeRestriction_ArtifactTypeKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getArtifactTypeRestrictionAccess().getArtifactTypeKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ArtifactTypeRestriction_EditKeyword_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// artifactTypeRef=[XArtifactType|STRING] -protected class ArtifactTypeRestriction_ArtifactTypeRefAssignment_3 extends AssignmentToken { - - public ArtifactTypeRestriction_ArtifactTypeRefAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getArtifactTypeRestrictionAccess().getArtifactTypeRefAssignment_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ArtifactTypeRestriction_ArtifactTypeKeyword_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("artifactTypeRef",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactTypeRef"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getArtifactTypeRestrictionAccess().getArtifactTypeRefXArtifactTypeCrossReference_3_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getArtifactTypeRestrictionAccess().getArtifactTypeRefXArtifactTypeCrossReference_3_0(); - return obj; - } - } - return null; - } - -} - -// ";" -protected class ArtifactTypeRestriction_SemicolonKeyword_4 extends KeywordToken { - - public ArtifactTypeRestriction_SemicolonKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getArtifactTypeRestrictionAccess().getSemicolonKeyword_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new ArtifactTypeRestriction_ArtifactTypeRefAssignment_3(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - - -/************ end Rule ArtifactTypeRestriction ****************/ - - -/************ begin Rule AttributeTypeRestriction **************** - * - * AttributeTypeRestriction: - * permission=AccessPermissionEnum "edit" "attributeType" attributeTypeRef=[XAttributeType|STRING] ("of" "artifactType" - * artifactTypeRef=[XArtifactType|STRING])? ";"; - * - **/ - -// permission=AccessPermissionEnum "edit" "attributeType" attributeTypeRef=[XAttributeType|STRING] ("of" "artifactType" -// artifactTypeRef=[XArtifactType|STRING])? ";" -protected class AttributeTypeRestriction_Group extends GroupToken { - - public AttributeTypeRestriction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getAttributeTypeRestrictionAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AttributeTypeRestriction_SemicolonKeyword_5(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getAttributeTypeRestrictionRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// permission=AccessPermissionEnum -protected class AttributeTypeRestriction_PermissionAssignment_0 extends AssignmentToken { - - public AttributeTypeRestriction_PermissionAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAttributeTypeRestrictionAccess().getPermissionAssignment_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("permission",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("permission"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getAttributeTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getAttributeTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(); - return obj; - } - return null; - } - -} - -// "edit" -protected class AttributeTypeRestriction_EditKeyword_1 extends KeywordToken { - - public AttributeTypeRestriction_EditKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAttributeTypeRestrictionAccess().getEditKeyword_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AttributeTypeRestriction_PermissionAssignment_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "attributeType" -protected class AttributeTypeRestriction_AttributeTypeKeyword_2 extends KeywordToken { - - public AttributeTypeRestriction_AttributeTypeKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAttributeTypeRestrictionAccess().getAttributeTypeKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AttributeTypeRestriction_EditKeyword_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// attributeTypeRef=[XAttributeType|STRING] -protected class AttributeTypeRestriction_AttributeTypeRefAssignment_3 extends AssignmentToken { - - public AttributeTypeRestriction_AttributeTypeRefAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAttributeTypeRestrictionAccess().getAttributeTypeRefAssignment_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AttributeTypeRestriction_AttributeTypeKeyword_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("attributeTypeRef",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("attributeTypeRef"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getAttributeTypeRestrictionAccess().getAttributeTypeRefXAttributeTypeCrossReference_3_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getAttributeTypeRestrictionAccess().getAttributeTypeRefXAttributeTypeCrossReference_3_0(); - return obj; - } - } - return null; - } - -} - -// ("of" "artifactType" artifactTypeRef=[XArtifactType|STRING])? -protected class AttributeTypeRestriction_Group_4 extends GroupToken { - - public AttributeTypeRestriction_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getAttributeTypeRestrictionAccess().getGroup_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AttributeTypeRestriction_ArtifactTypeRefAssignment_4_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "of" -protected class AttributeTypeRestriction_OfKeyword_4_0 extends KeywordToken { - - public AttributeTypeRestriction_OfKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAttributeTypeRestrictionAccess().getOfKeyword_4_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AttributeTypeRestriction_AttributeTypeRefAssignment_3(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "artifactType" -protected class AttributeTypeRestriction_ArtifactTypeKeyword_4_1 extends KeywordToken { - - public AttributeTypeRestriction_ArtifactTypeKeyword_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAttributeTypeRestrictionAccess().getArtifactTypeKeyword_4_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AttributeTypeRestriction_OfKeyword_4_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// artifactTypeRef=[XArtifactType|STRING] -protected class AttributeTypeRestriction_ArtifactTypeRefAssignment_4_2 extends AssignmentToken { - - public AttributeTypeRestriction_ArtifactTypeRefAssignment_4_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getAttributeTypeRestrictionAccess().getArtifactTypeRefAssignment_4_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AttributeTypeRestriction_ArtifactTypeKeyword_4_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("artifactTypeRef",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactTypeRef"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getAttributeTypeRestrictionAccess().getArtifactTypeRefXArtifactTypeCrossReference_4_2_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getAttributeTypeRestrictionAccess().getArtifactTypeRefXArtifactTypeCrossReference_4_2_0(); - return obj; - } - } - return null; - } - -} - - -// ";" -protected class AttributeTypeRestriction_SemicolonKeyword_5 extends KeywordToken { - - public AttributeTypeRestriction_SemicolonKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getAttributeTypeRestrictionAccess().getSemicolonKeyword_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new AttributeTypeRestriction_Group_4(lastRuleCallOrigin, this, 0, inst); - case 1: return new AttributeTypeRestriction_AttributeTypeRefAssignment_3(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - - -/************ end Rule AttributeTypeRestriction ****************/ - - -/************ begin Rule LegacyRelationTypeRestriction **************** - * - * LegacyRelationTypeRestriction: - * permission=AccessPermissionEnum "edit" "relationType" relationTypeRef=[XRelationType|STRING] - * restrictedToSide=XRelationSideEnum ("artifact" artifactMatcherRef=[XArtifactMatcher|STRING])? ";"; - * - **/ - -// permission=AccessPermissionEnum "edit" "relationType" relationTypeRef=[XRelationType|STRING] -// restrictedToSide=XRelationSideEnum ("artifact" artifactMatcherRef=[XArtifactMatcher|STRING])? ";" -protected class LegacyRelationTypeRestriction_Group extends GroupToken { - - public LegacyRelationTypeRestriction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getLegacyRelationTypeRestrictionAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new LegacyRelationTypeRestriction_SemicolonKeyword_6(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getLegacyRelationTypeRestrictionRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// permission=AccessPermissionEnum -protected class LegacyRelationTypeRestriction_PermissionAssignment_0 extends AssignmentToken { - - public LegacyRelationTypeRestriction_PermissionAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getLegacyRelationTypeRestrictionAccess().getPermissionAssignment_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("permission",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("permission"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getLegacyRelationTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getLegacyRelationTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(); - return obj; - } - return null; - } - -} - -// "edit" -protected class LegacyRelationTypeRestriction_EditKeyword_1 extends KeywordToken { - - public LegacyRelationTypeRestriction_EditKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getLegacyRelationTypeRestrictionAccess().getEditKeyword_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new LegacyRelationTypeRestriction_PermissionAssignment_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "relationType" -protected class LegacyRelationTypeRestriction_RelationTypeKeyword_2 extends KeywordToken { - - public LegacyRelationTypeRestriction_RelationTypeKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getLegacyRelationTypeRestrictionAccess().getRelationTypeKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new LegacyRelationTypeRestriction_EditKeyword_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// relationTypeRef=[XRelationType|STRING] -protected class LegacyRelationTypeRestriction_RelationTypeRefAssignment_3 extends AssignmentToken { - - public LegacyRelationTypeRestriction_RelationTypeRefAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getLegacyRelationTypeRestrictionAccess().getRelationTypeRefAssignment_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new LegacyRelationTypeRestriction_RelationTypeKeyword_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("relationTypeRef",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationTypeRef"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getLegacyRelationTypeRestrictionAccess().getRelationTypeRefXRelationTypeCrossReference_3_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getLegacyRelationTypeRestrictionAccess().getRelationTypeRefXRelationTypeCrossReference_3_0(); - return obj; - } - } - return null; - } - -} - -// restrictedToSide=XRelationSideEnum -protected class LegacyRelationTypeRestriction_RestrictedToSideAssignment_4 extends AssignmentToken { - - public LegacyRelationTypeRestriction_RestrictedToSideAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getLegacyRelationTypeRestrictionAccess().getRestrictedToSideAssignment_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new LegacyRelationTypeRestriction_RelationTypeRefAssignment_3(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("restrictedToSide",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("restrictedToSide"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getLegacyRelationTypeRestrictionAccess().getRestrictedToSideXRelationSideEnumEnumRuleCall_4_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getLegacyRelationTypeRestrictionAccess().getRestrictedToSideXRelationSideEnumEnumRuleCall_4_0(); - return obj; - } - return null; - } - -} - -// ("artifact" artifactMatcherRef=[XArtifactMatcher|STRING])? -protected class LegacyRelationTypeRestriction_Group_5 extends GroupToken { - - public LegacyRelationTypeRestriction_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getLegacyRelationTypeRestrictionAccess().getGroup_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new LegacyRelationTypeRestriction_ArtifactMatcherRefAssignment_5_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "artifact" -protected class LegacyRelationTypeRestriction_ArtifactKeyword_5_0 extends KeywordToken { - - public LegacyRelationTypeRestriction_ArtifactKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getLegacyRelationTypeRestrictionAccess().getArtifactKeyword_5_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new LegacyRelationTypeRestriction_RestrictedToSideAssignment_4(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// artifactMatcherRef=[XArtifactMatcher|STRING] -protected class LegacyRelationTypeRestriction_ArtifactMatcherRefAssignment_5_1 extends AssignmentToken { - - public LegacyRelationTypeRestriction_ArtifactMatcherRefAssignment_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getLegacyRelationTypeRestrictionAccess().getArtifactMatcherRefAssignment_5_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new LegacyRelationTypeRestriction_ArtifactKeyword_5_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("artifactMatcherRef",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactMatcherRef"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getLegacyRelationTypeRestrictionAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_5_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getLegacyRelationTypeRestrictionAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_5_1_0(); - return obj; - } - } - return null; - } - -} - - -// ";" -protected class LegacyRelationTypeRestriction_SemicolonKeyword_6 extends KeywordToken { - - public LegacyRelationTypeRestriction_SemicolonKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getLegacyRelationTypeRestrictionAccess().getSemicolonKeyword_6(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new LegacyRelationTypeRestriction_Group_5(lastRuleCallOrigin, this, 0, inst); - case 1: return new LegacyRelationTypeRestriction_RestrictedToSideAssignment_4(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - - -/************ end Rule LegacyRelationTypeRestriction ****************/ - - -/************ begin Rule RelationTypeRestriction **************** - * - * RelationTypeRestriction: - * permission=AccessPermissionEnum "edit" "relationType" (relationTypeMatch?=RelationTypeMatch | - * relationTypeRef=[XRelationType|STRING]) restrictedToSide=XRelationSideEnum predicate=RelationTypePredicate? ";"; - * - **/ - -// permission=AccessPermissionEnum "edit" "relationType" (relationTypeMatch?=RelationTypeMatch | -// relationTypeRef=[XRelationType|STRING]) restrictedToSide=XRelationSideEnum predicate=RelationTypePredicate? ";" -protected class RelationTypeRestriction_Group extends GroupToken { - - public RelationTypeRestriction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Group getGrammarElement() { - return grammarAccess.getRelationTypeRestrictionAccess().getGroup(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeRestriction_SemicolonKeyword_6(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if(getEObject().eClass() != grammarAccess.getRelationTypeRestrictionRule().getType().getClassifier()) - return null; - return eObjectConsumer; - } - -} - -// permission=AccessPermissionEnum -protected class RelationTypeRestriction_PermissionAssignment_0 extends AssignmentToken { - - public RelationTypeRestriction_PermissionAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRelationTypeRestrictionAccess().getPermissionAssignment_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("permission",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("permission"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getRelationTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getRelationTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(); - return obj; - } - return null; - } - -} - -// "edit" -protected class RelationTypeRestriction_EditKeyword_1 extends KeywordToken { - - public RelationTypeRestriction_EditKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getRelationTypeRestrictionAccess().getEditKeyword_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeRestriction_PermissionAssignment_0(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// "relationType" -protected class RelationTypeRestriction_RelationTypeKeyword_2 extends KeywordToken { - - public RelationTypeRestriction_RelationTypeKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeKeyword_2(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeRestriction_EditKeyword_1(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - -} - -// relationTypeMatch?=RelationTypeMatch | relationTypeRef=[XRelationType|STRING] -protected class RelationTypeRestriction_Alternatives_3 extends AlternativesToken { - - public RelationTypeRestriction_Alternatives_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Alternatives getGrammarElement() { - return grammarAccess.getRelationTypeRestrictionAccess().getAlternatives_3(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeRestriction_RelationTypeMatchAssignment_3_0(lastRuleCallOrigin, this, 0, inst); - case 1: return new RelationTypeRestriction_RelationTypeRefAssignment_3_1(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -// relationTypeMatch?=RelationTypeMatch -protected class RelationTypeRestriction_RelationTypeMatchAssignment_3_0 extends AssignmentToken { - - public RelationTypeRestriction_RelationTypeMatchAssignment_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeMatchAssignment_3_0(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeRestriction_RelationTypeKeyword_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("relationTypeMatch",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationTypeMatch"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeMatchRelationTypeMatchEnumRuleCall_3_0_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeMatchRelationTypeMatchEnumRuleCall_3_0_0(); - return obj; - } - return null; - } - -} - -// relationTypeRef=[XRelationType|STRING] -protected class RelationTypeRestriction_RelationTypeRefAssignment_3_1 extends AssignmentToken { - - public RelationTypeRestriction_RelationTypeRefAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeRefAssignment_3_1(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeRestriction_RelationTypeKeyword_2(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("relationTypeRef",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationTypeRef"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeRefXRelationTypeCrossReference_3_1_0().getType().getClassifier())) { - type = AssignmentType.CROSS_REFERENCE; - element = grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeRefXRelationTypeCrossReference_3_1_0(); - return obj; - } - } - return null; - } - -} - - -// restrictedToSide=XRelationSideEnum -protected class RelationTypeRestriction_RestrictedToSideAssignment_4 extends AssignmentToken { - - public RelationTypeRestriction_RestrictedToSideAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRelationTypeRestrictionAccess().getRestrictedToSideAssignment_4(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeRestriction_Alternatives_3(lastRuleCallOrigin, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("restrictedToSide",true)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("restrictedToSide"); - if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getRelationTypeRestrictionAccess().getRestrictedToSideXRelationSideEnumEnumRuleCall_4_0(), value, null)) { - type = AssignmentType.ENUM_RULE_CALL; - element = grammarAccess.getRelationTypeRestrictionAccess().getRestrictedToSideXRelationSideEnumEnumRuleCall_4_0(); - return obj; - } - return null; - } - -} - -// predicate=RelationTypePredicate? -protected class RelationTypeRestriction_PredicateAssignment_5 extends AssignmentToken { - - public RelationTypeRestriction_PredicateAssignment_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Assignment getGrammarElement() { - return grammarAccess.getRelationTypeRestrictionAccess().getPredicateAssignment_5(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypePredicate_Alternatives(this, this, 0, inst); - default: return null; - } - } - - @Override - public IEObjectConsumer tryConsume() { - if((value = eObjectConsumer.getConsumable("predicate",false)) == null) return null; - IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("predicate"); - if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl - IEObjectConsumer param = createEObjectConsumer((EObject)value); - if(param.isInstanceOf(grammarAccess.getRelationTypePredicateRule().getType().getClassifier())) { - type = AssignmentType.PARSER_RULE_CALL; - element = grammarAccess.getRelationTypeRestrictionAccess().getPredicateRelationTypePredicateParserRuleCall_5_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 RelationTypeRestriction_RestrictedToSideAssignment_4(lastRuleCallOrigin, next, actIndex, consumed); - default: return null; - } - } -} - -// ";" -protected class RelationTypeRestriction_SemicolonKeyword_6 extends KeywordToken { - - public RelationTypeRestriction_SemicolonKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { - super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); - } - - @Override - public Keyword getGrammarElement() { - return grammarAccess.getRelationTypeRestrictionAccess().getSemicolonKeyword_6(); - } - - @Override - public AbstractToken createFollower(int index, IEObjectConsumer inst) { - switch(index) { - case 0: return new RelationTypeRestriction_PredicateAssignment_5(lastRuleCallOrigin, this, 0, inst); - case 1: return new RelationTypeRestriction_RestrictedToSideAssignment_4(lastRuleCallOrigin, this, 1, inst); - default: return null; - } - } - -} - -/************ end Rule RelationTypeRestriction ****************/ + @Inject + private OseeDslGrammarAccess 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 OseeDsl_Group(this, this, 0, inst); + case 1: + return new Import_Group(this, this, 1, inst); + case 2: + return new OseeElement_Alternatives(this, this, 2, inst); + case 3: + return new OseeType_Alternatives(this, this, 3, inst); + case 4: + return new XArtifactType_Group(this, this, 4, inst); + case 5: + return new XAttributeTypeRef_Group(this, this, 5, inst); + case 6: + return new XAttributeType_Group(this, this, 6, inst); + case 7: + return new XOseeEnumType_Group(this, this, 7, inst); + case 8: + return new XOseeEnumEntry_Group(this, this, 8, inst); + case 9: + return new XOseeEnumOverride_Group(this, this, 9, inst); + case 10: + return new OverrideOption_Alternatives(this, this, 10, inst); + case 11: + return new AddEnum_Group(this, this, 11, inst); + case 12: + return new RemoveEnum_Group(this, this, 12, inst); + case 13: + return new XOseeArtifactTypeOverride_Group(this, this, 13, inst); + case 14: + return new AttributeOverrideOption_Alternatives(this, this, 14, inst); + case 15: + return new AddAttribute_Group(this, this, 15, inst); + case 16: + return new RemoveAttribute_Group(this, this, 16, inst); + case 17: + return new UpdateAttribute_Group(this, this, 17, inst); + case 18: + return new XRelationType_Group(this, this, 18, inst); + case 19: + return new Condition_Alternatives(this, this, 19, inst); + case 20: + return new SimpleCondition_Group(this, this, 20, inst); + case 21: + return new CompoundCondition_Group(this, this, 21, inst); + case 22: + return new XArtifactMatcher_Group(this, this, 22, inst); + case 23: + return new Role_Group(this, this, 23, inst); + case 24: + return new ReferencedContext_Group(this, this, 24, inst); + case 25: + return new UsersAndGroups_Group(this, this, 25, inst); + case 26: + return new AccessContext_Group(this, this, 26, inst); + case 27: + return new HierarchyRestriction_Group(this, this, 27, inst); + case 28: + return new RelationTypeArtifactTypePredicate_Group(this, this, 28, inst); + case 29: + return new RelationTypeArtifactPredicate_Group(this, this, 29, inst); + case 30: + return new RelationTypePredicate_Alternatives(this, this, 30, inst); + case 31: + return new ObjectRestriction_Alternatives(this, this, 31, inst); + case 32: + return new ArtifactMatchRestriction_Group(this, this, 32, inst); + case 33: + return new ArtifactTypeRestriction_Group(this, this, 33, inst); + case 34: + return new AttributeTypeRestriction_Group(this, this, 34, inst); + case 35: + return new LegacyRelationTypeRestriction_Group(this, this, 35, inst); + case 36: + return new RelationTypeRestriction_Group(this, this, 36, inst); + default: + return null; + } + } + } + + /************ + * begin Rule OseeDsl **************** OseeDsl: imports+=Import* (artifactTypes+=XArtifactType | + * relationTypes+=XRelationType | attributeTypes+=XAttributeType | enumTypes+=XOseeEnumType | + * enumOverrides+=XOseeEnumOverride | artifactTypeOverrides+=XOseeArtifactTypeOverride)* + * (artifactMatchRefs+=XArtifactMatcher | accessDeclarations+=AccessContext | roleDeclarations+=Role)*; + **/ + + // imports+=Import* (artifactTypes+=XArtifactType | relationTypes+=XRelationType | attributeTypes+=XAttributeType | + // enumTypes+=XOseeEnumType | enumOverrides+=XOseeEnumOverride | artifactTypeOverrides+=XOseeArtifactTypeOverride)* + // (artifactMatchRefs+=XArtifactMatcher | accessDeclarations+=AccessContext | roleDeclarations+=Role)* + protected class OseeDsl_Group extends GroupToken { + + public OseeDsl_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getOseeDslAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new OseeDsl_Alternatives_2(lastRuleCallOrigin, this, 0, inst); + case 1: + return new OseeDsl_Alternatives_1(lastRuleCallOrigin, this, 1, inst); + case 2: + return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, this, 2, inst); + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index - 3, inst); + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getOseeDslRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // imports+=Import* + protected class OseeDsl_ImportsAssignment_0 extends AssignmentToken { + + public OseeDsl_ImportsAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getOseeDslAccess().getImportsAssignment_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Import_Group(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.getImportRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getOseeDslAccess().getImportsImportParserRuleCall_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 OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex, index - 1, consumed); + } + } + } + + // (artifactTypes+=XArtifactType | relationTypes+=XRelationType | attributeTypes+=XAttributeType | enumTypes+=XOseeEnumType + // | enumOverrides+=XOseeEnumOverride | artifactTypeOverrides+=XOseeArtifactTypeOverride)* + protected class OseeDsl_Alternatives_1 extends AlternativesToken { + + public OseeDsl_Alternatives_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Alternatives getGrammarElement() { + return grammarAccess.getOseeDslAccess().getAlternatives_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new OseeDsl_ArtifactTypesAssignment_1_0(lastRuleCallOrigin, this, 0, inst); + case 1: + return new OseeDsl_RelationTypesAssignment_1_1(lastRuleCallOrigin, this, 1, inst); + case 2: + return new OseeDsl_AttributeTypesAssignment_1_2(lastRuleCallOrigin, this, 2, inst); + case 3: + return new OseeDsl_EnumTypesAssignment_1_3(lastRuleCallOrigin, this, 3, inst); + case 4: + return new OseeDsl_EnumOverridesAssignment_1_4(lastRuleCallOrigin, this, 4, inst); + case 5: + return new OseeDsl_ArtifactTypeOverridesAssignment_1_5(lastRuleCallOrigin, this, 5, inst); + default: + return null; + } + } + + } + + // artifactTypes+=XArtifactType + protected class OseeDsl_ArtifactTypesAssignment_1_0 extends AssignmentToken { + + public OseeDsl_ArtifactTypesAssignment_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getOseeDslAccess().getArtifactTypesAssignment_1_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("artifactTypes", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactTypes"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getXArtifactTypeRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getOseeDslAccess().getArtifactTypesXArtifactTypeParserRuleCall_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 OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex, index - 2, consumed); + } + } + } + + // relationTypes+=XRelationType + protected class OseeDsl_RelationTypesAssignment_1_1 extends AssignmentToken { + + public OseeDsl_RelationTypesAssignment_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getOseeDslAccess().getRelationTypesAssignment_1_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("relationTypes", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationTypes"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getXRelationTypeRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getOseeDslAccess().getRelationTypesXRelationTypeParserRuleCall_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 OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex, index - 2, consumed); + } + } + } + + // attributeTypes+=XAttributeType + protected class OseeDsl_AttributeTypesAssignment_1_2 extends AssignmentToken { + + public OseeDsl_AttributeTypesAssignment_1_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getOseeDslAccess().getAttributeTypesAssignment_1_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("attributeTypes", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("attributeTypes"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getXAttributeTypeRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getOseeDslAccess().getAttributeTypesXAttributeTypeParserRuleCall_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 OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex, index - 2, consumed); + } + } + } + + // enumTypes+=XOseeEnumType + protected class OseeDsl_EnumTypesAssignment_1_3 extends AssignmentToken { + + public OseeDsl_EnumTypesAssignment_1_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getOseeDslAccess().getEnumTypesAssignment_1_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumType_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("enumTypes", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("enumTypes"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getXOseeEnumTypeRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getOseeDslAccess().getEnumTypesXOseeEnumTypeParserRuleCall_1_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 OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex, index - 2, consumed); + } + } + } + + // enumOverrides+=XOseeEnumOverride + protected class OseeDsl_EnumOverridesAssignment_1_4 extends AssignmentToken { + + public OseeDsl_EnumOverridesAssignment_1_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getOseeDslAccess().getEnumOverridesAssignment_1_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumOverride_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("enumOverrides", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("enumOverrides"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getXOseeEnumOverrideRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getOseeDslAccess().getEnumOverridesXOseeEnumOverrideParserRuleCall_1_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 OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex, index - 2, consumed); + } + } + } + + // artifactTypeOverrides+=XOseeArtifactTypeOverride + protected class OseeDsl_ArtifactTypeOverridesAssignment_1_5 extends AssignmentToken { + + public OseeDsl_ArtifactTypeOverridesAssignment_1_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getOseeDslAccess().getArtifactTypeOverridesAssignment_1_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeArtifactTypeOverride_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("artifactTypeOverrides", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactTypeOverrides"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getXOseeArtifactTypeOverrideRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = + grammarAccess.getOseeDslAccess().getArtifactTypeOverridesXOseeArtifactTypeOverrideParserRuleCall_1_5_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 OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex, index - 2, consumed); + } + } + } + + // (artifactMatchRefs+=XArtifactMatcher | accessDeclarations+=AccessContext | roleDeclarations+=Role)* + protected class OseeDsl_Alternatives_2 extends AlternativesToken { + + public OseeDsl_Alternatives_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Alternatives getGrammarElement() { + return grammarAccess.getOseeDslAccess().getAlternatives_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new OseeDsl_ArtifactMatchRefsAssignment_2_0(lastRuleCallOrigin, this, 0, inst); + case 1: + return new OseeDsl_AccessDeclarationsAssignment_2_1(lastRuleCallOrigin, this, 1, inst); + case 2: + return new OseeDsl_RoleDeclarationsAssignment_2_2(lastRuleCallOrigin, this, 2, inst); + default: + return null; + } + } + + } + + // artifactMatchRefs+=XArtifactMatcher + protected class OseeDsl_ArtifactMatchRefsAssignment_2_0 extends AssignmentToken { + + public OseeDsl_ArtifactMatchRefsAssignment_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getOseeDslAccess().getArtifactMatchRefsAssignment_2_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactMatcher_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("artifactMatchRefs", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactMatchRefs"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getXArtifactMatcherRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getOseeDslAccess().getArtifactMatchRefsXArtifactMatcherParserRuleCall_2_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 OseeDsl_Alternatives_2(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); + case 2: + return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex, index - 3, consumed); + } + } + } + + // accessDeclarations+=AccessContext + protected class OseeDsl_AccessDeclarationsAssignment_2_1 extends AssignmentToken { + + public OseeDsl_AccessDeclarationsAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getOseeDslAccess().getAccessDeclarationsAssignment_2_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AccessContext_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("accessDeclarations", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("accessDeclarations"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getAccessContextRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getOseeDslAccess().getAccessDeclarationsAccessContextParserRuleCall_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 OseeDsl_Alternatives_2(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); + case 2: + return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex, index - 3, consumed); + } + } + } + + // roleDeclarations+=Role + protected class OseeDsl_RoleDeclarationsAssignment_2_2 extends AssignmentToken { + + public OseeDsl_RoleDeclarationsAssignment_2_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getOseeDslAccess().getRoleDeclarationsAssignment_2_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Role_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("roleDeclarations", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("roleDeclarations"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getRoleRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getOseeDslAccess().getRoleDeclarationsRoleParserRuleCall_2_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 OseeDsl_Alternatives_2(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new OseeDsl_Alternatives_1(lastRuleCallOrigin, next, actIndex, consumed); + case 2: + return new OseeDsl_ImportsAssignment_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex, index - 3, consumed); + } + } + } + + /************ end Rule OseeDsl ****************/ + + /************ + * begin Rule Import **************** Import: "import" importURI=STRING; + **/ + + // "import" importURI=STRING + protected class Import_Group extends GroupToken { + + public Import_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getImportAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Import_ImportURIAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getImportRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "import" + protected class Import_ImportKeyword_0 extends KeywordToken { + + public Import_ImportKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getImportAccess().getImportKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // importURI=STRING + protected class Import_ImportURIAssignment_1 extends AssignmentToken { + + public Import_ImportURIAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getImportAccess().getImportURIAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Import_ImportKeyword_0(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.getImportAccess().getImportURISTRINGTerminalRuleCall_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_1_0(); + return obj; + } + return null; + } + + } + + /************ end Rule Import ****************/ + + /************ + * begin Rule OseeElement **************** /////////////////////////////////////// // OSEE TYPE MODEL // + * /////////////////////////////////////// OseeElement: XOseeEnumOverride | OseeType; + **/ + + // XOseeEnumOverride | OseeType + protected class OseeElement_Alternatives extends AlternativesToken { + + public OseeElement_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Alternatives getGrammarElement() { + return grammarAccess.getOseeElementAccess().getAlternatives(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new OseeElement_XOseeEnumOverrideParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); + case 1: + return new OseeElement_OseeTypeParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXArtifactTypeRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getXAttributeTypeRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getXOseeEnumOverrideRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getXOseeEnumTypeRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getXRelationTypeRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // XOseeEnumOverride + protected class OseeElement_XOseeEnumOverrideParserRuleCall_0 extends RuleCallToken { + + public OseeElement_XOseeEnumOverrideParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getOseeElementAccess().getXOseeEnumOverrideParserRuleCall_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumOverride_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXOseeEnumOverrideRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(XOseeEnumOverride_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); + } + } + } + + // OseeType + protected class OseeElement_OseeTypeParserRuleCall_1 extends RuleCallToken { + + public OseeElement_OseeTypeParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getOseeElementAccess().getOseeTypeParserRuleCall_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new OseeType_Alternatives(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXArtifactTypeRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getXAttributeTypeRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getXOseeEnumTypeRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getXRelationTypeRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(OseeType_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); + } + } + } + + /************ end Rule OseeElement ****************/ + + /************ + * begin Rule OseeType **************** OseeType: XArtifactType | XRelationType | XAttributeType | XOseeEnumType; + **/ + + // XArtifactType | XRelationType | XAttributeType | XOseeEnumType + protected class OseeType_Alternatives extends AlternativesToken { + + public OseeType_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Alternatives getGrammarElement() { + return grammarAccess.getOseeTypeAccess().getAlternatives(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new OseeType_XArtifactTypeParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); + case 1: + return new OseeType_XRelationTypeParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); + case 2: + return new OseeType_XAttributeTypeParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); + case 3: + return new OseeType_XOseeEnumTypeParserRuleCall_3(lastRuleCallOrigin, this, 3, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXArtifactTypeRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getXAttributeTypeRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getXOseeEnumTypeRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getXRelationTypeRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // XArtifactType + protected class OseeType_XArtifactTypeParserRuleCall_0 extends RuleCallToken { + + public OseeType_XArtifactTypeParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getOseeTypeAccess().getXArtifactTypeParserRuleCall_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXArtifactTypeRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(XArtifactType_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); + } + } + } + + // XRelationType + protected class OseeType_XRelationTypeParserRuleCall_1 extends RuleCallToken { + + public OseeType_XRelationTypeParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getOseeTypeAccess().getXRelationTypeParserRuleCall_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXRelationTypeRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(XRelationType_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); + } + } + } + + // XAttributeType + protected class OseeType_XAttributeTypeParserRuleCall_2 extends RuleCallToken { + + public OseeType_XAttributeTypeParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getOseeTypeAccess().getXAttributeTypeParserRuleCall_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXAttributeTypeRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(XAttributeType_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); + } + } + } + + // XOseeEnumType + protected class OseeType_XOseeEnumTypeParserRuleCall_3 extends RuleCallToken { + + public OseeType_XOseeEnumTypeParserRuleCall_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getOseeTypeAccess().getXOseeEnumTypeParserRuleCall_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumType_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXOseeEnumTypeRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(XOseeEnumType_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 OseeType ****************/ + + /************ + * begin Rule XArtifactType **************** XArtifactType: abstract?="abstract"? "artifactType" name=STRING + * ("extends" superArtifactTypes+=[XArtifactType|STRING] ("," superArtifactTypes+=[XArtifactType|STRING])*)? "{" + * ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT validAttributeTypes+=XAttributeTypeRef* "}"; + **/ + + // abstract?="abstract"? "artifactType" name=STRING ("extends" superArtifactTypes+=[XArtifactType|STRING] ("," + // superArtifactTypes+=[XArtifactType|STRING])*)? "{" ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT + // validAttributeTypes+=XAttributeTypeRef* "}" + protected class XArtifactType_Group extends GroupToken { + + public XArtifactType_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_RightCurlyBracketKeyword_9(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXArtifactTypeRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // abstract?="abstract"? + protected class XArtifactType_AbstractAssignment_0 extends AssignmentToken { + + public XArtifactType_AbstractAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getAbstractAssignment_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("abstract", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("abstract"); + if (Boolean.TRUE.equals(value)) { // org::eclipse::xtext::impl::KeywordImpl + type = AssignmentType.KEYWORD; + element = grammarAccess.getXArtifactTypeAccess().getAbstractAbstractKeyword_0_0(); + return obj; + } + return null; + } + + } + + // "artifactType" + protected class XArtifactType_ArtifactTypeKeyword_1 extends KeywordToken { + + public XArtifactType_ArtifactTypeKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getArtifactTypeKeyword_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_AbstractAssignment_0(lastRuleCallOrigin, this, 0, inst); + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index - 1, inst); + } + } + + } + + // name=STRING + protected class XArtifactType_NameAssignment_2 extends AssignmentToken { + + public XArtifactType_NameAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getNameAssignment_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_ArtifactTypeKeyword_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("name", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("name"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXArtifactTypeAccess().getNameSTRINGTerminalRuleCall_2_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXArtifactTypeAccess().getNameSTRINGTerminalRuleCall_2_0(); + return obj; + } + return null; + } + + } + + // ("extends" superArtifactTypes+=[XArtifactType|STRING] ("," superArtifactTypes+=[XArtifactType|STRING])*)? + protected class XArtifactType_Group_3 extends GroupToken { + + public XArtifactType_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getGroup_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_Group_3_2(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XArtifactType_SuperArtifactTypesAssignment_3_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // "extends" + protected class XArtifactType_ExtendsKeyword_3_0 extends KeywordToken { + + public XArtifactType_ExtendsKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getExtendsKeyword_3_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_NameAssignment_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // superArtifactTypes+=[XArtifactType|STRING] + protected class XArtifactType_SuperArtifactTypesAssignment_3_1 extends AssignmentToken { + + public XArtifactType_SuperArtifactTypesAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getSuperArtifactTypesAssignment_3_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_ExtendsKeyword_3_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("superArtifactTypes", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("superArtifactTypes"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getXArtifactTypeAccess().getSuperArtifactTypesXArtifactTypeCrossReference_3_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getXArtifactTypeAccess().getSuperArtifactTypesXArtifactTypeCrossReference_3_1_0(); + return obj; + } + } + return null; + } + + } + + // ("," superArtifactTypes+=[XArtifactType|STRING])* + protected class XArtifactType_Group_3_2 extends GroupToken { + + public XArtifactType_Group_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getGroup_3_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_SuperArtifactTypesAssignment_3_2_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "," + protected class XArtifactType_CommaKeyword_3_2_0 extends KeywordToken { + + public XArtifactType_CommaKeyword_3_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getCommaKeyword_3_2_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_Group_3_2(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XArtifactType_SuperArtifactTypesAssignment_3_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // superArtifactTypes+=[XArtifactType|STRING] + protected class XArtifactType_SuperArtifactTypesAssignment_3_2_1 extends AssignmentToken { + + public XArtifactType_SuperArtifactTypesAssignment_3_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getSuperArtifactTypesAssignment_3_2_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_CommaKeyword_3_2_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("superArtifactTypes", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("superArtifactTypes"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getXArtifactTypeAccess().getSuperArtifactTypesXArtifactTypeCrossReference_3_2_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getXArtifactTypeAccess().getSuperArtifactTypesXArtifactTypeCrossReference_3_2_1_0(); + return obj; + } + } + return null; + } + + } + + // "{" + protected class XArtifactType_LeftCurlyBracketKeyword_4 extends KeywordToken { + + public XArtifactType_LeftCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getLeftCurlyBracketKeyword_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_Group_3(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XArtifactType_NameAssignment_2(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // ("guid" typeGuid=STRING)? + protected class XArtifactType_Group_5 extends GroupToken { + + public XArtifactType_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getGroup_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_TypeGuidAssignment_5_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "guid" + protected class XArtifactType_GuidKeyword_5_0 extends KeywordToken { + + public XArtifactType_GuidKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getGuidKeyword_5_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // typeGuid=STRING + protected class XArtifactType_TypeGuidAssignment_5_1 extends AssignmentToken { + + public XArtifactType_TypeGuidAssignment_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getTypeGuidAssignment_5_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_GuidKeyword_5_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("typeGuid", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("typeGuid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXArtifactTypeAccess().getTypeGuidSTRINGTerminalRuleCall_5_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXArtifactTypeAccess().getTypeGuidSTRINGTerminalRuleCall_5_1_0(); + return obj; + } + return null; + } + + } + + // "uuid" + protected class XArtifactType_UuidKeyword_6 extends KeywordToken { + + public XArtifactType_UuidKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getUuidKeyword_6(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_Group_5(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XArtifactType_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // uuid=HEX_INT + protected class XArtifactType_UuidAssignment_7 extends AssignmentToken { + + public XArtifactType_UuidAssignment_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getUuidAssignment_7(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_UuidKeyword_6(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("uuid", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("uuid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXArtifactTypeAccess().getUuidHEX_INTTerminalRuleCall_7_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXArtifactTypeAccess().getUuidHEX_INTTerminalRuleCall_7_0(); + return obj; + } + return null; + } + + } + + // validAttributeTypes+=XAttributeTypeRef* + protected class XArtifactType_ValidAttributeTypesAssignment_8 extends AssignmentToken { + + public XArtifactType_ValidAttributeTypesAssignment_8(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getValidAttributeTypesAssignment_8(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeTypeRef_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("validAttributeTypes", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("validAttributeTypes"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getXAttributeTypeRefRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = + grammarAccess.getXArtifactTypeAccess().getValidAttributeTypesXAttributeTypeRefParserRuleCall_8_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 XArtifactType_ValidAttributeTypesAssignment_8(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new XArtifactType_UuidAssignment_7(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + // "}" + protected class XArtifactType_RightCurlyBracketKeyword_9 extends KeywordToken { + + public XArtifactType_RightCurlyBracketKeyword_9(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXArtifactTypeAccess().getRightCurlyBracketKeyword_9(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactType_ValidAttributeTypesAssignment_8(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XArtifactType_UuidAssignment_7(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + /************ end Rule XArtifactType ****************/ + + /************ + * begin Rule XAttributeTypeRef **************** XAttributeTypeRef: "attribute" + * validAttributeType=[XAttributeType|STRING] ("branchUuid" branchUuid=WHOLE_NUM_STR)?; + **/ + + // "attribute" validAttributeType=[XAttributeType|STRING] ("branchUuid" branchUuid=WHOLE_NUM_STR)? + protected class XAttributeTypeRef_Group extends GroupToken { + + public XAttributeTypeRef_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXAttributeTypeRefAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeTypeRef_Group_2(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XAttributeTypeRef_ValidAttributeTypeAssignment_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXAttributeTypeRefRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "attribute" + protected class XAttributeTypeRef_AttributeKeyword_0 extends KeywordToken { + + public XAttributeTypeRef_AttributeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeRefAccess().getAttributeKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // validAttributeType=[XAttributeType|STRING] + protected class XAttributeTypeRef_ValidAttributeTypeAssignment_1 extends AssignmentToken { + + public XAttributeTypeRef_ValidAttributeTypeAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeRefAccess().getValidAttributeTypeAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeTypeRef_AttributeKeyword_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("validAttributeType", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("validAttributeType"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getXAttributeTypeRefAccess().getValidAttributeTypeXAttributeTypeCrossReference_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getXAttributeTypeRefAccess().getValidAttributeTypeXAttributeTypeCrossReference_1_0(); + return obj; + } + } + return null; + } + + } + + // ("branchUuid" branchUuid=WHOLE_NUM_STR)? + protected class XAttributeTypeRef_Group_2 extends GroupToken { + + public XAttributeTypeRef_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXAttributeTypeRefAccess().getGroup_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeTypeRef_BranchUuidAssignment_2_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "branchUuid" + protected class XAttributeTypeRef_BranchUuidKeyword_2_0 extends KeywordToken { + + public XAttributeTypeRef_BranchUuidKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeRefAccess().getBranchUuidKeyword_2_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeTypeRef_ValidAttributeTypeAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // branchUuid=WHOLE_NUM_STR + protected class XAttributeTypeRef_BranchUuidAssignment_2_1 extends AssignmentToken { + + public XAttributeTypeRef_BranchUuidAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeRefAccess().getBranchUuidAssignment_2_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeTypeRef_BranchUuidKeyword_2_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("branchUuid", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("branchUuid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeRefAccess().getBranchUuidWHOLE_NUM_STRTerminalRuleCall_2_1_0(), value, + null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXAttributeTypeRefAccess().getBranchUuidWHOLE_NUM_STRTerminalRuleCall_2_1_0(); + return obj; + } + return null; + } + + } + + /************ end Rule XAttributeTypeRef ****************/ + + /************ + * begin Rule XAttributeType **************** XAttributeType: "attributeType" name=STRING ("extends" + * baseAttributeType=AttributeBaseType) ("overrides" override=[XAttributeType|STRING])? "{" ("guid" typeGuid=STRING)? + * "uuid" uuid=HEX_INT "dataProvider" dataProvider=("DefaultAttributeDataProvider" | "UriAttributeDataProvider" | + * QUALIFIED_NAME) "min" min=WHOLE_NUM_STR "max" max=(WHOLE_NUM_STR | "unlimited") (("taggerId" + * taggerId=("DefaultAttributeTaggerProvider" | QUALIFIED_NAME))? & ("enumType" enumType=[XOseeEnumType|STRING])? & + * ("description" description=STRING)? & ("defaultValue" defaultValue=STRING)? & ("fileExtension" + * fileExtension=STRING)? & ("mediaType" mediaType=STRING)?) "}"; + **/ + + // "attributeType" name=STRING ("extends" baseAttributeType=AttributeBaseType) ("overrides" + // override=[XAttributeType|STRING])? "{" ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT "dataProvider" + // dataProvider=("DefaultAttributeDataProvider" | "UriAttributeDataProvider" | QUALIFIED_NAME) "min" min=WHOLE_NUM_STR + // "max" max=(WHOLE_NUM_STR | "unlimited") (("taggerId" taggerId=("DefaultAttributeTaggerProvider" | QUALIFIED_NAME))? & + // ("enumType" enumType=[XOseeEnumType|STRING])? & ("description" description=STRING)? & ("defaultValue" + // defaultValue=STRING)? & ("fileExtension" fileExtension=STRING)? & ("mediaType" mediaType=STRING)?) "}" + protected class XAttributeType_Group extends GroupToken { + + public XAttributeType_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_RightCurlyBracketKeyword_15(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXAttributeTypeRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "attributeType" + protected class XAttributeType_AttributeTypeKeyword_0 extends KeywordToken { + + public XAttributeType_AttributeTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getAttributeTypeKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // name=STRING + protected class XAttributeType_NameAssignment_1 extends AssignmentToken { + + public XAttributeType_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getNameAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_AttributeTypeKeyword_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.getXAttributeTypeAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXAttributeTypeAccess().getNameSTRINGTerminalRuleCall_1_0(); + return obj; + } + return null; + } + + } + + // "extends" baseAttributeType=AttributeBaseType + protected class XAttributeType_Group_2 extends GroupToken { + + public XAttributeType_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getGroup_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_BaseAttributeTypeAssignment_2_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "extends" + protected class XAttributeType_ExtendsKeyword_2_0 extends KeywordToken { + + public XAttributeType_ExtendsKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getExtendsKeyword_2_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // baseAttributeType=AttributeBaseType + protected class XAttributeType_BaseAttributeTypeAssignment_2_1 extends AssignmentToken { + + public XAttributeType_BaseAttributeTypeAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getBaseAttributeTypeAssignment_2_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_ExtendsKeyword_2_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("baseAttributeType", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("baseAttributeType"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getBaseAttributeTypeAttributeBaseTypeParserRuleCall_2_1_0(), value, + null)) { + type = AssignmentType.DATATYPE_RULE_CALL; + element = + grammarAccess.getXAttributeTypeAccess().getBaseAttributeTypeAttributeBaseTypeParserRuleCall_2_1_0(); + return obj; + } + return null; + } + + } + + // ("overrides" override=[XAttributeType|STRING])? + protected class XAttributeType_Group_3 extends GroupToken { + + public XAttributeType_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getGroup_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_OverrideAssignment_3_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "overrides" + protected class XAttributeType_OverridesKeyword_3_0 extends KeywordToken { + + public XAttributeType_OverridesKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getOverridesKeyword_3_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_Group_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // override=[XAttributeType|STRING] + protected class XAttributeType_OverrideAssignment_3_1 extends AssignmentToken { + + public XAttributeType_OverrideAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getOverrideAssignment_3_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_OverridesKeyword_3_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("override", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("override"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getXAttributeTypeAccess().getOverrideXAttributeTypeCrossReference_3_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = grammarAccess.getXAttributeTypeAccess().getOverrideXAttributeTypeCrossReference_3_1_0(); + return obj; + } + } + return null; + } + + } + + // "{" + protected class XAttributeType_LeftCurlyBracketKeyword_4 extends KeywordToken { + + public XAttributeType_LeftCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getLeftCurlyBracketKeyword_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_Group_3(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XAttributeType_Group_2(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // ("guid" typeGuid=STRING)? + protected class XAttributeType_Group_5 extends GroupToken { + + public XAttributeType_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getGroup_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_TypeGuidAssignment_5_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "guid" + protected class XAttributeType_GuidKeyword_5_0 extends KeywordToken { + + public XAttributeType_GuidKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getGuidKeyword_5_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // typeGuid=STRING + protected class XAttributeType_TypeGuidAssignment_5_1 extends AssignmentToken { + + public XAttributeType_TypeGuidAssignment_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getTypeGuidAssignment_5_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_GuidKeyword_5_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("typeGuid", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("typeGuid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getTypeGuidSTRINGTerminalRuleCall_5_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXAttributeTypeAccess().getTypeGuidSTRINGTerminalRuleCall_5_1_0(); + return obj; + } + return null; + } + + } + + // "uuid" + protected class XAttributeType_UuidKeyword_6 extends KeywordToken { + + public XAttributeType_UuidKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getUuidKeyword_6(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_Group_5(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XAttributeType_LeftCurlyBracketKeyword_4(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // uuid=HEX_INT + protected class XAttributeType_UuidAssignment_7 extends AssignmentToken { + + public XAttributeType_UuidAssignment_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getUuidAssignment_7(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_UuidKeyword_6(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("uuid", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("uuid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getUuidHEX_INTTerminalRuleCall_7_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXAttributeTypeAccess().getUuidHEX_INTTerminalRuleCall_7_0(); + return obj; + } + return null; + } + + } + + // "dataProvider" + protected class XAttributeType_DataProviderKeyword_8 extends KeywordToken { + + public XAttributeType_DataProviderKeyword_8(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getDataProviderKeyword_8(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_UuidAssignment_7(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // dataProvider=("DefaultAttributeDataProvider" | "UriAttributeDataProvider" | QUALIFIED_NAME) + protected class XAttributeType_DataProviderAssignment_9 extends AssignmentToken { + + public XAttributeType_DataProviderAssignment_9(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getDataProviderAssignment_9(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_DataProviderKeyword_8(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("dataProvider", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("dataProvider"); + if (keywordSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getDataProviderDefaultAttributeDataProviderKeyword_9_0_0(), value, + null)) { + type = AssignmentType.KEYWORD; + element = + grammarAccess.getXAttributeTypeAccess().getDataProviderDefaultAttributeDataProviderKeyword_9_0_0(); + return obj; + } + if (keywordSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getDataProviderUriAttributeDataProviderKeyword_9_0_1(), value, + null)) { + type = AssignmentType.KEYWORD; + element = grammarAccess.getXAttributeTypeAccess().getDataProviderUriAttributeDataProviderKeyword_9_0_1(); + return obj; + } + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getDataProviderQUALIFIED_NAMEParserRuleCall_9_0_2(), value, null)) { + type = AssignmentType.DATATYPE_RULE_CALL; + element = grammarAccess.getXAttributeTypeAccess().getDataProviderQUALIFIED_NAMEParserRuleCall_9_0_2(); + return obj; + } + return null; + } + + } + + // "min" + protected class XAttributeType_MinKeyword_10 extends KeywordToken { + + public XAttributeType_MinKeyword_10(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getMinKeyword_10(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_DataProviderAssignment_9(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // min=WHOLE_NUM_STR + protected class XAttributeType_MinAssignment_11 extends AssignmentToken { + + public XAttributeType_MinAssignment_11(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getMinAssignment_11(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_MinKeyword_10(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("min", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("min"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getMinWHOLE_NUM_STRTerminalRuleCall_11_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXAttributeTypeAccess().getMinWHOLE_NUM_STRTerminalRuleCall_11_0(); + return obj; + } + return null; + } + + } + + // "max" + protected class XAttributeType_MaxKeyword_12 extends KeywordToken { + + public XAttributeType_MaxKeyword_12(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getMaxKeyword_12(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_MinAssignment_11(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // max=(WHOLE_NUM_STR | "unlimited") + protected class XAttributeType_MaxAssignment_13 extends AssignmentToken { + + public XAttributeType_MaxAssignment_13(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getMaxAssignment_13(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_MaxKeyword_12(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("max", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("max"); + if (keywordSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getMaxUnlimitedKeyword_13_0_1(), value, null)) { + type = AssignmentType.KEYWORD; + element = grammarAccess.getXAttributeTypeAccess().getMaxUnlimitedKeyword_13_0_1(); + return obj; + } + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getMaxWHOLE_NUM_STRTerminalRuleCall_13_0_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXAttributeTypeAccess().getMaxWHOLE_NUM_STRTerminalRuleCall_13_0_0(); + return obj; + } + return null; + } + + } + + // ("taggerId" taggerId=("DefaultAttributeTaggerProvider" | QUALIFIED_NAME))? & ("enumType" + // enumType=[XOseeEnumType|STRING])? & ("description" description=STRING)? & ("defaultValue" defaultValue=STRING)? & + // ("fileExtension" fileExtension=STRING)? & ("mediaType" mediaType=STRING)? + protected class XAttributeType_UnorderedGroup_14 extends UnorderedGroupToken { + + public XAttributeType_UnorderedGroup_14(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public UnorderedGroup getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getUnorderedGroup_14(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_Group_14_5(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XAttributeType_Group_14_4(lastRuleCallOrigin, this, 1, inst); + case 2: + return new XAttributeType_Group_14_3(lastRuleCallOrigin, this, 2, inst); + case 3: + return new XAttributeType_Group_14_2(lastRuleCallOrigin, this, 3, inst); + case 4: + return new XAttributeType_Group_14_1(lastRuleCallOrigin, this, 4, inst); + case 5: + return new XAttributeType_Group_14_0(lastRuleCallOrigin, this, 5, inst); + case 6: + return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 6, inst); + default: + return null; + } + } + + } + + // ("taggerId" taggerId=("DefaultAttributeTaggerProvider" | QUALIFIED_NAME))? + protected class XAttributeType_Group_14_0 extends GroupToken { + + public XAttributeType_Group_14_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getGroup_14_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_TaggerIdAssignment_14_0_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "taggerId" + protected class XAttributeType_TaggerIdKeyword_14_0_0 extends KeywordToken { + + public XAttributeType_TaggerIdKeyword_14_0_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getTaggerIdKeyword_14_0_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // taggerId=("DefaultAttributeTaggerProvider" | QUALIFIED_NAME) + protected class XAttributeType_TaggerIdAssignment_14_0_1 extends AssignmentToken { + + public XAttributeType_TaggerIdAssignment_14_0_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getTaggerIdAssignment_14_0_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_TaggerIdKeyword_14_0_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("taggerId", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("taggerId"); + if (keywordSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getTaggerIdDefaultAttributeTaggerProviderKeyword_14_0_1_0_0(), + value, null)) { + type = AssignmentType.KEYWORD; + element = + grammarAccess.getXAttributeTypeAccess().getTaggerIdDefaultAttributeTaggerProviderKeyword_14_0_1_0_0(); + return obj; + } + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getTaggerIdQUALIFIED_NAMEParserRuleCall_14_0_1_0_1(), value, + null)) { + type = AssignmentType.DATATYPE_RULE_CALL; + element = grammarAccess.getXAttributeTypeAccess().getTaggerIdQUALIFIED_NAMEParserRuleCall_14_0_1_0_1(); + return obj; + } + return null; + } + + } + + // ("enumType" enumType=[XOseeEnumType|STRING])? + protected class XAttributeType_Group_14_1 extends GroupToken { + + public XAttributeType_Group_14_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getGroup_14_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_EnumTypeAssignment_14_1_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "enumType" + protected class XAttributeType_EnumTypeKeyword_14_1_0 extends KeywordToken { + + public XAttributeType_EnumTypeKeyword_14_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getEnumTypeKeyword_14_1_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_Group_14_0(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // enumType=[XOseeEnumType|STRING] + protected class XAttributeType_EnumTypeAssignment_14_1_1 extends AssignmentToken { + + public XAttributeType_EnumTypeAssignment_14_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getEnumTypeAssignment_14_1_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_EnumTypeKeyword_14_1_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("enumType", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("enumType"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getXAttributeTypeAccess().getEnumTypeXOseeEnumTypeCrossReference_14_1_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = grammarAccess.getXAttributeTypeAccess().getEnumTypeXOseeEnumTypeCrossReference_14_1_1_0(); + return obj; + } + } + return null; + } + + } + + // ("description" description=STRING)? + protected class XAttributeType_Group_14_2 extends GroupToken { + + public XAttributeType_Group_14_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getGroup_14_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_DescriptionAssignment_14_2_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "description" + protected class XAttributeType_DescriptionKeyword_14_2_0 extends KeywordToken { + + public XAttributeType_DescriptionKeyword_14_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getDescriptionKeyword_14_2_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_Group_14_1(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XAttributeType_Group_14_0(lastRuleCallOrigin, this, 1, inst); + case 2: + return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 2, inst); + default: + return null; + } + } + + } + + // description=STRING + protected class XAttributeType_DescriptionAssignment_14_2_1 extends AssignmentToken { + + public XAttributeType_DescriptionAssignment_14_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getDescriptionAssignment_14_2_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_DescriptionKeyword_14_2_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("description", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("description"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getDescriptionSTRINGTerminalRuleCall_14_2_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXAttributeTypeAccess().getDescriptionSTRINGTerminalRuleCall_14_2_1_0(); + return obj; + } + return null; + } + + } + + // ("defaultValue" defaultValue=STRING)? + protected class XAttributeType_Group_14_3 extends GroupToken { + + public XAttributeType_Group_14_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getGroup_14_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_DefaultValueAssignment_14_3_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "defaultValue" + protected class XAttributeType_DefaultValueKeyword_14_3_0 extends KeywordToken { + + public XAttributeType_DefaultValueKeyword_14_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getDefaultValueKeyword_14_3_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_Group_14_2(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XAttributeType_Group_14_1(lastRuleCallOrigin, this, 1, inst); + case 2: + return new XAttributeType_Group_14_0(lastRuleCallOrigin, this, 2, inst); + case 3: + return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 3, inst); + default: + return null; + } + } + + } + + // defaultValue=STRING + protected class XAttributeType_DefaultValueAssignment_14_3_1 extends AssignmentToken { + + public XAttributeType_DefaultValueAssignment_14_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getDefaultValueAssignment_14_3_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_DefaultValueKeyword_14_3_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("defaultValue", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("defaultValue"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getDefaultValueSTRINGTerminalRuleCall_14_3_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXAttributeTypeAccess().getDefaultValueSTRINGTerminalRuleCall_14_3_1_0(); + return obj; + } + return null; + } + + } + + // ("fileExtension" fileExtension=STRING)? + protected class XAttributeType_Group_14_4 extends GroupToken { + + public XAttributeType_Group_14_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getGroup_14_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_FileExtensionAssignment_14_4_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "fileExtension" + protected class XAttributeType_FileExtensionKeyword_14_4_0 extends KeywordToken { + + public XAttributeType_FileExtensionKeyword_14_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getFileExtensionKeyword_14_4_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_Group_14_3(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XAttributeType_Group_14_2(lastRuleCallOrigin, this, 1, inst); + case 2: + return new XAttributeType_Group_14_1(lastRuleCallOrigin, this, 2, inst); + case 3: + return new XAttributeType_Group_14_0(lastRuleCallOrigin, this, 3, inst); + case 4: + return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 4, inst); + default: + return null; + } + } + + } + + // fileExtension=STRING + protected class XAttributeType_FileExtensionAssignment_14_4_1 extends AssignmentToken { + + public XAttributeType_FileExtensionAssignment_14_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getFileExtensionAssignment_14_4_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_FileExtensionKeyword_14_4_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("fileExtension", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("fileExtension"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getFileExtensionSTRINGTerminalRuleCall_14_4_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXAttributeTypeAccess().getFileExtensionSTRINGTerminalRuleCall_14_4_1_0(); + return obj; + } + return null; + } + + } + + // ("mediaType" mediaType=STRING)? + protected class XAttributeType_Group_14_5 extends GroupToken { + + public XAttributeType_Group_14_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getGroup_14_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_MediaTypeAssignment_14_5_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "mediaType" + protected class XAttributeType_MediaTypeKeyword_14_5_0 extends KeywordToken { + + public XAttributeType_MediaTypeKeyword_14_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getMediaTypeKeyword_14_5_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_Group_14_4(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XAttributeType_Group_14_3(lastRuleCallOrigin, this, 1, inst); + case 2: + return new XAttributeType_Group_14_2(lastRuleCallOrigin, this, 2, inst); + case 3: + return new XAttributeType_Group_14_1(lastRuleCallOrigin, this, 3, inst); + case 4: + return new XAttributeType_Group_14_0(lastRuleCallOrigin, this, 4, inst); + case 5: + return new XAttributeType_MaxAssignment_13(lastRuleCallOrigin, this, 5, inst); + default: + return null; + } + } + + } + + // mediaType=STRING + protected class XAttributeType_MediaTypeAssignment_14_5_1 extends AssignmentToken { + + public XAttributeType_MediaTypeAssignment_14_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getMediaTypeAssignment_14_5_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_MediaTypeKeyword_14_5_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("mediaType", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("mediaType"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXAttributeTypeAccess().getMediaTypeSTRINGTerminalRuleCall_14_5_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXAttributeTypeAccess().getMediaTypeSTRINGTerminalRuleCall_14_5_1_0(); + return obj; + } + return null; + } + + } + + // "}" + protected class XAttributeType_RightCurlyBracketKeyword_15 extends KeywordToken { + + public XAttributeType_RightCurlyBracketKeyword_15(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXAttributeTypeAccess().getRightCurlyBracketKeyword_15(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeType_UnorderedGroup_14(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + /************ end Rule XAttributeType ****************/ + + /************ + * begin Rule XOseeEnumType **************** XOseeEnumType: "oseeEnumType" name=STRING "{" ("guid" typeGuid=STRING)? + * "uuid" uuid=HEX_INT enumEntries+=XOseeEnumEntry* "}"; + **/ + + // "oseeEnumType" name=STRING "{" ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT enumEntries+=XOseeEnumEntry* "}" + protected class XOseeEnumType_Group extends GroupToken { + + public XOseeEnumType_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXOseeEnumTypeAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumType_RightCurlyBracketKeyword_7(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXOseeEnumTypeRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "oseeEnumType" + protected class XOseeEnumType_OseeEnumTypeKeyword_0 extends KeywordToken { + + public XOseeEnumType_OseeEnumTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeEnumTypeAccess().getOseeEnumTypeKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // name=STRING + protected class XOseeEnumType_NameAssignment_1 extends AssignmentToken { + + public XOseeEnumType_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeEnumTypeAccess().getNameAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumType_OseeEnumTypeKeyword_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.getXOseeEnumTypeAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXOseeEnumTypeAccess().getNameSTRINGTerminalRuleCall_1_0(); + return obj; + } + return null; + } + + } + + // "{" + protected class XOseeEnumType_LeftCurlyBracketKeyword_2 extends KeywordToken { + + public XOseeEnumType_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeEnumTypeAccess().getLeftCurlyBracketKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumType_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // ("guid" typeGuid=STRING)? + protected class XOseeEnumType_Group_3 extends GroupToken { + + public XOseeEnumType_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXOseeEnumTypeAccess().getGroup_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumType_TypeGuidAssignment_3_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "guid" + protected class XOseeEnumType_GuidKeyword_3_0 extends KeywordToken { + + public XOseeEnumType_GuidKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeEnumTypeAccess().getGuidKeyword_3_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumType_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // typeGuid=STRING + protected class XOseeEnumType_TypeGuidAssignment_3_1 extends AssignmentToken { + + public XOseeEnumType_TypeGuidAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeEnumTypeAccess().getTypeGuidAssignment_3_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumType_GuidKeyword_3_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("typeGuid", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("typeGuid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXOseeEnumTypeAccess().getTypeGuidSTRINGTerminalRuleCall_3_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXOseeEnumTypeAccess().getTypeGuidSTRINGTerminalRuleCall_3_1_0(); + return obj; + } + return null; + } + + } + + // "uuid" + protected class XOseeEnumType_UuidKeyword_4 extends KeywordToken { + + public XOseeEnumType_UuidKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeEnumTypeAccess().getUuidKeyword_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumType_Group_3(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XOseeEnumType_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // uuid=HEX_INT + protected class XOseeEnumType_UuidAssignment_5 extends AssignmentToken { + + public XOseeEnumType_UuidAssignment_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeEnumTypeAccess().getUuidAssignment_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumType_UuidKeyword_4(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("uuid", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("uuid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXOseeEnumTypeAccess().getUuidHEX_INTTerminalRuleCall_5_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXOseeEnumTypeAccess().getUuidHEX_INTTerminalRuleCall_5_0(); + return obj; + } + return null; + } + + } + + // enumEntries+=XOseeEnumEntry* + protected class XOseeEnumType_EnumEntriesAssignment_6 extends AssignmentToken { + + public XOseeEnumType_EnumEntriesAssignment_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeEnumTypeAccess().getEnumEntriesAssignment_6(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumEntry_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("enumEntries", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("enumEntries"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getXOseeEnumEntryRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getXOseeEnumTypeAccess().getEnumEntriesXOseeEnumEntryParserRuleCall_6_0(); + consumed = obj; + return param; + } + } + return null; + } + + @Override + public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { + if (value == inst.getEObject() && !inst.isConsumed()) { + return null; + } + switch (index) { + case 0: + return new XOseeEnumType_EnumEntriesAssignment_6(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new XOseeEnumType_UuidAssignment_5(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + // "}" + protected class XOseeEnumType_RightCurlyBracketKeyword_7 extends KeywordToken { + + public XOseeEnumType_RightCurlyBracketKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeEnumTypeAccess().getRightCurlyBracketKeyword_7(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumType_EnumEntriesAssignment_6(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XOseeEnumType_UuidAssignment_5(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + /************ end Rule XOseeEnumType ****************/ + + /************ + * begin Rule XOseeEnumEntry **************** XOseeEnumEntry: "entry" name=STRING ordinal=WHOLE_NUM_STR? ("entryGuid" + * entryGuid=STRING)? ("description" description=STRING)?; + **/ + + // "entry" name=STRING ordinal=WHOLE_NUM_STR? ("entryGuid" entryGuid=STRING)? ("description" description=STRING)? + protected class XOseeEnumEntry_Group extends GroupToken { + + public XOseeEnumEntry_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXOseeEnumEntryAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumEntry_Group_4(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XOseeEnumEntry_Group_3(lastRuleCallOrigin, this, 1, inst); + case 2: + return new XOseeEnumEntry_OrdinalAssignment_2(lastRuleCallOrigin, this, 2, inst); + case 3: + return new XOseeEnumEntry_NameAssignment_1(lastRuleCallOrigin, this, 3, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXOseeEnumEntryRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "entry" + protected class XOseeEnumEntry_EntryKeyword_0 extends KeywordToken { + + public XOseeEnumEntry_EntryKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeEnumEntryAccess().getEntryKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // name=STRING + protected class XOseeEnumEntry_NameAssignment_1 extends AssignmentToken { + + public XOseeEnumEntry_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeEnumEntryAccess().getNameAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumEntry_EntryKeyword_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.getXOseeEnumEntryAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXOseeEnumEntryAccess().getNameSTRINGTerminalRuleCall_1_0(); + return obj; + } + return null; + } + + } + + // ordinal=WHOLE_NUM_STR? + protected class XOseeEnumEntry_OrdinalAssignment_2 extends AssignmentToken { + + public XOseeEnumEntry_OrdinalAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeEnumEntryAccess().getOrdinalAssignment_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumEntry_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("ordinal", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("ordinal"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXOseeEnumEntryAccess().getOrdinalWHOLE_NUM_STRTerminalRuleCall_2_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXOseeEnumEntryAccess().getOrdinalWHOLE_NUM_STRTerminalRuleCall_2_0(); + return obj; + } + return null; + } + + } + + // ("entryGuid" entryGuid=STRING)? + protected class XOseeEnumEntry_Group_3 extends GroupToken { + + public XOseeEnumEntry_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXOseeEnumEntryAccess().getGroup_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumEntry_EntryGuidAssignment_3_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "entryGuid" + protected class XOseeEnumEntry_EntryGuidKeyword_3_0 extends KeywordToken { + + public XOseeEnumEntry_EntryGuidKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeEnumEntryAccess().getEntryGuidKeyword_3_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumEntry_OrdinalAssignment_2(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XOseeEnumEntry_NameAssignment_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // entryGuid=STRING + protected class XOseeEnumEntry_EntryGuidAssignment_3_1 extends AssignmentToken { + + public XOseeEnumEntry_EntryGuidAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeEnumEntryAccess().getEntryGuidAssignment_3_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumEntry_EntryGuidKeyword_3_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("entryGuid", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("entryGuid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXOseeEnumEntryAccess().getEntryGuidSTRINGTerminalRuleCall_3_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXOseeEnumEntryAccess().getEntryGuidSTRINGTerminalRuleCall_3_1_0(); + return obj; + } + return null; + } + + } + + // ("description" description=STRING)? + protected class XOseeEnumEntry_Group_4 extends GroupToken { + + public XOseeEnumEntry_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXOseeEnumEntryAccess().getGroup_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumEntry_DescriptionAssignment_4_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "description" + protected class XOseeEnumEntry_DescriptionKeyword_4_0 extends KeywordToken { + + public XOseeEnumEntry_DescriptionKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeEnumEntryAccess().getDescriptionKeyword_4_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumEntry_Group_3(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XOseeEnumEntry_OrdinalAssignment_2(lastRuleCallOrigin, this, 1, inst); + case 2: + return new XOseeEnumEntry_NameAssignment_1(lastRuleCallOrigin, this, 2, inst); + default: + return null; + } + } + + } + + // description=STRING + protected class XOseeEnumEntry_DescriptionAssignment_4_1 extends AssignmentToken { + + public XOseeEnumEntry_DescriptionAssignment_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeEnumEntryAccess().getDescriptionAssignment_4_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumEntry_DescriptionKeyword_4_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("description", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("description"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXOseeEnumEntryAccess().getDescriptionSTRINGTerminalRuleCall_4_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXOseeEnumEntryAccess().getDescriptionSTRINGTerminalRuleCall_4_1_0(); + return obj; + } + return null; + } + + } + + /************ end Rule XOseeEnumEntry ****************/ + + /************ + * begin Rule XOseeEnumOverride **************** XOseeEnumOverride: "overrides enum" + * overridenEnumType=[XOseeEnumType|STRING] "{" inheritAll?="inheritAll"? overrideOptions+=OverrideOption* "}"; + **/ + + // "overrides enum" overridenEnumType=[XOseeEnumType|STRING] "{" inheritAll?="inheritAll"? overrideOptions+=OverrideOption* + // "}" + protected class XOseeEnumOverride_Group extends GroupToken { + + public XOseeEnumOverride_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXOseeEnumOverrideAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumOverride_RightCurlyBracketKeyword_5(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXOseeEnumOverrideRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "overrides enum" + protected class XOseeEnumOverride_OverridesEnumKeyword_0 extends KeywordToken { + + public XOseeEnumOverride_OverridesEnumKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeEnumOverrideAccess().getOverridesEnumKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // overridenEnumType=[XOseeEnumType|STRING] + protected class XOseeEnumOverride_OverridenEnumTypeAssignment_1 extends AssignmentToken { + + public XOseeEnumOverride_OverridenEnumTypeAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeEnumOverrideAccess().getOverridenEnumTypeAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumOverride_OverridesEnumKeyword_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("overridenEnumType", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("overridenEnumType"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getXOseeEnumOverrideAccess().getOverridenEnumTypeXOseeEnumTypeCrossReference_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getXOseeEnumOverrideAccess().getOverridenEnumTypeXOseeEnumTypeCrossReference_1_0(); + return obj; + } + } + return null; + } + + } + + // "{" + protected class XOseeEnumOverride_LeftCurlyBracketKeyword_2 extends KeywordToken { + + public XOseeEnumOverride_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeEnumOverrideAccess().getLeftCurlyBracketKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumOverride_OverridenEnumTypeAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // inheritAll?="inheritAll"? + protected class XOseeEnumOverride_InheritAllAssignment_3 extends AssignmentToken { + + public XOseeEnumOverride_InheritAllAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeEnumOverrideAccess().getInheritAllAssignment_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumOverride_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("inheritAll", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("inheritAll"); + if (Boolean.TRUE.equals(value)) { // org::eclipse::xtext::impl::KeywordImpl + type = AssignmentType.KEYWORD; + element = grammarAccess.getXOseeEnumOverrideAccess().getInheritAllInheritAllKeyword_3_0(); + return obj; + } + return null; + } + + } + + // overrideOptions+=OverrideOption* + protected class XOseeEnumOverride_OverrideOptionsAssignment_4 extends AssignmentToken { + + public XOseeEnumOverride_OverrideOptionsAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeEnumOverrideAccess().getOverrideOptionsAssignment_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new OverrideOption_Alternatives(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("overrideOptions", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("overrideOptions"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getOverrideOptionRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = + grammarAccess.getXOseeEnumOverrideAccess().getOverrideOptionsOverrideOptionParserRuleCall_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 XOseeEnumOverride_OverrideOptionsAssignment_4(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new XOseeEnumOverride_InheritAllAssignment_3(lastRuleCallOrigin, next, actIndex, consumed); + case 2: + return new XOseeEnumOverride_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + // "}" + protected class XOseeEnumOverride_RightCurlyBracketKeyword_5 extends KeywordToken { + + public XOseeEnumOverride_RightCurlyBracketKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeEnumOverrideAccess().getRightCurlyBracketKeyword_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeEnumOverride_OverrideOptionsAssignment_4(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XOseeEnumOverride_InheritAllAssignment_3(lastRuleCallOrigin, this, 1, inst); + case 2: + return new XOseeEnumOverride_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 2, inst); + default: + return null; + } + } + + } + + /************ end Rule XOseeEnumOverride ****************/ + + /************ + * begin Rule OverrideOption **************** OverrideOption: AddEnum | RemoveEnum; + **/ + + // AddEnum | RemoveEnum + protected class OverrideOption_Alternatives extends AlternativesToken { + + public OverrideOption_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Alternatives getGrammarElement() { + return grammarAccess.getOverrideOptionAccess().getAlternatives(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new OverrideOption_AddEnumParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); + case 1: + return new OverrideOption_RemoveEnumParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getAddEnumRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getRemoveEnumRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // AddEnum + protected class OverrideOption_AddEnumParserRuleCall_0 extends RuleCallToken { + + public OverrideOption_AddEnumParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getOverrideOptionAccess().getAddEnumParserRuleCall_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AddEnum_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getAddEnumRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(AddEnum_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); + } + } + } + + // RemoveEnum + protected class OverrideOption_RemoveEnumParserRuleCall_1 extends RuleCallToken { + + public OverrideOption_RemoveEnumParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getOverrideOptionAccess().getRemoveEnumParserRuleCall_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RemoveEnum_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getRemoveEnumRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(RemoveEnum_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 OverrideOption ****************/ + + /************ + * begin Rule AddEnum **************** AddEnum: "add" enumEntry=STRING ordinal=WHOLE_NUM_STR? ("entryGuid" + * entryGuid=STRING)? ("description" description=STRING)?; + **/ + + // "add" enumEntry=STRING ordinal=WHOLE_NUM_STR? ("entryGuid" entryGuid=STRING)? ("description" description=STRING)? + protected class AddEnum_Group extends GroupToken { + + public AddEnum_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getAddEnumAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AddEnum_Group_4(lastRuleCallOrigin, this, 0, inst); + case 1: + return new AddEnum_Group_3(lastRuleCallOrigin, this, 1, inst); + case 2: + return new AddEnum_OrdinalAssignment_2(lastRuleCallOrigin, this, 2, inst); + case 3: + return new AddEnum_EnumEntryAssignment_1(lastRuleCallOrigin, this, 3, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getAddEnumRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "add" + protected class AddEnum_AddKeyword_0 extends KeywordToken { + + public AddEnum_AddKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAddEnumAccess().getAddKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // enumEntry=STRING + protected class AddEnum_EnumEntryAssignment_1 extends AssignmentToken { + + public AddEnum_EnumEntryAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAddEnumAccess().getEnumEntryAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AddEnum_AddKeyword_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("enumEntry", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("enumEntry"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getAddEnumAccess().getEnumEntrySTRINGTerminalRuleCall_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getAddEnumAccess().getEnumEntrySTRINGTerminalRuleCall_1_0(); + return obj; + } + return null; + } + + } + + // ordinal=WHOLE_NUM_STR? + protected class AddEnum_OrdinalAssignment_2 extends AssignmentToken { + + public AddEnum_OrdinalAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAddEnumAccess().getOrdinalAssignment_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AddEnum_EnumEntryAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("ordinal", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("ordinal"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getAddEnumAccess().getOrdinalWHOLE_NUM_STRTerminalRuleCall_2_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getAddEnumAccess().getOrdinalWHOLE_NUM_STRTerminalRuleCall_2_0(); + return obj; + } + return null; + } + + } + + // ("entryGuid" entryGuid=STRING)? + protected class AddEnum_Group_3 extends GroupToken { + + public AddEnum_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getAddEnumAccess().getGroup_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AddEnum_EntryGuidAssignment_3_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "entryGuid" + protected class AddEnum_EntryGuidKeyword_3_0 extends KeywordToken { + + public AddEnum_EntryGuidKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAddEnumAccess().getEntryGuidKeyword_3_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AddEnum_OrdinalAssignment_2(lastRuleCallOrigin, this, 0, inst); + case 1: + return new AddEnum_EnumEntryAssignment_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // entryGuid=STRING + protected class AddEnum_EntryGuidAssignment_3_1 extends AssignmentToken { + + public AddEnum_EntryGuidAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAddEnumAccess().getEntryGuidAssignment_3_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AddEnum_EntryGuidKeyword_3_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("entryGuid", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("entryGuid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getAddEnumAccess().getEntryGuidSTRINGTerminalRuleCall_3_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getAddEnumAccess().getEntryGuidSTRINGTerminalRuleCall_3_1_0(); + return obj; + } + return null; + } + + } + + // ("description" description=STRING)? + protected class AddEnum_Group_4 extends GroupToken { + + public AddEnum_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getAddEnumAccess().getGroup_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AddEnum_DescriptionAssignment_4_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "description" + protected class AddEnum_DescriptionKeyword_4_0 extends KeywordToken { + + public AddEnum_DescriptionKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAddEnumAccess().getDescriptionKeyword_4_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AddEnum_Group_3(lastRuleCallOrigin, this, 0, inst); + case 1: + return new AddEnum_OrdinalAssignment_2(lastRuleCallOrigin, this, 1, inst); + case 2: + return new AddEnum_EnumEntryAssignment_1(lastRuleCallOrigin, this, 2, inst); + default: + return null; + } + } + + } + + // description=STRING + protected class AddEnum_DescriptionAssignment_4_1 extends AssignmentToken { + + public AddEnum_DescriptionAssignment_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAddEnumAccess().getDescriptionAssignment_4_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AddEnum_DescriptionKeyword_4_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("description", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("description"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getAddEnumAccess().getDescriptionSTRINGTerminalRuleCall_4_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getAddEnumAccess().getDescriptionSTRINGTerminalRuleCall_4_1_0(); + return obj; + } + return null; + } + + } + + /************ end Rule AddEnum ****************/ + + /************ + * begin Rule RemoveEnum **************** RemoveEnum: "remove" enumEntry=[XOseeEnumEntry|STRING]; + **/ + + // "remove" enumEntry=[XOseeEnumEntry|STRING] + protected class RemoveEnum_Group extends GroupToken { + + public RemoveEnum_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getRemoveEnumAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RemoveEnum_EnumEntryAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getRemoveEnumRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "remove" + protected class RemoveEnum_RemoveKeyword_0 extends KeywordToken { + + public RemoveEnum_RemoveKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getRemoveEnumAccess().getRemoveKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // enumEntry=[XOseeEnumEntry|STRING] + protected class RemoveEnum_EnumEntryAssignment_1 extends AssignmentToken { + + public RemoveEnum_EnumEntryAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRemoveEnumAccess().getEnumEntryAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RemoveEnum_RemoveKeyword_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("enumEntry", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("enumEntry"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getRemoveEnumAccess().getEnumEntryXOseeEnumEntryCrossReference_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = grammarAccess.getRemoveEnumAccess().getEnumEntryXOseeEnumEntryCrossReference_1_0(); + return obj; + } + } + return null; + } + + } + + /************ end Rule RemoveEnum ****************/ + + /************ + * begin Rule XOseeArtifactTypeOverride **************** XOseeArtifactTypeOverride: "overrides artifactType" + * overridenArtifactType=[XArtifactType|STRING] "{" inheritAll?="inheritAll"? + * overrideOptions+=AttributeOverrideOption+ "}"; + **/ + + // "overrides artifactType" overridenArtifactType=[XArtifactType|STRING] "{" inheritAll?="inheritAll"? + // overrideOptions+=AttributeOverrideOption+ "}" + protected class XOseeArtifactTypeOverride_Group extends GroupToken { + + public XOseeArtifactTypeOverride_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXOseeArtifactTypeOverrideAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeArtifactTypeOverride_RightCurlyBracketKeyword_5(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXOseeArtifactTypeOverrideRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "overrides artifactType" + protected class XOseeArtifactTypeOverride_OverridesArtifactTypeKeyword_0 extends KeywordToken { + + public XOseeArtifactTypeOverride_OverridesArtifactTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeArtifactTypeOverrideAccess().getOverridesArtifactTypeKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // overridenArtifactType=[XArtifactType|STRING] + protected class XOseeArtifactTypeOverride_OverridenArtifactTypeAssignment_1 extends AssignmentToken { + + public XOseeArtifactTypeOverride_OverridenArtifactTypeAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeArtifactTypeOverrideAccess().getOverridenArtifactTypeAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeArtifactTypeOverride_OverridesArtifactTypeKeyword_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("overridenArtifactType", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("overridenArtifactType"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getXOseeArtifactTypeOverrideAccess().getOverridenArtifactTypeXArtifactTypeCrossReference_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getXOseeArtifactTypeOverrideAccess().getOverridenArtifactTypeXArtifactTypeCrossReference_1_0(); + return obj; + } + } + return null; + } + + } + + // "{" + protected class XOseeArtifactTypeOverride_LeftCurlyBracketKeyword_2 extends KeywordToken { + + public XOseeArtifactTypeOverride_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeArtifactTypeOverrideAccess().getLeftCurlyBracketKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeArtifactTypeOverride_OverridenArtifactTypeAssignment_1(lastRuleCallOrigin, this, 0, + inst); + default: + return null; + } + } + + } + + // inheritAll?="inheritAll"? + protected class XOseeArtifactTypeOverride_InheritAllAssignment_3 extends AssignmentToken { + + public XOseeArtifactTypeOverride_InheritAllAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeArtifactTypeOverrideAccess().getInheritAllAssignment_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeArtifactTypeOverride_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("inheritAll", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("inheritAll"); + if (Boolean.TRUE.equals(value)) { // org::eclipse::xtext::impl::KeywordImpl + type = AssignmentType.KEYWORD; + element = grammarAccess.getXOseeArtifactTypeOverrideAccess().getInheritAllInheritAllKeyword_3_0(); + return obj; + } + return null; + } + + } + + // overrideOptions+=AttributeOverrideOption+ + protected class XOseeArtifactTypeOverride_OverrideOptionsAssignment_4 extends AssignmentToken { + + public XOseeArtifactTypeOverride_OverrideOptionsAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXOseeArtifactTypeOverrideAccess().getOverrideOptionsAssignment_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AttributeOverrideOption_Alternatives(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("overrideOptions", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("overrideOptions"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getAttributeOverrideOptionRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = + grammarAccess.getXOseeArtifactTypeOverrideAccess().getOverrideOptionsAttributeOverrideOptionParserRuleCall_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 XOseeArtifactTypeOverride_OverrideOptionsAssignment_4(lastRuleCallOrigin, next, actIndex, + consumed); + case 1: + return new XOseeArtifactTypeOverride_InheritAllAssignment_3(lastRuleCallOrigin, next, actIndex, + consumed); + case 2: + return new XOseeArtifactTypeOverride_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, next, actIndex, + consumed); + default: + return null; + } + } + } + + // "}" + protected class XOseeArtifactTypeOverride_RightCurlyBracketKeyword_5 extends KeywordToken { + + public XOseeArtifactTypeOverride_RightCurlyBracketKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXOseeArtifactTypeOverrideAccess().getRightCurlyBracketKeyword_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XOseeArtifactTypeOverride_OverrideOptionsAssignment_4(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + /************ end Rule XOseeArtifactTypeOverride ****************/ + + /************ + * begin Rule AttributeOverrideOption **************** AttributeOverrideOption: AddAttribute | RemoveAttribute | + * UpdateAttribute; + **/ + + // AddAttribute | RemoveAttribute | UpdateAttribute + protected class AttributeOverrideOption_Alternatives extends AlternativesToken { + + public AttributeOverrideOption_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Alternatives getGrammarElement() { + return grammarAccess.getAttributeOverrideOptionAccess().getAlternatives(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AttributeOverrideOption_AddAttributeParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); + case 1: + return new AttributeOverrideOption_RemoveAttributeParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); + case 2: + return new AttributeOverrideOption_UpdateAttributeParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getAddAttributeRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getRemoveAttributeRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUpdateAttributeRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // AddAttribute + protected class AttributeOverrideOption_AddAttributeParserRuleCall_0 extends RuleCallToken { + + public AttributeOverrideOption_AddAttributeParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getAttributeOverrideOptionAccess().getAddAttributeParserRuleCall_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AddAttribute_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getAddAttributeRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(AddAttribute_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); + } + } + } + + // RemoveAttribute + protected class AttributeOverrideOption_RemoveAttributeParserRuleCall_1 extends RuleCallToken { + + public AttributeOverrideOption_RemoveAttributeParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getAttributeOverrideOptionAccess().getRemoveAttributeParserRuleCall_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RemoveAttribute_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getRemoveAttributeRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(RemoveAttribute_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); + } + } + } + + // UpdateAttribute + protected class AttributeOverrideOption_UpdateAttributeParserRuleCall_2 extends RuleCallToken { + + public AttributeOverrideOption_UpdateAttributeParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getAttributeOverrideOptionAccess().getUpdateAttributeParserRuleCall_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new UpdateAttribute_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getUpdateAttributeRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(UpdateAttribute_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 AttributeOverrideOption ****************/ + + /************ + * begin Rule AddAttribute **************** AddAttribute: "add" attribute=XAttributeTypeRef; + **/ + + // "add" attribute=XAttributeTypeRef + protected class AddAttribute_Group extends GroupToken { + + public AddAttribute_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getAddAttributeAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AddAttribute_AttributeAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getAddAttributeRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "add" + protected class AddAttribute_AddKeyword_0 extends KeywordToken { + + public AddAttribute_AddKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAddAttributeAccess().getAddKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // attribute=XAttributeTypeRef + protected class AddAttribute_AttributeAssignment_1 extends AssignmentToken { + + public AddAttribute_AttributeAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAddAttributeAccess().getAttributeAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeTypeRef_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("attribute", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("attribute"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getXAttributeTypeRefRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getAddAttributeAccess().getAttributeXAttributeTypeRefParserRuleCall_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 AddAttribute_AddKeyword_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + /************ end Rule AddAttribute ****************/ + + /************ + * begin Rule RemoveAttribute **************** RemoveAttribute: "remove" "attribute" + * attribute=[XAttributeType|STRING]; + **/ + + // "remove" "attribute" attribute=[XAttributeType|STRING] + protected class RemoveAttribute_Group extends GroupToken { + + public RemoveAttribute_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getRemoveAttributeAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RemoveAttribute_AttributeAssignment_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getRemoveAttributeRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "remove" + protected class RemoveAttribute_RemoveKeyword_0 extends KeywordToken { + + public RemoveAttribute_RemoveKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getRemoveAttributeAccess().getRemoveKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // "attribute" + protected class RemoveAttribute_AttributeKeyword_1 extends KeywordToken { + + public RemoveAttribute_AttributeKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getRemoveAttributeAccess().getAttributeKeyword_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RemoveAttribute_RemoveKeyword_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // attribute=[XAttributeType|STRING] + protected class RemoveAttribute_AttributeAssignment_2 extends AssignmentToken { + + public RemoveAttribute_AttributeAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRemoveAttributeAccess().getAttributeAssignment_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RemoveAttribute_AttributeKeyword_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("attribute", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("attribute"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getRemoveAttributeAccess().getAttributeXAttributeTypeCrossReference_2_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = grammarAccess.getRemoveAttributeAccess().getAttributeXAttributeTypeCrossReference_2_0(); + return obj; + } + } + return null; + } + + } + + /************ end Rule RemoveAttribute ****************/ + + /************ + * begin Rule UpdateAttribute **************** UpdateAttribute: "update" attribute=XAttributeTypeRef; + **/ + + // "update" attribute=XAttributeTypeRef + protected class UpdateAttribute_Group extends GroupToken { + + public UpdateAttribute_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getUpdateAttributeAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new UpdateAttribute_AttributeAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getUpdateAttributeRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "update" + protected class UpdateAttribute_UpdateKeyword_0 extends KeywordToken { + + public UpdateAttribute_UpdateKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getUpdateAttributeAccess().getUpdateKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // attribute=XAttributeTypeRef + protected class UpdateAttribute_AttributeAssignment_1 extends AssignmentToken { + + public UpdateAttribute_AttributeAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getUpdateAttributeAccess().getAttributeAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XAttributeTypeRef_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("attribute", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("attribute"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getXAttributeTypeRefRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getUpdateAttributeAccess().getAttributeXAttributeTypeRefParserRuleCall_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 UpdateAttribute_UpdateKeyword_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + /************ end Rule UpdateAttribute ****************/ + + /************ + * begin Rule XRelationType **************** XRelationType: "relationType" name=STRING "{" ("guid" typeGuid=STRING)? + * "uuid" uuid=HEX_INT "sideAName" sideAName=STRING "sideAArtifactType" sideAArtifactType=[XArtifactType|STRING] + * "sideBName" sideBName=STRING "sideBArtifactType" sideBArtifactType=[XArtifactType|STRING] "defaultOrderType" + * defaultOrderType=RelationOrderType "multiplicity" multiplicity=RelationMultiplicityEnum "}"; + **/ + + // "relationType" name=STRING "{" ("guid" typeGuid=STRING)? "uuid" uuid=HEX_INT "sideAName" sideAName=STRING + // "sideAArtifactType" sideAArtifactType=[XArtifactType|STRING] "sideBName" sideBName=STRING "sideBArtifactType" + // sideBArtifactType=[XArtifactType|STRING] "defaultOrderType" defaultOrderType=RelationOrderType "multiplicity" + // multiplicity=RelationMultiplicityEnum "}" + protected class XRelationType_Group extends GroupToken { + + public XRelationType_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_RightCurlyBracketKeyword_18(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXRelationTypeRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "relationType" + protected class XRelationType_RelationTypeKeyword_0 extends KeywordToken { + + public XRelationType_RelationTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getRelationTypeKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // name=STRING + protected class XRelationType_NameAssignment_1 extends AssignmentToken { + + public XRelationType_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getNameAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_RelationTypeKeyword_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.getXRelationTypeAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXRelationTypeAccess().getNameSTRINGTerminalRuleCall_1_0(); + return obj; + } + return null; + } + + } + + // "{" + protected class XRelationType_LeftCurlyBracketKeyword_2 extends KeywordToken { + + public XRelationType_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getLeftCurlyBracketKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // ("guid" typeGuid=STRING)? + protected class XRelationType_Group_3 extends GroupToken { + + public XRelationType_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getGroup_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_TypeGuidAssignment_3_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "guid" + protected class XRelationType_GuidKeyword_3_0 extends KeywordToken { + + public XRelationType_GuidKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getGuidKeyword_3_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // typeGuid=STRING + protected class XRelationType_TypeGuidAssignment_3_1 extends AssignmentToken { + + public XRelationType_TypeGuidAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getTypeGuidAssignment_3_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_GuidKeyword_3_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("typeGuid", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("typeGuid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXRelationTypeAccess().getTypeGuidSTRINGTerminalRuleCall_3_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXRelationTypeAccess().getTypeGuidSTRINGTerminalRuleCall_3_1_0(); + return obj; + } + return null; + } + + } + + // "uuid" + protected class XRelationType_UuidKeyword_4 extends KeywordToken { + + public XRelationType_UuidKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getUuidKeyword_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_Group_3(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XRelationType_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // uuid=HEX_INT + protected class XRelationType_UuidAssignment_5 extends AssignmentToken { + + public XRelationType_UuidAssignment_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getUuidAssignment_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_UuidKeyword_4(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("uuid", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("uuid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXRelationTypeAccess().getUuidHEX_INTTerminalRuleCall_5_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXRelationTypeAccess().getUuidHEX_INTTerminalRuleCall_5_0(); + return obj; + } + return null; + } + + } + + // "sideAName" + protected class XRelationType_SideANameKeyword_6 extends KeywordToken { + + public XRelationType_SideANameKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getSideANameKeyword_6(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_UuidAssignment_5(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // sideAName=STRING + protected class XRelationType_SideANameAssignment_7 extends AssignmentToken { + + public XRelationType_SideANameAssignment_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getSideANameAssignment_7(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_SideANameKeyword_6(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("sideAName", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("sideAName"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXRelationTypeAccess().getSideANameSTRINGTerminalRuleCall_7_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXRelationTypeAccess().getSideANameSTRINGTerminalRuleCall_7_0(); + return obj; + } + return null; + } + + } + + // "sideAArtifactType" + protected class XRelationType_SideAArtifactTypeKeyword_8 extends KeywordToken { + + public XRelationType_SideAArtifactTypeKeyword_8(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getSideAArtifactTypeKeyword_8(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_SideANameAssignment_7(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // sideAArtifactType=[XArtifactType|STRING] + protected class XRelationType_SideAArtifactTypeAssignment_9 extends AssignmentToken { + + public XRelationType_SideAArtifactTypeAssignment_9(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getSideAArtifactTypeAssignment_9(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_SideAArtifactTypeKeyword_8(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("sideAArtifactType", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("sideAArtifactType"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getXRelationTypeAccess().getSideAArtifactTypeXArtifactTypeCrossReference_9_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = grammarAccess.getXRelationTypeAccess().getSideAArtifactTypeXArtifactTypeCrossReference_9_0(); + return obj; + } + } + return null; + } + + } + + // "sideBName" + protected class XRelationType_SideBNameKeyword_10 extends KeywordToken { + + public XRelationType_SideBNameKeyword_10(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getSideBNameKeyword_10(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_SideAArtifactTypeAssignment_9(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // sideBName=STRING + protected class XRelationType_SideBNameAssignment_11 extends AssignmentToken { + + public XRelationType_SideBNameAssignment_11(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getSideBNameAssignment_11(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_SideBNameKeyword_10(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("sideBName", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("sideBName"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXRelationTypeAccess().getSideBNameSTRINGTerminalRuleCall_11_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXRelationTypeAccess().getSideBNameSTRINGTerminalRuleCall_11_0(); + return obj; + } + return null; + } + + } + + // "sideBArtifactType" + protected class XRelationType_SideBArtifactTypeKeyword_12 extends KeywordToken { + + public XRelationType_SideBArtifactTypeKeyword_12(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getSideBArtifactTypeKeyword_12(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_SideBNameAssignment_11(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // sideBArtifactType=[XArtifactType|STRING] + protected class XRelationType_SideBArtifactTypeAssignment_13 extends AssignmentToken { + + public XRelationType_SideBArtifactTypeAssignment_13(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getSideBArtifactTypeAssignment_13(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_SideBArtifactTypeKeyword_12(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("sideBArtifactType", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("sideBArtifactType"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getXRelationTypeAccess().getSideBArtifactTypeXArtifactTypeCrossReference_13_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = grammarAccess.getXRelationTypeAccess().getSideBArtifactTypeXArtifactTypeCrossReference_13_0(); + return obj; + } + } + return null; + } + + } + + // "defaultOrderType" + protected class XRelationType_DefaultOrderTypeKeyword_14 extends KeywordToken { + + public XRelationType_DefaultOrderTypeKeyword_14(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getDefaultOrderTypeKeyword_14(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_SideBArtifactTypeAssignment_13(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // defaultOrderType=RelationOrderType + protected class XRelationType_DefaultOrderTypeAssignment_15 extends AssignmentToken { + + public XRelationType_DefaultOrderTypeAssignment_15(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getDefaultOrderTypeAssignment_15(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_DefaultOrderTypeKeyword_14(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("defaultOrderType", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("defaultOrderType"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getXRelationTypeAccess().getDefaultOrderTypeRelationOrderTypeParserRuleCall_15_0(), value, + null)) { + type = AssignmentType.DATATYPE_RULE_CALL; + element = grammarAccess.getXRelationTypeAccess().getDefaultOrderTypeRelationOrderTypeParserRuleCall_15_0(); + return obj; + } + return null; + } + + } + + // "multiplicity" + protected class XRelationType_MultiplicityKeyword_16 extends KeywordToken { + + public XRelationType_MultiplicityKeyword_16(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getMultiplicityKeyword_16(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_DefaultOrderTypeAssignment_15(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // multiplicity=RelationMultiplicityEnum + protected class XRelationType_MultiplicityAssignment_17 extends AssignmentToken { + + public XRelationType_MultiplicityAssignment_17(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getMultiplicityAssignment_17(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_MultiplicityKeyword_16(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("multiplicity", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("multiplicity"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getXRelationTypeAccess().getMultiplicityRelationMultiplicityEnumEnumRuleCall_17_0(), value, + null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = grammarAccess.getXRelationTypeAccess().getMultiplicityRelationMultiplicityEnumEnumRuleCall_17_0(); + return obj; + } + return null; + } + + } + + // "}" + protected class XRelationType_RightCurlyBracketKeyword_18 extends KeywordToken { + + public XRelationType_RightCurlyBracketKeyword_18(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXRelationTypeAccess().getRightCurlyBracketKeyword_18(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XRelationType_MultiplicityAssignment_17(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + /************ end Rule XRelationType ****************/ + + /************ + * begin Rule Condition **************** Condition: SimpleCondition | CompoundCondition; + **/ + + // SimpleCondition | CompoundCondition + protected class Condition_Alternatives extends AlternativesToken { + + public Condition_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Alternatives getGrammarElement() { + return grammarAccess.getConditionAccess().getAlternatives(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Condition_SimpleConditionParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); + case 1: + return new Condition_CompoundConditionParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getCompoundConditionRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getSimpleConditionRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // SimpleCondition + protected class Condition_SimpleConditionParserRuleCall_0 extends RuleCallToken { + + public Condition_SimpleConditionParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getConditionAccess().getSimpleConditionParserRuleCall_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new SimpleCondition_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getSimpleConditionRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(SimpleCondition_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); + } + } + } + + // CompoundCondition + protected class Condition_CompoundConditionParserRuleCall_1 extends RuleCallToken { + + public Condition_CompoundConditionParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getConditionAccess().getCompoundConditionParserRuleCall_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new CompoundCondition_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getCompoundConditionRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(CompoundCondition_Group.class, eObjectConsumer)) { + return null; + } + return eObjectConsumer; + } + + @Override + public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex, index, inst); + } + } + } + + /************ end Rule Condition ****************/ + + /************ + * begin Rule SimpleCondition **************** SimpleCondition: field=MatchField op=CompareOp expression=STRING; + **/ + + // field=MatchField op=CompareOp expression=STRING + protected class SimpleCondition_Group extends GroupToken { + + public SimpleCondition_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getSimpleConditionAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new SimpleCondition_ExpressionAssignment_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getSimpleConditionRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // field=MatchField + protected class SimpleCondition_FieldAssignment_0 extends AssignmentToken { + + public SimpleCondition_FieldAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getSimpleConditionAccess().getFieldAssignment_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("field", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("field"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getSimpleConditionAccess().getFieldMatchFieldEnumRuleCall_0_0(), value, null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = grammarAccess.getSimpleConditionAccess().getFieldMatchFieldEnumRuleCall_0_0(); + return obj; + } + return null; + } + + } + + // op=CompareOp + protected class SimpleCondition_OpAssignment_1 extends AssignmentToken { + + public SimpleCondition_OpAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getSimpleConditionAccess().getOpAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new SimpleCondition_FieldAssignment_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("op", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("op"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getSimpleConditionAccess().getOpCompareOpEnumRuleCall_1_0(), value, null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = grammarAccess.getSimpleConditionAccess().getOpCompareOpEnumRuleCall_1_0(); + return obj; + } + return null; + } + + } + + // expression=STRING + protected class SimpleCondition_ExpressionAssignment_2 extends AssignmentToken { + + public SimpleCondition_ExpressionAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getSimpleConditionAccess().getExpressionAssignment_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new SimpleCondition_OpAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("expression", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("expression"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getSimpleConditionAccess().getExpressionSTRINGTerminalRuleCall_2_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getSimpleConditionAccess().getExpressionSTRINGTerminalRuleCall_2_0(); + return obj; + } + return null; + } + + } + + /************ end Rule SimpleCondition ****************/ + + /************ + * begin Rule CompoundCondition **************** CompoundCondition: "(" conditions+=SimpleCondition + * (operators+=XLogicOperator conditions+=SimpleCondition)+ ")"; + **/ + + // "(" conditions+=SimpleCondition (operators+=XLogicOperator conditions+=SimpleCondition)+ ")" + protected class CompoundCondition_Group extends GroupToken { + + public CompoundCondition_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getCompoundConditionAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new CompoundCondition_RightParenthesisKeyword_3(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getCompoundConditionRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "(" + protected class CompoundCondition_LeftParenthesisKeyword_0 extends KeywordToken { + + public CompoundCondition_LeftParenthesisKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getCompoundConditionAccess().getLeftParenthesisKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // conditions+=SimpleCondition + protected class CompoundCondition_ConditionsAssignment_1 extends AssignmentToken { + + public CompoundCondition_ConditionsAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getCompoundConditionAccess().getConditionsAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new SimpleCondition_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("conditions", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("conditions"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getSimpleConditionRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getCompoundConditionAccess().getConditionsSimpleConditionParserRuleCall_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 CompoundCondition_LeftParenthesisKeyword_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + // (operators+=XLogicOperator conditions+=SimpleCondition)+ + protected class CompoundCondition_Group_2 extends GroupToken { + + public CompoundCondition_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getCompoundConditionAccess().getGroup_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new CompoundCondition_ConditionsAssignment_2_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // operators+=XLogicOperator + protected class CompoundCondition_OperatorsAssignment_2_0 extends AssignmentToken { + + public CompoundCondition_OperatorsAssignment_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getCompoundConditionAccess().getOperatorsAssignment_2_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new CompoundCondition_Group_2(lastRuleCallOrigin, this, 0, inst); + case 1: + return new CompoundCondition_ConditionsAssignment_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("operators", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("operators"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getCompoundConditionAccess().getOperatorsXLogicOperatorEnumRuleCall_2_0_0(), value, null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = grammarAccess.getCompoundConditionAccess().getOperatorsXLogicOperatorEnumRuleCall_2_0_0(); + return obj; + } + return null; + } + + } + + // conditions+=SimpleCondition + protected class CompoundCondition_ConditionsAssignment_2_1 extends AssignmentToken { + + public CompoundCondition_ConditionsAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getCompoundConditionAccess().getConditionsAssignment_2_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new SimpleCondition_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("conditions", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("conditions"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getSimpleConditionRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getCompoundConditionAccess().getConditionsSimpleConditionParserRuleCall_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 CompoundCondition_OperatorsAssignment_2_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + // ")" + protected class CompoundCondition_RightParenthesisKeyword_3 extends KeywordToken { + + public CompoundCondition_RightParenthesisKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getCompoundConditionAccess().getRightParenthesisKeyword_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new CompoundCondition_Group_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + /************ end Rule CompoundCondition ****************/ + + /************ + * begin Rule XArtifactMatcher **************** XArtifactMatcher: "artifactMatcher" name=STRING "where" + * conditions+=Condition (operators+=XLogicOperator conditions+=Condition)* ";"; + **/ + + // "artifactMatcher" name=STRING "where" conditions+=Condition (operators+=XLogicOperator conditions+=Condition)* ";" + protected class XArtifactMatcher_Group extends GroupToken { + + public XArtifactMatcher_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXArtifactMatcherAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactMatcher_SemicolonKeyword_5(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getXArtifactMatcherRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "artifactMatcher" + protected class XArtifactMatcher_ArtifactMatcherKeyword_0 extends KeywordToken { + + public XArtifactMatcher_ArtifactMatcherKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXArtifactMatcherAccess().getArtifactMatcherKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // name=STRING + protected class XArtifactMatcher_NameAssignment_1 extends AssignmentToken { + + public XArtifactMatcher_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXArtifactMatcherAccess().getNameAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactMatcher_ArtifactMatcherKeyword_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.getXArtifactMatcherAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getXArtifactMatcherAccess().getNameSTRINGTerminalRuleCall_1_0(); + return obj; + } + return null; + } + + } + + // "where" + protected class XArtifactMatcher_WhereKeyword_2 extends KeywordToken { + + public XArtifactMatcher_WhereKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXArtifactMatcherAccess().getWhereKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactMatcher_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // conditions+=Condition + protected class XArtifactMatcher_ConditionsAssignment_3 extends AssignmentToken { + + public XArtifactMatcher_ConditionsAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXArtifactMatcherAccess().getConditionsAssignment_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Condition_Alternatives(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("conditions", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("conditions"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getConditionRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getXArtifactMatcherAccess().getConditionsConditionParserRuleCall_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 XArtifactMatcher_WhereKeyword_2(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + // (operators+=XLogicOperator conditions+=Condition)* + protected class XArtifactMatcher_Group_4 extends GroupToken { + + public XArtifactMatcher_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getXArtifactMatcherAccess().getGroup_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactMatcher_ConditionsAssignment_4_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // operators+=XLogicOperator + protected class XArtifactMatcher_OperatorsAssignment_4_0 extends AssignmentToken { + + public XArtifactMatcher_OperatorsAssignment_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXArtifactMatcherAccess().getOperatorsAssignment_4_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactMatcher_Group_4(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XArtifactMatcher_ConditionsAssignment_3(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("operators", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("operators"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getXArtifactMatcherAccess().getOperatorsXLogicOperatorEnumRuleCall_4_0_0(), value, null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = grammarAccess.getXArtifactMatcherAccess().getOperatorsXLogicOperatorEnumRuleCall_4_0_0(); + return obj; + } + return null; + } + + } + + // conditions+=Condition + protected class XArtifactMatcher_ConditionsAssignment_4_1 extends AssignmentToken { + + public XArtifactMatcher_ConditionsAssignment_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getXArtifactMatcherAccess().getConditionsAssignment_4_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Condition_Alternatives(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("conditions", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("conditions"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getConditionRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getXArtifactMatcherAccess().getConditionsConditionParserRuleCall_4_1_0(); + consumed = obj; + return param; + } + } + return null; + } + + @Override + public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { + if (value == inst.getEObject() && !inst.isConsumed()) { + return null; + } + switch (index) { + case 0: + return new XArtifactMatcher_OperatorsAssignment_4_0(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + // ";" + protected class XArtifactMatcher_SemicolonKeyword_5 extends KeywordToken { + + public XArtifactMatcher_SemicolonKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getXArtifactMatcherAccess().getSemicolonKeyword_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new XArtifactMatcher_Group_4(lastRuleCallOrigin, this, 0, inst); + case 1: + return new XArtifactMatcher_ConditionsAssignment_3(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + /************ end Rule XArtifactMatcher ****************/ + + /************ + * begin Rule Role **************** /////////////////////////////////////// // OSEE ACCESS MODEL // + * /////////////////////////////////////// Role: "role" name=STRING ("extends" superRoles+=[Role|STRING])? "{" + * (usersAndGroups+=UsersAndGroups | referencedContexts+=ReferencedContext)+ "}"; + **/ + + // "role" name=STRING ("extends" superRoles+=[Role|STRING])? "{" (usersAndGroups+=UsersAndGroups | + // referencedContexts+=ReferencedContext)+ "}" + protected class Role_Group extends GroupToken { + + public Role_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getRoleAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Role_RightCurlyBracketKeyword_5(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getRoleRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "role" + protected class Role_RoleKeyword_0 extends KeywordToken { + + public Role_RoleKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getRoleAccess().getRoleKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // name=STRING + protected class Role_NameAssignment_1 extends AssignmentToken { + + public Role_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRoleAccess().getNameAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Role_RoleKeyword_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.getRoleAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getRoleAccess().getNameSTRINGTerminalRuleCall_1_0(); + return obj; + } + return null; + } + + } + + // ("extends" superRoles+=[Role|STRING])? + protected class Role_Group_2 extends GroupToken { + + public Role_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getRoleAccess().getGroup_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Role_SuperRolesAssignment_2_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "extends" + protected class Role_ExtendsKeyword_2_0 extends KeywordToken { + + public Role_ExtendsKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getRoleAccess().getExtendsKeyword_2_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Role_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // superRoles+=[Role|STRING] + protected class Role_SuperRolesAssignment_2_1 extends AssignmentToken { + + public Role_SuperRolesAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRoleAccess().getSuperRolesAssignment_2_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Role_ExtendsKeyword_2_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("superRoles", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("superRoles"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getRoleAccess().getSuperRolesRoleCrossReference_2_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = grammarAccess.getRoleAccess().getSuperRolesRoleCrossReference_2_1_0(); + return obj; + } + } + return null; + } + + } + + // "{" + protected class Role_LeftCurlyBracketKeyword_3 extends KeywordToken { + + public Role_LeftCurlyBracketKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getRoleAccess().getLeftCurlyBracketKeyword_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Role_Group_2(lastRuleCallOrigin, this, 0, inst); + case 1: + return new Role_NameAssignment_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // (usersAndGroups+=UsersAndGroups | referencedContexts+=ReferencedContext)+ + protected class Role_Alternatives_4 extends AlternativesToken { + + public Role_Alternatives_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Alternatives getGrammarElement() { + return grammarAccess.getRoleAccess().getAlternatives_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Role_UsersAndGroupsAssignment_4_0(lastRuleCallOrigin, this, 0, inst); + case 1: + return new Role_ReferencedContextsAssignment_4_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // usersAndGroups+=UsersAndGroups + protected class Role_UsersAndGroupsAssignment_4_0 extends AssignmentToken { + + public Role_UsersAndGroupsAssignment_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRoleAccess().getUsersAndGroupsAssignment_4_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new UsersAndGroups_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("usersAndGroups", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("usersAndGroups"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getUsersAndGroupsRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getRoleAccess().getUsersAndGroupsUsersAndGroupsParserRuleCall_4_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 Role_Alternatives_4(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new Role_LeftCurlyBracketKeyword_3(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + // referencedContexts+=ReferencedContext + protected class Role_ReferencedContextsAssignment_4_1 extends AssignmentToken { + + public Role_ReferencedContextsAssignment_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRoleAccess().getReferencedContextsAssignment_4_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ReferencedContext_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("referencedContexts", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("referencedContexts"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getReferencedContextRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getRoleAccess().getReferencedContextsReferencedContextParserRuleCall_4_1_0(); + consumed = obj; + return param; + } + } + return null; + } + + @Override + public AbstractToken createFollowerAfterReturn(AbstractToken next, int actIndex, int index, IEObjectConsumer inst) { + if (value == inst.getEObject() && !inst.isConsumed()) { + return null; + } + switch (index) { + case 0: + return new Role_Alternatives_4(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new Role_LeftCurlyBracketKeyword_3(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + // "}" + protected class Role_RightCurlyBracketKeyword_5 extends KeywordToken { + + public Role_RightCurlyBracketKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getRoleAccess().getRightCurlyBracketKeyword_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new Role_Alternatives_4(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + /************ end Rule Role ****************/ + + /************ + * begin Rule ReferencedContext **************** ReferencedContext: "accessContext" accessContextRef=STRING ";"; + **/ + + // "accessContext" accessContextRef=STRING ";" + protected class ReferencedContext_Group extends GroupToken { + + public ReferencedContext_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getReferencedContextAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ReferencedContext_SemicolonKeyword_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getReferencedContextRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "accessContext" + protected class ReferencedContext_AccessContextKeyword_0 extends KeywordToken { + + public ReferencedContext_AccessContextKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getReferencedContextAccess().getAccessContextKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // accessContextRef=STRING + protected class ReferencedContext_AccessContextRefAssignment_1 extends AssignmentToken { + + public ReferencedContext_AccessContextRefAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getReferencedContextAccess().getAccessContextRefAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ReferencedContext_AccessContextKeyword_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("accessContextRef", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("accessContextRef"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getReferencedContextAccess().getAccessContextRefSTRINGTerminalRuleCall_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getReferencedContextAccess().getAccessContextRefSTRINGTerminalRuleCall_1_0(); + return obj; + } + return null; + } + + } + + // ";" + protected class ReferencedContext_SemicolonKeyword_2 extends KeywordToken { + + public ReferencedContext_SemicolonKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getReferencedContextAccess().getSemicolonKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ReferencedContext_AccessContextRefAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + /************ end Rule ReferencedContext ****************/ + + /************ + * begin Rule UsersAndGroups **************** UsersAndGroups: "guid" userOrGroupGuid=STRING ";"; + **/ + + // "guid" userOrGroupGuid=STRING ";" + protected class UsersAndGroups_Group extends GroupToken { + + public UsersAndGroups_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getUsersAndGroupsAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new UsersAndGroups_SemicolonKeyword_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getUsersAndGroupsRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "guid" + protected class UsersAndGroups_GuidKeyword_0 extends KeywordToken { + + public UsersAndGroups_GuidKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getUsersAndGroupsAccess().getGuidKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // userOrGroupGuid=STRING + protected class UsersAndGroups_UserOrGroupGuidAssignment_1 extends AssignmentToken { + + public UsersAndGroups_UserOrGroupGuidAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getUsersAndGroupsAccess().getUserOrGroupGuidAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new UsersAndGroups_GuidKeyword_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("userOrGroupGuid", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("userOrGroupGuid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getUsersAndGroupsAccess().getUserOrGroupGuidSTRINGTerminalRuleCall_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getUsersAndGroupsAccess().getUserOrGroupGuidSTRINGTerminalRuleCall_1_0(); + return obj; + } + return null; + } + + } + + // ";" + protected class UsersAndGroups_SemicolonKeyword_2 extends KeywordToken { + + public UsersAndGroups_SemicolonKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getUsersAndGroupsAccess().getSemicolonKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new UsersAndGroups_UserOrGroupGuidAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + /************ end Rule UsersAndGroups ****************/ + + /************ + * begin Rule AccessContext **************** AccessContext: "accessContext" name=STRING ("extends" + * superAccessContexts+=[AccessContext|STRING])? "{" "guid" guid=STRING ";" (accessRules+=ObjectRestriction | + * hierarchyRestrictions+=HierarchyRestriction)+ "}"; + **/ + + // "accessContext" name=STRING ("extends" superAccessContexts+=[AccessContext|STRING])? "{" "guid" guid=STRING ";" + // (accessRules+=ObjectRestriction | hierarchyRestrictions+=HierarchyRestriction)+ "}" + protected class AccessContext_Group extends GroupToken { + + public AccessContext_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getAccessContextAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AccessContext_RightCurlyBracketKeyword_8(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getAccessContextRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "accessContext" + protected class AccessContext_AccessContextKeyword_0 extends KeywordToken { + + public AccessContext_AccessContextKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAccessContextAccess().getAccessContextKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // name=STRING + protected class AccessContext_NameAssignment_1 extends AssignmentToken { + + public AccessContext_NameAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAccessContextAccess().getNameAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AccessContext_AccessContextKeyword_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.getAccessContextAccess().getNameSTRINGTerminalRuleCall_1_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getAccessContextAccess().getNameSTRINGTerminalRuleCall_1_0(); + return obj; + } + return null; + } + + } + + // ("extends" superAccessContexts+=[AccessContext|STRING])? + protected class AccessContext_Group_2 extends GroupToken { + + public AccessContext_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getAccessContextAccess().getGroup_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AccessContext_SuperAccessContextsAssignment_2_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "extends" + protected class AccessContext_ExtendsKeyword_2_0 extends KeywordToken { + + public AccessContext_ExtendsKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAccessContextAccess().getExtendsKeyword_2_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AccessContext_NameAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // superAccessContexts+=[AccessContext|STRING] + protected class AccessContext_SuperAccessContextsAssignment_2_1 extends AssignmentToken { + + public AccessContext_SuperAccessContextsAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAccessContextAccess().getSuperAccessContextsAssignment_2_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AccessContext_ExtendsKeyword_2_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("superAccessContexts", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("superAccessContexts"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getAccessContextAccess().getSuperAccessContextsAccessContextCrossReference_2_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getAccessContextAccess().getSuperAccessContextsAccessContextCrossReference_2_1_0(); + return obj; + } + } + return null; + } + + } + + // "{" + protected class AccessContext_LeftCurlyBracketKeyword_3 extends KeywordToken { + + public AccessContext_LeftCurlyBracketKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAccessContextAccess().getLeftCurlyBracketKeyword_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AccessContext_Group_2(lastRuleCallOrigin, this, 0, inst); + case 1: + return new AccessContext_NameAssignment_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // "guid" + protected class AccessContext_GuidKeyword_4 extends KeywordToken { + + public AccessContext_GuidKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAccessContextAccess().getGuidKeyword_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AccessContext_LeftCurlyBracketKeyword_3(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // guid=STRING + protected class AccessContext_GuidAssignment_5 extends AssignmentToken { + + public AccessContext_GuidAssignment_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAccessContextAccess().getGuidAssignment_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AccessContext_GuidKeyword_4(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("guid", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("guid"); + if (valueSerializer.isValid(obj.getEObject(), + grammarAccess.getAccessContextAccess().getGuidSTRINGTerminalRuleCall_5_0(), value, null)) { + type = AssignmentType.TERMINAL_RULE_CALL; + element = grammarAccess.getAccessContextAccess().getGuidSTRINGTerminalRuleCall_5_0(); + return obj; + } + return null; + } + + } + + // ";" + protected class AccessContext_SemicolonKeyword_6 extends KeywordToken { + + public AccessContext_SemicolonKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAccessContextAccess().getSemicolonKeyword_6(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AccessContext_GuidAssignment_5(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // (accessRules+=ObjectRestriction | hierarchyRestrictions+=HierarchyRestriction)+ + protected class AccessContext_Alternatives_7 extends AlternativesToken { + + public AccessContext_Alternatives_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Alternatives getGrammarElement() { + return grammarAccess.getAccessContextAccess().getAlternatives_7(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AccessContext_AccessRulesAssignment_7_0(lastRuleCallOrigin, this, 0, inst); + case 1: + return new AccessContext_HierarchyRestrictionsAssignment_7_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // accessRules+=ObjectRestriction + protected class AccessContext_AccessRulesAssignment_7_0 extends AssignmentToken { + + public AccessContext_AccessRulesAssignment_7_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAccessContextAccess().getAccessRulesAssignment_7_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ObjectRestriction_Alternatives(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("accessRules", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("accessRules"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getObjectRestrictionRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = grammarAccess.getAccessContextAccess().getAccessRulesObjectRestrictionParserRuleCall_7_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 AccessContext_Alternatives_7(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new AccessContext_SemicolonKeyword_6(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + // hierarchyRestrictions+=HierarchyRestriction + protected class AccessContext_HierarchyRestrictionsAssignment_7_1 extends AssignmentToken { + + public AccessContext_HierarchyRestrictionsAssignment_7_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAccessContextAccess().getHierarchyRestrictionsAssignment_7_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new HierarchyRestriction_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("hierarchyRestrictions", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("hierarchyRestrictions"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getHierarchyRestrictionRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = + grammarAccess.getAccessContextAccess().getHierarchyRestrictionsHierarchyRestrictionParserRuleCall_7_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 AccessContext_Alternatives_7(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new AccessContext_SemicolonKeyword_6(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + // "}" + protected class AccessContext_RightCurlyBracketKeyword_8 extends KeywordToken { + + public AccessContext_RightCurlyBracketKeyword_8(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAccessContextAccess().getRightCurlyBracketKeyword_8(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AccessContext_Alternatives_7(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + /************ end Rule AccessContext ****************/ + + /************ + * begin Rule HierarchyRestriction **************** HierarchyRestriction: "childrenOf" + * artifactMatcherRef=[XArtifactMatcher|STRING] "{" accessRules+=ObjectRestriction+ "}"; + **/ + + // "childrenOf" artifactMatcherRef=[XArtifactMatcher|STRING] "{" accessRules+=ObjectRestriction+ "}" + protected class HierarchyRestriction_Group extends GroupToken { + + public HierarchyRestriction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getHierarchyRestrictionAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new HierarchyRestriction_RightCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getHierarchyRestrictionRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "childrenOf" + protected class HierarchyRestriction_ChildrenOfKeyword_0 extends KeywordToken { + + public HierarchyRestriction_ChildrenOfKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getHierarchyRestrictionAccess().getChildrenOfKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // artifactMatcherRef=[XArtifactMatcher|STRING] + protected class HierarchyRestriction_ArtifactMatcherRefAssignment_1 extends AssignmentToken { + + public HierarchyRestriction_ArtifactMatcherRefAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getHierarchyRestrictionAccess().getArtifactMatcherRefAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new HierarchyRestriction_ChildrenOfKeyword_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("artifactMatcherRef", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactMatcherRef"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getHierarchyRestrictionAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getHierarchyRestrictionAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_1_0(); + return obj; + } + } + return null; + } + + } + + // "{" + protected class HierarchyRestriction_LeftCurlyBracketKeyword_2 extends KeywordToken { + + public HierarchyRestriction_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getHierarchyRestrictionAccess().getLeftCurlyBracketKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new HierarchyRestriction_ArtifactMatcherRefAssignment_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // accessRules+=ObjectRestriction+ + protected class HierarchyRestriction_AccessRulesAssignment_3 extends AssignmentToken { + + public HierarchyRestriction_AccessRulesAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getHierarchyRestrictionAccess().getAccessRulesAssignment_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ObjectRestriction_Alternatives(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("accessRules", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("accessRules"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getObjectRestrictionRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = + grammarAccess.getHierarchyRestrictionAccess().getAccessRulesObjectRestrictionParserRuleCall_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 HierarchyRestriction_AccessRulesAssignment_3(lastRuleCallOrigin, next, actIndex, consumed); + case 1: + return new HierarchyRestriction_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, next, actIndex, consumed); + default: + return null; + } + } + } + + // "}" + protected class HierarchyRestriction_RightCurlyBracketKeyword_4 extends KeywordToken { + + public HierarchyRestriction_RightCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getHierarchyRestrictionAccess().getRightCurlyBracketKeyword_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new HierarchyRestriction_AccessRulesAssignment_3(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + /************ end Rule HierarchyRestriction ****************/ + + /************ + * begin Rule RelationTypeArtifactTypePredicate **************** RelationTypeArtifactTypePredicate: "artifactType" + * artifactTypeRef=[XArtifactType|STRING]; + **/ + + // "artifactType" artifactTypeRef=[XArtifactType|STRING] + protected class RelationTypeArtifactTypePredicate_Group extends GroupToken { + + public RelationTypeArtifactTypePredicate_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getRelationTypeArtifactTypePredicateAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeArtifactTypePredicate_ArtifactTypeRefAssignment_1(lastRuleCallOrigin, this, 0, + inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getRelationTypeArtifactTypePredicateRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "artifactType" + protected class RelationTypeArtifactTypePredicate_ArtifactTypeKeyword_0 extends KeywordToken { + + public RelationTypeArtifactTypePredicate_ArtifactTypeKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getRelationTypeArtifactTypePredicateAccess().getArtifactTypeKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // artifactTypeRef=[XArtifactType|STRING] + protected class RelationTypeArtifactTypePredicate_ArtifactTypeRefAssignment_1 extends AssignmentToken { + + public RelationTypeArtifactTypePredicate_ArtifactTypeRefAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRelationTypeArtifactTypePredicateAccess().getArtifactTypeRefAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeArtifactTypePredicate_ArtifactTypeKeyword_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("artifactTypeRef", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactTypeRef"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getRelationTypeArtifactTypePredicateAccess().getArtifactTypeRefXArtifactTypeCrossReference_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getRelationTypeArtifactTypePredicateAccess().getArtifactTypeRefXArtifactTypeCrossReference_1_0(); + return obj; + } + } + return null; + } + + } + + /************ end Rule RelationTypeArtifactTypePredicate ****************/ + + /************ + * begin Rule RelationTypeArtifactPredicate **************** RelationTypeArtifactPredicate: "artifact" + * artifactMatcherRef=[XArtifactMatcher|STRING]; + **/ + + // "artifact" artifactMatcherRef=[XArtifactMatcher|STRING] + protected class RelationTypeArtifactPredicate_Group extends GroupToken { + + public RelationTypeArtifactPredicate_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getRelationTypeArtifactPredicateAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeArtifactPredicate_ArtifactMatcherRefAssignment_1(lastRuleCallOrigin, this, 0, + inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getRelationTypeArtifactPredicateRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // "artifact" + protected class RelationTypeArtifactPredicate_ArtifactKeyword_0 extends KeywordToken { + + public RelationTypeArtifactPredicate_ArtifactKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getRelationTypeArtifactPredicateAccess().getArtifactKeyword_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + default: + return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); + } + } + + } + + // artifactMatcherRef=[XArtifactMatcher|STRING] + protected class RelationTypeArtifactPredicate_ArtifactMatcherRefAssignment_1 extends AssignmentToken { + + public RelationTypeArtifactPredicate_ArtifactMatcherRefAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRelationTypeArtifactPredicateAccess().getArtifactMatcherRefAssignment_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeArtifactPredicate_ArtifactKeyword_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("artifactMatcherRef", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactMatcherRef"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getRelationTypeArtifactPredicateAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getRelationTypeArtifactPredicateAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_1_0(); + return obj; + } + } + return null; + } + + } + + /************ end Rule RelationTypeArtifactPredicate ****************/ + + /************ + * begin Rule RelationTypePredicate **************** RelationTypePredicate: RelationTypeArtifactPredicate | + * RelationTypeArtifactTypePredicate; + **/ + + // RelationTypeArtifactPredicate | RelationTypeArtifactTypePredicate + protected class RelationTypePredicate_Alternatives extends AlternativesToken { + + public RelationTypePredicate_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Alternatives getGrammarElement() { + return grammarAccess.getRelationTypePredicateAccess().getAlternatives(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypePredicate_RelationTypeArtifactPredicateParserRuleCall_0(lastRuleCallOrigin, this, + 0, inst); + case 1: + return new RelationTypePredicate_RelationTypeArtifactTypePredicateParserRuleCall_1(lastRuleCallOrigin, + this, 1, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getRelationTypeArtifactPredicateRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getRelationTypeArtifactTypePredicateRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // RelationTypeArtifactPredicate + protected class RelationTypePredicate_RelationTypeArtifactPredicateParserRuleCall_0 extends RuleCallToken { + + public RelationTypePredicate_RelationTypeArtifactPredicateParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getRelationTypePredicateAccess().getRelationTypeArtifactPredicateParserRuleCall_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeArtifactPredicate_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getRelationTypeArtifactPredicateRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(RelationTypeArtifactPredicate_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); + } + } + } + + // RelationTypeArtifactTypePredicate + protected class RelationTypePredicate_RelationTypeArtifactTypePredicateParserRuleCall_1 extends RuleCallToken { + + public RelationTypePredicate_RelationTypeArtifactTypePredicateParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getRelationTypePredicateAccess().getRelationTypeArtifactTypePredicateParserRuleCall_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeArtifactTypePredicate_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getRelationTypeArtifactTypePredicateRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(RelationTypeArtifactTypePredicate_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 RelationTypePredicate ****************/ + + /************ + * begin Rule ObjectRestriction **************** ObjectRestriction: ArtifactMatchRestriction | + * ArtifactTypeRestriction | RelationTypeRestriction | AttributeTypeRestriction; + **/ + + // ArtifactMatchRestriction | ArtifactTypeRestriction | RelationTypeRestriction | AttributeTypeRestriction + protected class ObjectRestriction_Alternatives extends AlternativesToken { + + public ObjectRestriction_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Alternatives getGrammarElement() { + return grammarAccess.getObjectRestrictionAccess().getAlternatives(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ObjectRestriction_ArtifactMatchRestrictionParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); + case 1: + return new ObjectRestriction_ArtifactTypeRestrictionParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); + case 2: + return new ObjectRestriction_RelationTypeRestrictionParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); + case 3: + return new ObjectRestriction_AttributeTypeRestrictionParserRuleCall_3(lastRuleCallOrigin, this, 3, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getArtifactMatchRestrictionRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getArtifactTypeRestrictionRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getAttributeTypeRestrictionRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getRelationTypeRestrictionRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // ArtifactMatchRestriction + protected class ObjectRestriction_ArtifactMatchRestrictionParserRuleCall_0 extends RuleCallToken { + + public ObjectRestriction_ArtifactMatchRestrictionParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getObjectRestrictionAccess().getArtifactMatchRestrictionParserRuleCall_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ArtifactMatchRestriction_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getArtifactMatchRestrictionRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(ArtifactMatchRestriction_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); + } + } + } + + // ArtifactTypeRestriction + protected class ObjectRestriction_ArtifactTypeRestrictionParserRuleCall_1 extends RuleCallToken { + + public ObjectRestriction_ArtifactTypeRestrictionParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getObjectRestrictionAccess().getArtifactTypeRestrictionParserRuleCall_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ArtifactTypeRestriction_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getArtifactTypeRestrictionRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(ArtifactTypeRestriction_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); + } + } + } + + // RelationTypeRestriction + protected class ObjectRestriction_RelationTypeRestrictionParserRuleCall_2 extends RuleCallToken { + + public ObjectRestriction_RelationTypeRestrictionParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getObjectRestrictionAccess().getRelationTypeRestrictionParserRuleCall_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeRestriction_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getRelationTypeRestrictionRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(RelationTypeRestriction_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); + } + } + } + + // AttributeTypeRestriction + protected class ObjectRestriction_AttributeTypeRestrictionParserRuleCall_3 extends RuleCallToken { + + public ObjectRestriction_AttributeTypeRestrictionParserRuleCall_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public RuleCall getGrammarElement() { + return grammarAccess.getObjectRestrictionAccess().getAttributeTypeRestrictionParserRuleCall_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AttributeTypeRestriction_Group(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getAttributeTypeRestrictionRule().getType().getClassifier()) { + return null; + } + if (checkForRecursion(AttributeTypeRestriction_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 ObjectRestriction ****************/ + + /************ + * begin Rule ArtifactMatchRestriction **************** ArtifactMatchRestriction: permission=AccessPermissionEnum + * "edit" "artifact" artifactMatcherRef=[XArtifactMatcher|STRING] ";"; + **/ + + // permission=AccessPermissionEnum "edit" "artifact" artifactMatcherRef=[XArtifactMatcher|STRING] ";" + protected class ArtifactMatchRestriction_Group extends GroupToken { + + public ArtifactMatchRestriction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getArtifactMatchRestrictionAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ArtifactMatchRestriction_SemicolonKeyword_4(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getArtifactMatchRestrictionRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // permission=AccessPermissionEnum + protected class ArtifactMatchRestriction_PermissionAssignment_0 extends AssignmentToken { + + public ArtifactMatchRestriction_PermissionAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getArtifactMatchRestrictionAccess().getPermissionAssignment_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("permission", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("permission"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getArtifactMatchRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(), + value, null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = + grammarAccess.getArtifactMatchRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(); + return obj; + } + return null; + } + + } + + // "edit" + protected class ArtifactMatchRestriction_EditKeyword_1 extends KeywordToken { + + public ArtifactMatchRestriction_EditKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getArtifactMatchRestrictionAccess().getEditKeyword_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ArtifactMatchRestriction_PermissionAssignment_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "artifact" + protected class ArtifactMatchRestriction_ArtifactKeyword_2 extends KeywordToken { + + public ArtifactMatchRestriction_ArtifactKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getArtifactMatchRestrictionAccess().getArtifactKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ArtifactMatchRestriction_EditKeyword_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // artifactMatcherRef=[XArtifactMatcher|STRING] + protected class ArtifactMatchRestriction_ArtifactMatcherRefAssignment_3 extends AssignmentToken { + + public ArtifactMatchRestriction_ArtifactMatcherRefAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getArtifactMatchRestrictionAccess().getArtifactMatcherRefAssignment_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ArtifactMatchRestriction_ArtifactKeyword_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("artifactMatcherRef", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactMatcherRef"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getArtifactMatchRestrictionAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_3_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getArtifactMatchRestrictionAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_3_0(); + return obj; + } + } + return null; + } + + } + + // ";" + protected class ArtifactMatchRestriction_SemicolonKeyword_4 extends KeywordToken { + + public ArtifactMatchRestriction_SemicolonKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getArtifactMatchRestrictionAccess().getSemicolonKeyword_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ArtifactMatchRestriction_ArtifactMatcherRefAssignment_3(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + /************ end Rule ArtifactMatchRestriction ****************/ + + /************ + * begin Rule ArtifactTypeRestriction **************** ArtifactTypeRestriction: permission=AccessPermissionEnum + * "edit" "artifactType" artifactTypeRef=[XArtifactType|STRING] ";"; + **/ + + // permission=AccessPermissionEnum "edit" "artifactType" artifactTypeRef=[XArtifactType|STRING] ";" + protected class ArtifactTypeRestriction_Group extends GroupToken { + + public ArtifactTypeRestriction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getArtifactTypeRestrictionAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ArtifactTypeRestriction_SemicolonKeyword_4(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getArtifactTypeRestrictionRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // permission=AccessPermissionEnum + protected class ArtifactTypeRestriction_PermissionAssignment_0 extends AssignmentToken { + + public ArtifactTypeRestriction_PermissionAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getArtifactTypeRestrictionAccess().getPermissionAssignment_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("permission", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("permission"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getArtifactTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(), value, + null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = + grammarAccess.getArtifactTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(); + return obj; + } + return null; + } + + } + + // "edit" + protected class ArtifactTypeRestriction_EditKeyword_1 extends KeywordToken { + + public ArtifactTypeRestriction_EditKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getArtifactTypeRestrictionAccess().getEditKeyword_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ArtifactTypeRestriction_PermissionAssignment_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "artifactType" + protected class ArtifactTypeRestriction_ArtifactTypeKeyword_2 extends KeywordToken { + + public ArtifactTypeRestriction_ArtifactTypeKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getArtifactTypeRestrictionAccess().getArtifactTypeKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ArtifactTypeRestriction_EditKeyword_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // artifactTypeRef=[XArtifactType|STRING] + protected class ArtifactTypeRestriction_ArtifactTypeRefAssignment_3 extends AssignmentToken { + + public ArtifactTypeRestriction_ArtifactTypeRefAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getArtifactTypeRestrictionAccess().getArtifactTypeRefAssignment_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ArtifactTypeRestriction_ArtifactTypeKeyword_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("artifactTypeRef", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactTypeRef"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getArtifactTypeRestrictionAccess().getArtifactTypeRefXArtifactTypeCrossReference_3_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getArtifactTypeRestrictionAccess().getArtifactTypeRefXArtifactTypeCrossReference_3_0(); + return obj; + } + } + return null; + } + + } + + // ";" + protected class ArtifactTypeRestriction_SemicolonKeyword_4 extends KeywordToken { + + public ArtifactTypeRestriction_SemicolonKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getArtifactTypeRestrictionAccess().getSemicolonKeyword_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new ArtifactTypeRestriction_ArtifactTypeRefAssignment_3(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + /************ end Rule ArtifactTypeRestriction ****************/ + + /************ + * begin Rule AttributeTypeRestriction **************** AttributeTypeRestriction: permission=AccessPermissionEnum + * "edit" "attributeType" attributeTypeRef=[XAttributeType|STRING] ("of" "artifactType" + * artifactTypeRef=[XArtifactType|STRING])? ";"; + **/ + + // permission=AccessPermissionEnum "edit" "attributeType" attributeTypeRef=[XAttributeType|STRING] ("of" "artifactType" + // artifactTypeRef=[XArtifactType|STRING])? ";" + protected class AttributeTypeRestriction_Group extends GroupToken { + + public AttributeTypeRestriction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getAttributeTypeRestrictionAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AttributeTypeRestriction_SemicolonKeyword_5(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getAttributeTypeRestrictionRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // permission=AccessPermissionEnum + protected class AttributeTypeRestriction_PermissionAssignment_0 extends AssignmentToken { + + public AttributeTypeRestriction_PermissionAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAttributeTypeRestrictionAccess().getPermissionAssignment_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("permission", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("permission"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getAttributeTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(), + value, null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = + grammarAccess.getAttributeTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(); + return obj; + } + return null; + } + + } + + // "edit" + protected class AttributeTypeRestriction_EditKeyword_1 extends KeywordToken { + + public AttributeTypeRestriction_EditKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAttributeTypeRestrictionAccess().getEditKeyword_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AttributeTypeRestriction_PermissionAssignment_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "attributeType" + protected class AttributeTypeRestriction_AttributeTypeKeyword_2 extends KeywordToken { + + public AttributeTypeRestriction_AttributeTypeKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAttributeTypeRestrictionAccess().getAttributeTypeKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AttributeTypeRestriction_EditKeyword_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // attributeTypeRef=[XAttributeType|STRING] + protected class AttributeTypeRestriction_AttributeTypeRefAssignment_3 extends AssignmentToken { + + public AttributeTypeRestriction_AttributeTypeRefAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAttributeTypeRestrictionAccess().getAttributeTypeRefAssignment_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AttributeTypeRestriction_AttributeTypeKeyword_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("attributeTypeRef", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("attributeTypeRef"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getAttributeTypeRestrictionAccess().getAttributeTypeRefXAttributeTypeCrossReference_3_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getAttributeTypeRestrictionAccess().getAttributeTypeRefXAttributeTypeCrossReference_3_0(); + return obj; + } + } + return null; + } + + } + + // ("of" "artifactType" artifactTypeRef=[XArtifactType|STRING])? + protected class AttributeTypeRestriction_Group_4 extends GroupToken { + + public AttributeTypeRestriction_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getAttributeTypeRestrictionAccess().getGroup_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AttributeTypeRestriction_ArtifactTypeRefAssignment_4_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "of" + protected class AttributeTypeRestriction_OfKeyword_4_0 extends KeywordToken { + + public AttributeTypeRestriction_OfKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAttributeTypeRestrictionAccess().getOfKeyword_4_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AttributeTypeRestriction_AttributeTypeRefAssignment_3(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "artifactType" + protected class AttributeTypeRestriction_ArtifactTypeKeyword_4_1 extends KeywordToken { + + public AttributeTypeRestriction_ArtifactTypeKeyword_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAttributeTypeRestrictionAccess().getArtifactTypeKeyword_4_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AttributeTypeRestriction_OfKeyword_4_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // artifactTypeRef=[XArtifactType|STRING] + protected class AttributeTypeRestriction_ArtifactTypeRefAssignment_4_2 extends AssignmentToken { + + public AttributeTypeRestriction_ArtifactTypeRefAssignment_4_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getAttributeTypeRestrictionAccess().getArtifactTypeRefAssignment_4_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AttributeTypeRestriction_ArtifactTypeKeyword_4_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("artifactTypeRef", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactTypeRef"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getAttributeTypeRestrictionAccess().getArtifactTypeRefXArtifactTypeCrossReference_4_2_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getAttributeTypeRestrictionAccess().getArtifactTypeRefXArtifactTypeCrossReference_4_2_0(); + return obj; + } + } + return null; + } + + } + + // ";" + protected class AttributeTypeRestriction_SemicolonKeyword_5 extends KeywordToken { + + public AttributeTypeRestriction_SemicolonKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getAttributeTypeRestrictionAccess().getSemicolonKeyword_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new AttributeTypeRestriction_Group_4(lastRuleCallOrigin, this, 0, inst); + case 1: + return new AttributeTypeRestriction_AttributeTypeRefAssignment_3(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + /************ end Rule AttributeTypeRestriction ****************/ + + /************ + * begin Rule LegacyRelationTypeRestriction **************** LegacyRelationTypeRestriction: + * permission=AccessPermissionEnum "edit" "relationType" relationTypeRef=[XRelationType|STRING] + * restrictedToSide=XRelationSideEnum ("artifact" artifactMatcherRef=[XArtifactMatcher|STRING])? ";"; + **/ + + // permission=AccessPermissionEnum "edit" "relationType" relationTypeRef=[XRelationType|STRING] + // restrictedToSide=XRelationSideEnum ("artifact" artifactMatcherRef=[XArtifactMatcher|STRING])? ";" + protected class LegacyRelationTypeRestriction_Group extends GroupToken { + + public LegacyRelationTypeRestriction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getLegacyRelationTypeRestrictionAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new LegacyRelationTypeRestriction_SemicolonKeyword_6(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getLegacyRelationTypeRestrictionRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // permission=AccessPermissionEnum + protected class LegacyRelationTypeRestriction_PermissionAssignment_0 extends AssignmentToken { + + public LegacyRelationTypeRestriction_PermissionAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getLegacyRelationTypeRestrictionAccess().getPermissionAssignment_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("permission", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("permission"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getLegacyRelationTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(), + value, null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = + grammarAccess.getLegacyRelationTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(); + return obj; + } + return null; + } + + } + + // "edit" + protected class LegacyRelationTypeRestriction_EditKeyword_1 extends KeywordToken { + + public LegacyRelationTypeRestriction_EditKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getLegacyRelationTypeRestrictionAccess().getEditKeyword_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new LegacyRelationTypeRestriction_PermissionAssignment_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "relationType" + protected class LegacyRelationTypeRestriction_RelationTypeKeyword_2 extends KeywordToken { + + public LegacyRelationTypeRestriction_RelationTypeKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getLegacyRelationTypeRestrictionAccess().getRelationTypeKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new LegacyRelationTypeRestriction_EditKeyword_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // relationTypeRef=[XRelationType|STRING] + protected class LegacyRelationTypeRestriction_RelationTypeRefAssignment_3 extends AssignmentToken { + + public LegacyRelationTypeRestriction_RelationTypeRefAssignment_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getLegacyRelationTypeRestrictionAccess().getRelationTypeRefAssignment_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new LegacyRelationTypeRestriction_RelationTypeKeyword_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("relationTypeRef", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationTypeRef"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getLegacyRelationTypeRestrictionAccess().getRelationTypeRefXRelationTypeCrossReference_3_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getLegacyRelationTypeRestrictionAccess().getRelationTypeRefXRelationTypeCrossReference_3_0(); + return obj; + } + } + return null; + } + + } + + // restrictedToSide=XRelationSideEnum + protected class LegacyRelationTypeRestriction_RestrictedToSideAssignment_4 extends AssignmentToken { + + public LegacyRelationTypeRestriction_RestrictedToSideAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getLegacyRelationTypeRestrictionAccess().getRestrictedToSideAssignment_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new LegacyRelationTypeRestriction_RelationTypeRefAssignment_3(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("restrictedToSide", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("restrictedToSide"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getLegacyRelationTypeRestrictionAccess().getRestrictedToSideXRelationSideEnumEnumRuleCall_4_0(), + value, null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = + grammarAccess.getLegacyRelationTypeRestrictionAccess().getRestrictedToSideXRelationSideEnumEnumRuleCall_4_0(); + return obj; + } + return null; + } + + } + + // ("artifact" artifactMatcherRef=[XArtifactMatcher|STRING])? + protected class LegacyRelationTypeRestriction_Group_5 extends GroupToken { + + public LegacyRelationTypeRestriction_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getLegacyRelationTypeRestrictionAccess().getGroup_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new LegacyRelationTypeRestriction_ArtifactMatcherRefAssignment_5_1(lastRuleCallOrigin, this, 0, + inst); + default: + return null; + } + } + + } + + // "artifact" + protected class LegacyRelationTypeRestriction_ArtifactKeyword_5_0 extends KeywordToken { + + public LegacyRelationTypeRestriction_ArtifactKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getLegacyRelationTypeRestrictionAccess().getArtifactKeyword_5_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new LegacyRelationTypeRestriction_RestrictedToSideAssignment_4(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // artifactMatcherRef=[XArtifactMatcher|STRING] + protected class LegacyRelationTypeRestriction_ArtifactMatcherRefAssignment_5_1 extends AssignmentToken { + + public LegacyRelationTypeRestriction_ArtifactMatcherRefAssignment_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getLegacyRelationTypeRestrictionAccess().getArtifactMatcherRefAssignment_5_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new LegacyRelationTypeRestriction_ArtifactKeyword_5_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("artifactMatcherRef", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("artifactMatcherRef"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getLegacyRelationTypeRestrictionAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_5_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getLegacyRelationTypeRestrictionAccess().getArtifactMatcherRefXArtifactMatcherCrossReference_5_1_0(); + return obj; + } + } + return null; + } + + } + + // ";" + protected class LegacyRelationTypeRestriction_SemicolonKeyword_6 extends KeywordToken { + + public LegacyRelationTypeRestriction_SemicolonKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getLegacyRelationTypeRestrictionAccess().getSemicolonKeyword_6(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new LegacyRelationTypeRestriction_Group_5(lastRuleCallOrigin, this, 0, inst); + case 1: + return new LegacyRelationTypeRestriction_RestrictedToSideAssignment_4(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + /************ end Rule LegacyRelationTypeRestriction ****************/ + + /************ + * begin Rule RelationTypeRestriction **************** RelationTypeRestriction: permission=AccessPermissionEnum + * "edit" "relationType" (relationTypeMatch?=RelationTypeMatch | relationTypeRef=[XRelationType|STRING]) + * restrictedToSide=XRelationSideEnum predicate=RelationTypePredicate? ";"; + **/ + + // permission=AccessPermissionEnum "edit" "relationType" (relationTypeMatch?=RelationTypeMatch | + // relationTypeRef=[XRelationType|STRING]) restrictedToSide=XRelationSideEnum predicate=RelationTypePredicate? ";" + protected class RelationTypeRestriction_Group extends GroupToken { + + public RelationTypeRestriction_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Group getGrammarElement() { + return grammarAccess.getRelationTypeRestrictionAccess().getGroup(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeRestriction_SemicolonKeyword_6(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if (getEObject().eClass() != grammarAccess.getRelationTypeRestrictionRule().getType().getClassifier()) { + return null; + } + return eObjectConsumer; + } + + } + + // permission=AccessPermissionEnum + protected class RelationTypeRestriction_PermissionAssignment_0 extends AssignmentToken { + + public RelationTypeRestriction_PermissionAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRelationTypeRestrictionAccess().getPermissionAssignment_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("permission", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("permission"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getRelationTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(), value, + null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = + grammarAccess.getRelationTypeRestrictionAccess().getPermissionAccessPermissionEnumEnumRuleCall_0_0(); + return obj; + } + return null; + } + + } + + // "edit" + protected class RelationTypeRestriction_EditKeyword_1 extends KeywordToken { + + public RelationTypeRestriction_EditKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getRelationTypeRestrictionAccess().getEditKeyword_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeRestriction_PermissionAssignment_0(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // "relationType" + protected class RelationTypeRestriction_RelationTypeKeyword_2 extends KeywordToken { + + public RelationTypeRestriction_RelationTypeKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeKeyword_2(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeRestriction_EditKeyword_1(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + } + + // relationTypeMatch?=RelationTypeMatch | relationTypeRef=[XRelationType|STRING] + protected class RelationTypeRestriction_Alternatives_3 extends AlternativesToken { + + public RelationTypeRestriction_Alternatives_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Alternatives getGrammarElement() { + return grammarAccess.getRelationTypeRestrictionAccess().getAlternatives_3(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeRestriction_RelationTypeMatchAssignment_3_0(lastRuleCallOrigin, this, 0, inst); + case 1: + return new RelationTypeRestriction_RelationTypeRefAssignment_3_1(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + // relationTypeMatch?=RelationTypeMatch + protected class RelationTypeRestriction_RelationTypeMatchAssignment_3_0 extends AssignmentToken { + + public RelationTypeRestriction_RelationTypeMatchAssignment_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeMatchAssignment_3_0(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeRestriction_RelationTypeKeyword_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("relationTypeMatch", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationTypeMatch"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeMatchRelationTypeMatchEnumRuleCall_3_0_0(), + value, null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = + grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeMatchRelationTypeMatchEnumRuleCall_3_0_0(); + return obj; + } + return null; + } + + } + + // relationTypeRef=[XRelationType|STRING] + protected class RelationTypeRestriction_RelationTypeRefAssignment_3_1 extends AssignmentToken { + + public RelationTypeRestriction_RelationTypeRefAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeRefAssignment_3_1(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeRestriction_RelationTypeKeyword_2(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("relationTypeRef", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("relationTypeRef"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf( + grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeRefXRelationTypeCrossReference_3_1_0().getType().getClassifier())) { + type = AssignmentType.CROSS_REFERENCE; + element = + grammarAccess.getRelationTypeRestrictionAccess().getRelationTypeRefXRelationTypeCrossReference_3_1_0(); + return obj; + } + } + return null; + } + + } + + // restrictedToSide=XRelationSideEnum + protected class RelationTypeRestriction_RestrictedToSideAssignment_4 extends AssignmentToken { + + public RelationTypeRestriction_RestrictedToSideAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRelationTypeRestrictionAccess().getRestrictedToSideAssignment_4(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeRestriction_Alternatives_3(lastRuleCallOrigin, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("restrictedToSide", true)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("restrictedToSide"); + if (enumLitSerializer.isValid(obj.getEObject(), + grammarAccess.getRelationTypeRestrictionAccess().getRestrictedToSideXRelationSideEnumEnumRuleCall_4_0(), + value, null)) { + type = AssignmentType.ENUM_RULE_CALL; + element = + grammarAccess.getRelationTypeRestrictionAccess().getRestrictedToSideXRelationSideEnumEnumRuleCall_4_0(); + return obj; + } + return null; + } + + } + + // predicate=RelationTypePredicate? + protected class RelationTypeRestriction_PredicateAssignment_5 extends AssignmentToken { + + public RelationTypeRestriction_PredicateAssignment_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Assignment getGrammarElement() { + return grammarAccess.getRelationTypeRestrictionAccess().getPredicateAssignment_5(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypePredicate_Alternatives(this, this, 0, inst); + default: + return null; + } + } + + @Override + public IEObjectConsumer tryConsume() { + if ((value = eObjectConsumer.getConsumable("predicate", false)) == null) { + return null; + } + IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("predicate"); + if (value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl + IEObjectConsumer param = createEObjectConsumer((EObject) value); + if (param.isInstanceOf(grammarAccess.getRelationTypePredicateRule().getType().getClassifier())) { + type = AssignmentType.PARSER_RULE_CALL; + element = + grammarAccess.getRelationTypeRestrictionAccess().getPredicateRelationTypePredicateParserRuleCall_5_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 RelationTypeRestriction_RestrictedToSideAssignment_4(lastRuleCallOrigin, next, actIndex, + consumed); + default: + return null; + } + } + } + + // ";" + protected class RelationTypeRestriction_SemicolonKeyword_6 extends KeywordToken { + + public RelationTypeRestriction_SemicolonKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { + super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); + } + + @Override + public Keyword getGrammarElement() { + return grammarAccess.getRelationTypeRestrictionAccess().getSemicolonKeyword_6(); + } + + @Override + public AbstractToken createFollower(int index, IEObjectConsumer inst) { + switch (index) { + case 0: + return new RelationTypeRestriction_PredicateAssignment_5(lastRuleCallOrigin, this, 0, inst); + case 1: + return new RelationTypeRestriction_RestrictedToSideAssignment_4(lastRuleCallOrigin, this, 1, inst); + default: + return null; + } + } + + } + + /************ end Rule RelationTypeRestriction ****************/ } |