/* * generated by Xtext */ package fr.istic.m2.idm.xtext.parseTreeConstruction; import org.eclipse.emf.ecore.*; import org.eclipse.xtext.*; import org.eclipse.xtext.parsetree.reconstr.IEObjectConsumer; import org.eclipse.xtext.parsetree.reconstr.impl.AbstractParseTreeConstructor; import fr.istic.m2.idm.xtext.services.TopanlGrammarAccess; import com.google.inject.Inject; @SuppressWarnings("all") public class TopanlParsetreeConstructor extends AbstractParseTreeConstructor { @Inject private TopanlGrammarAccess 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 Geometry_Group(this, this, 0, inst); case 1: return new Dimension_Group(this, this, 1, inst); case 2: return new Neighbor_Group(this, this, 2, inst); default: return null; } } } /************ begin Rule Geometry **************** * * Geometry: * * "Geometry" "{" ("nDim" "=" nDim=Integer)? ("isCircular" "=" isCircular=Bool)? "dimensions" "=" "(" * * dimensions+=[Dimension] ("," dimensions+=[Dimension])* ")" ("neighbors" "=" "(" neighbors+=[Neighbor] ("," * * neighbors+=[Neighbor])* ")")? "}"; * **/ // "Geometry" "{" ("nDim" "=" nDim=Integer)? ("isCircular" "=" isCircular=Bool)? "dimensions" "=" "(" // // dimensions+=[Dimension] ("," dimensions+=[Dimension])* ")" ("neighbors" "=" "(" neighbors+=[Neighbor] ("," // // neighbors+=[Neighbor])* ")")? "}" protected class Geometry_Group extends GroupToken { public Geometry_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getGeometryAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_RightCurlyBracketKeyword_11(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getGeometryRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "Geometry" protected class Geometry_GeometryKeyword_0 extends KeywordToken { public Geometry_GeometryKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getGeometryKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // "{" protected class Geometry_LeftCurlyBracketKeyword_1 extends KeywordToken { public Geometry_LeftCurlyBracketKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getLeftCurlyBracketKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_GeometryKeyword_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // ("nDim" "=" nDim=Integer)? protected class Geometry_Group_2 extends GroupToken { public Geometry_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getGeometryAccess().getGroup_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_NDimAssignment_2_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "nDim" protected class Geometry_NDimKeyword_2_0 extends KeywordToken { public Geometry_NDimKeyword_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getNDimKeyword_2_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_LeftCurlyBracketKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "=" protected class Geometry_EqualsSignKeyword_2_1 extends KeywordToken { public Geometry_EqualsSignKeyword_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getEqualsSignKeyword_2_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_NDimKeyword_2_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // nDim=Integer protected class Geometry_NDimAssignment_2_2 extends AssignmentToken { public Geometry_NDimAssignment_2_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getGeometryAccess().getNDimAssignment_2_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_EqualsSignKeyword_2_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("nDim",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("nDim"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getGeometryAccess().getNDimIntegerParserRuleCall_2_2_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getGeometryAccess().getNDimIntegerParserRuleCall_2_2_0(); return obj; } return null; } } // ("isCircular" "=" isCircular=Bool)? protected class Geometry_Group_3 extends GroupToken { public Geometry_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getGeometryAccess().getGroup_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_IsCircularAssignment_3_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "isCircular" protected class Geometry_IsCircularKeyword_3_0 extends KeywordToken { public Geometry_IsCircularKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getIsCircularKeyword_3_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_Group_2(lastRuleCallOrigin, this, 0, inst); case 1: return new Geometry_LeftCurlyBracketKeyword_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // "=" protected class Geometry_EqualsSignKeyword_3_1 extends KeywordToken { public Geometry_EqualsSignKeyword_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getEqualsSignKeyword_3_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_IsCircularKeyword_3_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // isCircular=Bool protected class Geometry_IsCircularAssignment_3_2 extends AssignmentToken { public Geometry_IsCircularAssignment_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getGeometryAccess().getIsCircularAssignment_3_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_EqualsSignKeyword_3_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("isCircular",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("isCircular"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getGeometryAccess().getIsCircularBoolParserRuleCall_3_2_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getGeometryAccess().getIsCircularBoolParserRuleCall_3_2_0(); return obj; } return null; } } // "dimensions" protected class Geometry_DimensionsKeyword_4 extends KeywordToken { public Geometry_DimensionsKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getDimensionsKeyword_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_Group_3(lastRuleCallOrigin, this, 0, inst); case 1: return new Geometry_Group_2(lastRuleCallOrigin, this, 1, inst); case 2: return new Geometry_LeftCurlyBracketKeyword_1(lastRuleCallOrigin, this, 2, inst); default: return null; } } } // "=" protected class Geometry_EqualsSignKeyword_5 extends KeywordToken { public Geometry_EqualsSignKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getEqualsSignKeyword_5(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_DimensionsKeyword_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "(" protected class Geometry_LeftParenthesisKeyword_6 extends KeywordToken { public Geometry_LeftParenthesisKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getLeftParenthesisKeyword_6(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_EqualsSignKeyword_5(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // dimensions+=[Dimension] protected class Geometry_DimensionsAssignment_7 extends AssignmentToken { public Geometry_DimensionsAssignment_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getGeometryAccess().getDimensionsAssignment_7(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_LeftParenthesisKeyword_6(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("dimensions",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("dimensions"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getGeometryAccess().getDimensionsDimensionCrossReference_7_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getGeometryAccess().getDimensionsDimensionCrossReference_7_0(); return obj; } } return null; } } // ("," dimensions+=[Dimension])* protected class Geometry_Group_8 extends GroupToken { public Geometry_Group_8(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getGeometryAccess().getGroup_8(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_DimensionsAssignment_8_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "," protected class Geometry_CommaKeyword_8_0 extends KeywordToken { public Geometry_CommaKeyword_8_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getCommaKeyword_8_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_Group_8(lastRuleCallOrigin, this, 0, inst); case 1: return new Geometry_DimensionsAssignment_7(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // dimensions+=[Dimension] protected class Geometry_DimensionsAssignment_8_1 extends AssignmentToken { public Geometry_DimensionsAssignment_8_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getGeometryAccess().getDimensionsAssignment_8_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_CommaKeyword_8_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("dimensions",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("dimensions"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getGeometryAccess().getDimensionsDimensionCrossReference_8_1_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getGeometryAccess().getDimensionsDimensionCrossReference_8_1_0(); return obj; } } return null; } } // ")" protected class Geometry_RightParenthesisKeyword_9 extends KeywordToken { public Geometry_RightParenthesisKeyword_9(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getRightParenthesisKeyword_9(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_Group_8(lastRuleCallOrigin, this, 0, inst); case 1: return new Geometry_DimensionsAssignment_7(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // ("neighbors" "=" "(" neighbors+=[Neighbor] ("," neighbors+=[Neighbor])* ")")? protected class Geometry_Group_10 extends GroupToken { public Geometry_Group_10(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getGeometryAccess().getGroup_10(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_RightParenthesisKeyword_10_5(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "neighbors" protected class Geometry_NeighborsKeyword_10_0 extends KeywordToken { public Geometry_NeighborsKeyword_10_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getNeighborsKeyword_10_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_RightParenthesisKeyword_9(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "=" protected class Geometry_EqualsSignKeyword_10_1 extends KeywordToken { public Geometry_EqualsSignKeyword_10_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getEqualsSignKeyword_10_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_NeighborsKeyword_10_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "(" protected class Geometry_LeftParenthesisKeyword_10_2 extends KeywordToken { public Geometry_LeftParenthesisKeyword_10_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getLeftParenthesisKeyword_10_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_EqualsSignKeyword_10_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // neighbors+=[Neighbor] protected class Geometry_NeighborsAssignment_10_3 extends AssignmentToken { public Geometry_NeighborsAssignment_10_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getGeometryAccess().getNeighborsAssignment_10_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_LeftParenthesisKeyword_10_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("neighbors",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("neighbors"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getGeometryAccess().getNeighborsNeighborCrossReference_10_3_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getGeometryAccess().getNeighborsNeighborCrossReference_10_3_0(); return obj; } } return null; } } // ("," neighbors+=[Neighbor])* protected class Geometry_Group_10_4 extends GroupToken { public Geometry_Group_10_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getGeometryAccess().getGroup_10_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_NeighborsAssignment_10_4_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "," protected class Geometry_CommaKeyword_10_4_0 extends KeywordToken { public Geometry_CommaKeyword_10_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getCommaKeyword_10_4_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_Group_10_4(lastRuleCallOrigin, this, 0, inst); case 1: return new Geometry_NeighborsAssignment_10_3(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // neighbors+=[Neighbor] protected class Geometry_NeighborsAssignment_10_4_1 extends AssignmentToken { public Geometry_NeighborsAssignment_10_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getGeometryAccess().getNeighborsAssignment_10_4_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_CommaKeyword_10_4_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("neighbors",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("neighbors"); if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getGeometryAccess().getNeighborsNeighborCrossReference_10_4_1_0().getType().getClassifier())) { type = AssignmentType.CROSS_REFERENCE; element = grammarAccess.getGeometryAccess().getNeighborsNeighborCrossReference_10_4_1_0(); return obj; } } return null; } } // ")" protected class Geometry_RightParenthesisKeyword_10_5 extends KeywordToken { public Geometry_RightParenthesisKeyword_10_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getRightParenthesisKeyword_10_5(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_Group_10_4(lastRuleCallOrigin, this, 0, inst); case 1: return new Geometry_NeighborsAssignment_10_3(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // "}" protected class Geometry_RightCurlyBracketKeyword_11 extends KeywordToken { public Geometry_RightCurlyBracketKeyword_11(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getGeometryAccess().getRightCurlyBracketKeyword_11(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Geometry_Group_10(lastRuleCallOrigin, this, 0, inst); case 1: return new Geometry_RightParenthesisKeyword_9(lastRuleCallOrigin, this, 1, inst); default: return null; } } } /************ end Rule Geometry ****************/ /************ begin Rule Dimension **************** * * Dimension: * * {Dimension} "Dimension" "{" ("size" "=" size=Integer)? "}"; * **/ // {Dimension} "Dimension" "{" ("size" "=" size=Integer)? "}" protected class Dimension_Group extends GroupToken { public Dimension_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getDimensionAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Dimension_RightCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getDimensionAccess().getDimensionAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {Dimension} protected class Dimension_DimensionAction_0 extends ActionToken { public Dimension_DimensionAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getDimensionAccess().getDimensionAction_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(!eObjectConsumer.isConsumed()) return null; return eObjectConsumer; } } // "Dimension" protected class Dimension_DimensionKeyword_1 extends KeywordToken { public Dimension_DimensionKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getDimensionAccess().getDimensionKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Dimension_DimensionAction_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class Dimension_LeftCurlyBracketKeyword_2 extends KeywordToken { public Dimension_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getDimensionAccess().getLeftCurlyBracketKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Dimension_DimensionKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // ("size" "=" size=Integer)? protected class Dimension_Group_3 extends GroupToken { public Dimension_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getDimensionAccess().getGroup_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Dimension_SizeAssignment_3_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "size" protected class Dimension_SizeKeyword_3_0 extends KeywordToken { public Dimension_SizeKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getDimensionAccess().getSizeKeyword_3_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Dimension_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "=" protected class Dimension_EqualsSignKeyword_3_1 extends KeywordToken { public Dimension_EqualsSignKeyword_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getDimensionAccess().getEqualsSignKeyword_3_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Dimension_SizeKeyword_3_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // size=Integer protected class Dimension_SizeAssignment_3_2 extends AssignmentToken { public Dimension_SizeAssignment_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getDimensionAccess().getSizeAssignment_3_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Dimension_EqualsSignKeyword_3_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("size",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("size"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getDimensionAccess().getSizeIntegerParserRuleCall_3_2_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getDimensionAccess().getSizeIntegerParserRuleCall_3_2_0(); return obj; } return null; } } // "}" protected class Dimension_RightCurlyBracketKeyword_4 extends KeywordToken { public Dimension_RightCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getDimensionAccess().getRightCurlyBracketKeyword_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Dimension_Group_3(lastRuleCallOrigin, this, 0, inst); case 1: return new Dimension_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst); default: return null; } } } /************ end Rule Dimension ****************/ /************ begin Rule Neighbor **************** * * Neighbor: * * {Neighbor} "Neighbor" "{" ("coord" "=" "{" coord+=Integer ("," coord+=Integer)* "}")? "}"; * **/ // {Neighbor} "Neighbor" "{" ("coord" "=" "{" coord+=Integer ("," coord+=Integer)* "}")? "}" protected class Neighbor_Group extends GroupToken { public Neighbor_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getNeighborAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_RightCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getNeighborAccess().getNeighborAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {Neighbor} protected class Neighbor_NeighborAction_0 extends ActionToken { public Neighbor_NeighborAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getNeighborAccess().getNeighborAction_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(!eObjectConsumer.isConsumed()) return null; return eObjectConsumer; } } // "Neighbor" protected class Neighbor_NeighborKeyword_1 extends KeywordToken { public Neighbor_NeighborKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getNeighborAccess().getNeighborKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_NeighborAction_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class Neighbor_LeftCurlyBracketKeyword_2 extends KeywordToken { public Neighbor_LeftCurlyBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getNeighborAccess().getLeftCurlyBracketKeyword_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_NeighborKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // ("coord" "=" "{" coord+=Integer ("," coord+=Integer)* "}")? protected class Neighbor_Group_3 extends GroupToken { public Neighbor_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getNeighborAccess().getGroup_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_RightCurlyBracketKeyword_3_5(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "coord" protected class Neighbor_CoordKeyword_3_0 extends KeywordToken { public Neighbor_CoordKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getNeighborAccess().getCoordKeyword_3_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "=" protected class Neighbor_EqualsSignKeyword_3_1 extends KeywordToken { public Neighbor_EqualsSignKeyword_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getNeighborAccess().getEqualsSignKeyword_3_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_CoordKeyword_3_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "{" protected class Neighbor_LeftCurlyBracketKeyword_3_2 extends KeywordToken { public Neighbor_LeftCurlyBracketKeyword_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getNeighborAccess().getLeftCurlyBracketKeyword_3_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_EqualsSignKeyword_3_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // coord+=Integer protected class Neighbor_CoordAssignment_3_3 extends AssignmentToken { public Neighbor_CoordAssignment_3_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getNeighborAccess().getCoordAssignment_3_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_LeftCurlyBracketKeyword_3_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("coord",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("coord"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getNeighborAccess().getCoordIntegerParserRuleCall_3_3_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getNeighborAccess().getCoordIntegerParserRuleCall_3_3_0(); return obj; } return null; } } // ("," coord+=Integer)* protected class Neighbor_Group_3_4 extends GroupToken { public Neighbor_Group_3_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getNeighborAccess().getGroup_3_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_CoordAssignment_3_4_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "," protected class Neighbor_CommaKeyword_3_4_0 extends KeywordToken { public Neighbor_CommaKeyword_3_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getNeighborAccess().getCommaKeyword_3_4_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_Group_3_4(lastRuleCallOrigin, this, 0, inst); case 1: return new Neighbor_CoordAssignment_3_3(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // coord+=Integer protected class Neighbor_CoordAssignment_3_4_1 extends AssignmentToken { public Neighbor_CoordAssignment_3_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getNeighborAccess().getCoordAssignment_3_4_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_CommaKeyword_3_4_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("coord",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("coord"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getNeighborAccess().getCoordIntegerParserRuleCall_3_4_1_0(), value, null)) { type = AssignmentType.DATATYPE_RULE_CALL; element = grammarAccess.getNeighborAccess().getCoordIntegerParserRuleCall_3_4_1_0(); return obj; } return null; } } // "}" protected class Neighbor_RightCurlyBracketKeyword_3_5 extends KeywordToken { public Neighbor_RightCurlyBracketKeyword_3_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getNeighborAccess().getRightCurlyBracketKeyword_3_5(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_Group_3_4(lastRuleCallOrigin, this, 0, inst); case 1: return new Neighbor_CoordAssignment_3_3(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // "}" protected class Neighbor_RightCurlyBracketKeyword_4 extends KeywordToken { public Neighbor_RightCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getNeighborAccess().getRightCurlyBracketKeyword_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Neighbor_Group_3(lastRuleCallOrigin, this, 0, inst); case 1: return new Neighbor_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst); default: return null; } } } /************ end Rule Neighbor ****************/ }