/* * generated by Xtext */ package de.sebastianbenz.task.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 de.sebastianbenz.task.services.QueryGrammarAccess; import com.google.inject.Inject; @SuppressWarnings("all") public class QueryParsetreeConstructor extends AbstractParseTreeConstructor { @Inject private QueryGrammarAccess 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 Query_Group(this, this, 0, inst); case 1: return new OrExpr_Group(this, this, 1, inst); case 2: return new AndExpr_Group(this, this, 2, inst); case 3: return new CompEqExpr_Group(this, this, 3, inst); case 4: return new CompExpr_Group(this, this, 4, inst); case 5: return new UnaryExpr_Alternatives(this, this, 5, inst); case 6: return new Atom_Alternatives(this, this, 6, inst); case 7: return new Value_Alternatives(this, this, 7, inst); case 8: return new ParenExpr_Group(this, this, 8, inst); case 9: return new ProjectReference_Group(this, this, 9, inst); case 10: return new TaskReference_Group(this, this, 10, inst); case 11: return new TextReference_Group(this, this, 11, inst); case 12: return new Words_Group(this, this, 12, inst); case 13: return new Word_ValueAssignment(this, this, 13, inst); case 14: return new Phrase_ValueAssignment(this, this, 14, inst); case 15: return new TagReference_Group(this, this, 15, inst); default: return null; } } } /************ begin Rule Query **************** * * Query: * {Query} expression=OrExpr?; * **/ // {Query} expression=OrExpr? protected class Query_Group extends GroupToken { public Query_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getQueryAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Query_ExpressionAssignment_1(lastRuleCallOrigin, this, 0, inst); case 1: return new Query_QueryAction_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getQueryAccess().getQueryAction_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {Query} protected class Query_QueryAction_0 extends ActionToken { public Query_QueryAction_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getQueryAccess().getQueryAction_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; } } // expression=OrExpr? protected class Query_ExpressionAssignment_1 extends AssignmentToken { public Query_ExpressionAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getQueryAccess().getExpressionAssignment_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new OrExpr_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("expression",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("expression"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getOrExprRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getQueryAccess().getExpressionOrExprParserRuleCall_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 Query_QueryAction_0(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } /************ end Rule Query ****************/ /************ begin Rule OrExpr **************** * * OrExpr returns Expression: * AndExpr ({OrExpr.left=current} ("or" | "||") right=AndExpr)*; * **/ // AndExpr ({OrExpr.left=current} ("or" | "||") right=AndExpr)* protected class OrExpr_Group extends GroupToken { public OrExpr_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getOrExprAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new OrExpr_Group_1(lastRuleCallOrigin, this, 0, inst); case 1: return new OrExpr_AndExprParserRuleCall_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getAndExprAccess().getAndExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getCompEqExprAccess().getCompEqExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getCompExprAccess().getCompExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getOrExprAccess().getOrExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier() && getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUnaryExprAccess().getUnaryExprAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; return eObjectConsumer; } } // AndExpr protected class OrExpr_AndExprParserRuleCall_0 extends RuleCallToken { public OrExpr_AndExprParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getOrExprAccess().getAndExprParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AndExpr_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getAndExprAccess().getAndExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getCompEqExprAccess().getCompEqExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getCompExprAccess().getCompExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier() && getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUnaryExprAccess().getUnaryExprAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; if(checkForRecursion(AndExpr_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); } } } // ({OrExpr.left=current} ("or" | "||") right=AndExpr)* protected class OrExpr_Group_1 extends GroupToken { public OrExpr_Group_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getOrExprAccess().getGroup_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new OrExpr_RightAssignment_1_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getOrExprAccess().getOrExprLeftAction_1_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {OrExpr.left=current} protected class OrExpr_OrExprLeftAction_1_0 extends ActionToken { public OrExpr_OrExprLeftAction_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getOrExprAccess().getOrExprLeftAction_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new OrExpr_Group_1(lastRuleCallOrigin, this, 0, inst); case 1: return new OrExpr_AndExprParserRuleCall_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { Object val = eObjectConsumer.getConsumable("left", false); if(val == null) return null; if(!eObjectConsumer.isConsumedWithLastConsumtion("left")) return null; return createEObjectConsumer((EObject) val); } } // "or" | "||" protected class OrExpr_Alternatives_1_1 extends AlternativesToken { public OrExpr_Alternatives_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getOrExprAccess().getAlternatives_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new OrExpr_OrKeyword_1_1_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "or" protected class OrExpr_OrKeyword_1_1_0 extends KeywordToken { public OrExpr_OrKeyword_1_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getOrExprAccess().getOrKeyword_1_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new OrExpr_OrExprLeftAction_1_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // right=AndExpr protected class OrExpr_RightAssignment_1_2 extends AssignmentToken { public OrExpr_RightAssignment_1_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getOrExprAccess().getRightAssignment_1_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AndExpr_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("right",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("right"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getAndExprRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getOrExprAccess().getRightAndExprParserRuleCall_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 OrExpr_Alternatives_1_1(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } /************ end Rule OrExpr ****************/ /************ begin Rule AndExpr **************** * * AndExpr returns Expression: * CompEqExpr ({AndExpr.left=current} ("and" | "&&") right=CompEqExpr)*; * **/ // CompEqExpr ({AndExpr.left=current} ("and" | "&&") right=CompEqExpr)* protected class AndExpr_Group extends GroupToken { public AndExpr_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getAndExprAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AndExpr_Group_1(lastRuleCallOrigin, this, 0, inst); case 1: return new AndExpr_CompEqExprParserRuleCall_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getAndExprAccess().getAndExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getCompEqExprAccess().getCompEqExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getCompExprAccess().getCompExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier() && getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUnaryExprAccess().getUnaryExprAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; return eObjectConsumer; } } // CompEqExpr protected class AndExpr_CompEqExprParserRuleCall_0 extends RuleCallToken { public AndExpr_CompEqExprParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getAndExprAccess().getCompEqExprParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new CompEqExpr_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getCompEqExprAccess().getCompEqExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getCompExprAccess().getCompExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier() && getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUnaryExprAccess().getUnaryExprAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; if(checkForRecursion(CompEqExpr_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); } } } // ({AndExpr.left=current} ("and" | "&&") right=CompEqExpr)* protected class AndExpr_Group_1 extends GroupToken { public AndExpr_Group_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getAndExprAccess().getGroup_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AndExpr_RightAssignment_1_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getAndExprAccess().getAndExprLeftAction_1_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {AndExpr.left=current} protected class AndExpr_AndExprLeftAction_1_0 extends ActionToken { public AndExpr_AndExprLeftAction_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getAndExprAccess().getAndExprLeftAction_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AndExpr_Group_1(lastRuleCallOrigin, this, 0, inst); case 1: return new AndExpr_CompEqExprParserRuleCall_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { Object val = eObjectConsumer.getConsumable("left", false); if(val == null) return null; if(!eObjectConsumer.isConsumedWithLastConsumtion("left")) return null; return createEObjectConsumer((EObject) val); } } // "and" | "&&" protected class AndExpr_Alternatives_1_1 extends AlternativesToken { public AndExpr_Alternatives_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getAndExprAccess().getAlternatives_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AndExpr_AndKeyword_1_1_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "and" protected class AndExpr_AndKeyword_1_1_0 extends KeywordToken { public AndExpr_AndKeyword_1_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getAndExprAccess().getAndKeyword_1_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new AndExpr_AndExprLeftAction_1_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // right=CompEqExpr protected class AndExpr_RightAssignment_1_2 extends AssignmentToken { public AndExpr_RightAssignment_1_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getAndExprAccess().getRightAssignment_1_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new CompEqExpr_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("right",false)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("right"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getCompEqExprRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getAndExprAccess().getRightCompEqExprParserRuleCall_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 AndExpr_Alternatives_1_1(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } /************ end Rule AndExpr ****************/ /************ begin Rule CompEqExpr **************** * * CompEqExpr returns Expression: * CompExpr ({CompEqExpr.left=current} operator=CompEqOperator right=CompExpr)*; * **/ // CompExpr ({CompEqExpr.left=current} operator=CompEqOperator right=CompExpr)* protected class CompEqExpr_Group extends GroupToken { public CompEqExpr_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getCompEqExprAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new CompEqExpr_Group_1(lastRuleCallOrigin, this, 0, inst); case 1: return new CompEqExpr_CompExprParserRuleCall_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getCompEqExprAccess().getCompEqExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getCompExprAccess().getCompExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier() && getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUnaryExprAccess().getUnaryExprAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; return eObjectConsumer; } } // CompExpr protected class CompEqExpr_CompExprParserRuleCall_0 extends RuleCallToken { public CompEqExpr_CompExprParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getCompEqExprAccess().getCompExprParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new CompExpr_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getCompExprAccess().getCompExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier() && getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUnaryExprAccess().getUnaryExprAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; if(checkForRecursion(CompExpr_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); } } } // ({CompEqExpr.left=current} operator=CompEqOperator right=CompExpr)* protected class CompEqExpr_Group_1 extends GroupToken { public CompEqExpr_Group_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getCompEqExprAccess().getGroup_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new CompEqExpr_RightAssignment_1_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getCompEqExprAccess().getCompEqExprLeftAction_1_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {CompEqExpr.left=current} protected class CompEqExpr_CompEqExprLeftAction_1_0 extends ActionToken { public CompEqExpr_CompEqExprLeftAction_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getCompEqExprAccess().getCompEqExprLeftAction_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new CompEqExpr_Group_1(lastRuleCallOrigin, this, 0, inst); case 1: return new CompEqExpr_CompExprParserRuleCall_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { Object val = eObjectConsumer.getConsumable("left", false); if(val == null) return null; if(!eObjectConsumer.isConsumedWithLastConsumtion("left")) return null; return createEObjectConsumer((EObject) val); } } // operator=CompEqOperator protected class CompEqExpr_OperatorAssignment_1_1 extends AssignmentToken { public CompEqExpr_OperatorAssignment_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getCompEqExprAccess().getOperatorAssignment_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new CompEqExpr_CompEqExprLeftAction_1_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("operator",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("operator"); if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getCompEqExprAccess().getOperatorCompEqOperatorEnumRuleCall_1_1_0(), value, null)) { type = AssignmentType.ENUM_RULE_CALL; element = grammarAccess.getCompEqExprAccess().getOperatorCompEqOperatorEnumRuleCall_1_1_0(); return obj; } return null; } } // right=CompExpr protected class CompEqExpr_RightAssignment_1_2 extends AssignmentToken { public CompEqExpr_RightAssignment_1_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getCompEqExprAccess().getRightAssignment_1_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new CompExpr_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("right",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("right"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getCompExprRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getCompEqExprAccess().getRightCompExprParserRuleCall_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 CompEqExpr_OperatorAssignment_1_1(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } /************ end Rule CompEqExpr ****************/ /************ begin Rule CompExpr **************** * * CompExpr returns Expression: * UnaryExpr ({CompExpr.left=current} operator=CompOperator right=UnaryExpr)*; * **/ // UnaryExpr ({CompExpr.left=current} operator=CompOperator right=UnaryExpr)* protected class CompExpr_Group extends GroupToken { public CompExpr_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getCompExprAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new CompExpr_Group_1(lastRuleCallOrigin, this, 0, inst); case 1: return new CompExpr_UnaryExprParserRuleCall_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getCompExprAccess().getCompExprLeftAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier() && getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUnaryExprAccess().getUnaryExprAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; return eObjectConsumer; } } // UnaryExpr protected class CompExpr_UnaryExprParserRuleCall_0 extends RuleCallToken { public CompExpr_UnaryExprParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getCompExprAccess().getUnaryExprParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new UnaryExpr_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier() && getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUnaryExprAccess().getUnaryExprAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; if(checkForRecursion(UnaryExpr_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); } } } // ({CompExpr.left=current} operator=CompOperator right=UnaryExpr)* protected class CompExpr_Group_1 extends GroupToken { public CompExpr_Group_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getCompExprAccess().getGroup_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new CompExpr_RightAssignment_1_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getCompExprAccess().getCompExprLeftAction_1_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {CompExpr.left=current} protected class CompExpr_CompExprLeftAction_1_0 extends ActionToken { public CompExpr_CompExprLeftAction_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getCompExprAccess().getCompExprLeftAction_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new CompExpr_Group_1(lastRuleCallOrigin, this, 0, inst); case 1: return new CompExpr_UnaryExprParserRuleCall_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { Object val = eObjectConsumer.getConsumable("left", false); if(val == null) return null; if(!eObjectConsumer.isConsumedWithLastConsumtion("left")) return null; return createEObjectConsumer((EObject) val); } } // operator=CompOperator protected class CompExpr_OperatorAssignment_1_1 extends AssignmentToken { public CompExpr_OperatorAssignment_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getCompExprAccess().getOperatorAssignment_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new CompExpr_CompExprLeftAction_1_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("operator",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("operator"); if(enumLitSerializer.isValid(obj.getEObject(), grammarAccess.getCompExprAccess().getOperatorCompOperatorEnumRuleCall_1_1_0(), value, null)) { type = AssignmentType.ENUM_RULE_CALL; element = grammarAccess.getCompExprAccess().getOperatorCompOperatorEnumRuleCall_1_1_0(); return obj; } return null; } } // right=UnaryExpr protected class CompExpr_RightAssignment_1_2 extends AssignmentToken { public CompExpr_RightAssignment_1_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getCompExprAccess().getRightAssignment_1_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new UnaryExpr_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("right",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("right"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getUnaryExprRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getCompExprAccess().getRightUnaryExprParserRuleCall_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 CompExpr_OperatorAssignment_1_1(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } /************ end Rule CompExpr ****************/ /************ begin Rule UnaryExpr **************** * * UnaryExpr returns Expression: * Atom | {UnaryExpr} ("not" | "!") expr=UnaryExpr; * **/ // Atom | {UnaryExpr} ("not" | "!") expr=UnaryExpr protected class UnaryExpr_Alternatives extends AlternativesToken { public UnaryExpr_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getUnaryExprAccess().getAlternatives(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new UnaryExpr_AtomParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); case 1: return new UnaryExpr_Group_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier() && getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getUnaryExprAccess().getUnaryExprAction_1_0().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; return eObjectConsumer; } } // Atom protected class UnaryExpr_AtomParserRuleCall_0 extends RuleCallToken { public UnaryExpr_AtomParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getUnaryExprAccess().getAtomParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Atom_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier() && getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; if(checkForRecursion(Atom_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); } } } // {UnaryExpr} ("not" | "!") expr=UnaryExpr protected class UnaryExpr_Group_1 extends GroupToken { public UnaryExpr_Group_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getUnaryExprAccess().getGroup_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new UnaryExpr_ExprAssignment_1_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getUnaryExprAccess().getUnaryExprAction_1_0().getType().getClassifier()) return null; return eObjectConsumer; } } // {UnaryExpr} protected class UnaryExpr_UnaryExprAction_1_0 extends ActionToken { public UnaryExpr_UnaryExprAction_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getUnaryExprAccess().getUnaryExprAction_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(!eObjectConsumer.isConsumed()) return null; return eObjectConsumer; } } // "not" | "!" protected class UnaryExpr_Alternatives_1_1 extends AlternativesToken { public UnaryExpr_Alternatives_1_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getUnaryExprAccess().getAlternatives_1_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new UnaryExpr_NotKeyword_1_1_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // "not" protected class UnaryExpr_NotKeyword_1_1_0 extends KeywordToken { public UnaryExpr_NotKeyword_1_1_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getUnaryExprAccess().getNotKeyword_1_1_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new UnaryExpr_UnaryExprAction_1_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // expr=UnaryExpr protected class UnaryExpr_ExprAssignment_1_2 extends AssignmentToken { public UnaryExpr_ExprAssignment_1_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getUnaryExprAccess().getExprAssignment_1_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new UnaryExpr_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("expr",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("expr"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getUnaryExprRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getUnaryExprAccess().getExprUnaryExprParserRuleCall_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 UnaryExpr_Alternatives_1_1(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } /************ end Rule UnaryExpr ****************/ /************ begin Rule Atom **************** * * Atom: * Value | Words | ParenExpr; * **/ // Value | Words | ParenExpr protected class Atom_Alternatives extends AlternativesToken { public Atom_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getAtomAccess().getAlternatives(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Atom_ValueParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); case 1: return new Atom_WordsParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); case 2: return new Atom_ParenExprParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier() && getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; return eObjectConsumer; } } // Value protected class Atom_ValueParserRuleCall_0 extends RuleCallToken { public Atom_ValueParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getAtomAccess().getValueParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Value_Alternatives(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier()) return null; if(checkForRecursion(Value_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); } } } // Words protected class Atom_WordsParserRuleCall_1 extends RuleCallToken { public Atom_WordsParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getAtomAccess().getWordsParserRuleCall_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Words_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; if(checkForRecursion(Words_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); } } } // ParenExpr protected class Atom_ParenExprParserRuleCall_2 extends RuleCallToken { public Atom_ParenExprParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getAtomAccess().getParenExprParserRuleCall_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ParenExpr_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier()) return null; if(checkForRecursion(ParenExpr_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 Atom ****************/ /************ begin Rule Value **************** * * Value: * ProjectReference | Word | Phrase | TagReference | TextReference | TaskReference; * **/ // ProjectReference | Word | Phrase | TagReference | TextReference | TaskReference protected class Value_Alternatives extends AlternativesToken { public Value_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getValueAccess().getAlternatives(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Value_ProjectReferenceParserRuleCall_0(lastRuleCallOrigin, this, 0, inst); case 1: return new Value_WordParserRuleCall_1(lastRuleCallOrigin, this, 1, inst); case 2: return new Value_PhraseParserRuleCall_2(lastRuleCallOrigin, this, 2, inst); case 3: return new Value_TagReferenceParserRuleCall_3(lastRuleCallOrigin, this, 3, inst); case 4: return new Value_TextReferenceParserRuleCall_4(lastRuleCallOrigin, this, 4, inst); case 5: return new Value_TaskReferenceParserRuleCall_5(lastRuleCallOrigin, this, 5, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier() && getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier()) return null; return eObjectConsumer; } } // ProjectReference protected class Value_ProjectReferenceParserRuleCall_0 extends RuleCallToken { public Value_ProjectReferenceParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getValueAccess().getProjectReferenceParserRuleCall_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ProjectReference_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier()) return null; if(checkForRecursion(ProjectReference_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); } } } // Word protected class Value_WordParserRuleCall_1 extends RuleCallToken { public Value_WordParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getValueAccess().getWordParserRuleCall_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Word_ValueAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier()) return null; if(checkForRecursion(Word_ValueAssignment.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); } } } // Phrase protected class Value_PhraseParserRuleCall_2 extends RuleCallToken { public Value_PhraseParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getValueAccess().getPhraseParserRuleCall_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Phrase_ValueAssignment(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier()) return null; if(checkForRecursion(Phrase_ValueAssignment.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); } } } // TagReference protected class Value_TagReferenceParserRuleCall_3 extends RuleCallToken { public Value_TagReferenceParserRuleCall_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getValueAccess().getTagReferenceParserRuleCall_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TagReference_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier()) return null; if(checkForRecursion(TagReference_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); } } } // TextReference protected class Value_TextReferenceParserRuleCall_4 extends RuleCallToken { public Value_TextReferenceParserRuleCall_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getValueAccess().getTextReferenceParserRuleCall_4(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TextReference_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier()) return null; if(checkForRecursion(TextReference_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); } } } // TaskReference protected class Value_TaskReferenceParserRuleCall_5 extends RuleCallToken { public Value_TaskReferenceParserRuleCall_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public RuleCall getGrammarElement() { return grammarAccess.getValueAccess().getTaskReferenceParserRuleCall_5(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TaskReference_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier()) return null; if(checkForRecursion(TaskReference_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 Value ****************/ /************ begin Rule ParenExpr **************** * * ParenExpr: * "(" {ParenExpr} expr=OrExpr ")"; * **/ // "(" {ParenExpr} expr=OrExpr ")" protected class ParenExpr_Group extends GroupToken { public ParenExpr_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getParenExprAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ParenExpr_RightParenthesisKeyword_3(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getParenExprAccess().getParenExprAction_1().getType().getClassifier()) return null; return eObjectConsumer; } } // "(" protected class ParenExpr_LeftParenthesisKeyword_0 extends KeywordToken { public ParenExpr_LeftParenthesisKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getParenExprAccess().getLeftParenthesisKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // {ParenExpr} protected class ParenExpr_ParenExprAction_1 extends ActionToken { public ParenExpr_ParenExprAction_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Action getGrammarElement() { return grammarAccess.getParenExprAccess().getParenExprAction_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ParenExpr_LeftParenthesisKeyword_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(!eObjectConsumer.isConsumed()) return null; return eObjectConsumer; } } // expr=OrExpr protected class ParenExpr_ExprAssignment_2 extends AssignmentToken { public ParenExpr_ExprAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getParenExprAccess().getExprAssignment_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new OrExpr_Group(this, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("expr",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("expr"); if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl IEObjectConsumer param = createEObjectConsumer((EObject)value); if(param.isInstanceOf(grammarAccess.getOrExprRule().getType().getClassifier())) { type = AssignmentType.PARSER_RULE_CALL; element = grammarAccess.getParenExprAccess().getExprOrExprParserRuleCall_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 ParenExpr_ParenExprAction_1(lastRuleCallOrigin, next, actIndex, consumed); default: return null; } } } // ")" protected class ParenExpr_RightParenthesisKeyword_3 extends KeywordToken { public ParenExpr_RightParenthesisKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getParenExprAccess().getRightParenthesisKeyword_3(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ParenExpr_ExprAssignment_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } } /************ end Rule ParenExpr ****************/ /************ begin Rule ProjectReference **************** * * ProjectReference: * "project" ":" (value=ID | value=STRING); * **/ // "project" ":" (value=ID | value=STRING) protected class ProjectReference_Group extends GroupToken { public ProjectReference_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getProjectReferenceAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ProjectReference_Alternatives_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getProjectReferenceRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "project" protected class ProjectReference_ProjectKeyword_0 extends KeywordToken { public ProjectReference_ProjectKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getProjectReferenceAccess().getProjectKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // ":" protected class ProjectReference_ColonKeyword_1 extends KeywordToken { public ProjectReference_ColonKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getProjectReferenceAccess().getColonKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ProjectReference_ProjectKeyword_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // value=ID | value=STRING protected class ProjectReference_Alternatives_2 extends AlternativesToken { public ProjectReference_Alternatives_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getProjectReferenceAccess().getAlternatives_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ProjectReference_ValueAssignment_2_0(lastRuleCallOrigin, this, 0, inst); case 1: return new ProjectReference_ValueAssignment_2_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // value=ID protected class ProjectReference_ValueAssignment_2_0 extends AssignmentToken { public ProjectReference_ValueAssignment_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getProjectReferenceAccess().getValueAssignment_2_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ProjectReference_ColonKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("value",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("value"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getProjectReferenceAccess().getValueIDTerminalRuleCall_2_0_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getProjectReferenceAccess().getValueIDTerminalRuleCall_2_0_0(); return obj; } return null; } } // value=STRING protected class ProjectReference_ValueAssignment_2_1 extends AssignmentToken { public ProjectReference_ValueAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getProjectReferenceAccess().getValueAssignment_2_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new ProjectReference_ColonKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("value",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("value"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getProjectReferenceAccess().getValueSTRINGTerminalRuleCall_2_1_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getProjectReferenceAccess().getValueSTRINGTerminalRuleCall_2_1_0(); return obj; } return null; } } /************ end Rule ProjectReference ****************/ /************ begin Rule TaskReference **************** * * TaskReference: * "task" ":" (value=ID | value=STRING); * **/ // "task" ":" (value=ID | value=STRING) protected class TaskReference_Group extends GroupToken { public TaskReference_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTaskReferenceAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TaskReference_Alternatives_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTaskReferenceRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "task" protected class TaskReference_TaskKeyword_0 extends KeywordToken { public TaskReference_TaskKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTaskReferenceAccess().getTaskKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // ":" protected class TaskReference_ColonKeyword_1 extends KeywordToken { public TaskReference_ColonKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTaskReferenceAccess().getColonKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TaskReference_TaskKeyword_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // value=ID | value=STRING protected class TaskReference_Alternatives_2 extends AlternativesToken { public TaskReference_Alternatives_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getTaskReferenceAccess().getAlternatives_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TaskReference_ValueAssignment_2_0(lastRuleCallOrigin, this, 0, inst); case 1: return new TaskReference_ValueAssignment_2_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // value=ID protected class TaskReference_ValueAssignment_2_0 extends AssignmentToken { public TaskReference_ValueAssignment_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTaskReferenceAccess().getValueAssignment_2_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TaskReference_ColonKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("value",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("value"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getTaskReferenceAccess().getValueIDTerminalRuleCall_2_0_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getTaskReferenceAccess().getValueIDTerminalRuleCall_2_0_0(); return obj; } return null; } } // value=STRING protected class TaskReference_ValueAssignment_2_1 extends AssignmentToken { public TaskReference_ValueAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTaskReferenceAccess().getValueAssignment_2_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TaskReference_ColonKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("value",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("value"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getTaskReferenceAccess().getValueSTRINGTerminalRuleCall_2_1_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getTaskReferenceAccess().getValueSTRINGTerminalRuleCall_2_1_0(); return obj; } return null; } } /************ end Rule TaskReference ****************/ /************ begin Rule TextReference **************** * * TextReference: * "text" ":" (value=ID | value=STRING); * **/ // "text" ":" (value=ID | value=STRING) protected class TextReference_Group extends GroupToken { public TextReference_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTextReferenceAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TextReference_Alternatives_2(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTextReferenceRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "text" protected class TextReference_TextKeyword_0 extends KeywordToken { public TextReference_TextKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTextReferenceAccess().getTextKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // ":" protected class TextReference_ColonKeyword_1 extends KeywordToken { public TextReference_ColonKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTextReferenceAccess().getColonKeyword_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TextReference_TextKeyword_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } } // value=ID | value=STRING protected class TextReference_Alternatives_2 extends AlternativesToken { public TextReference_Alternatives_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Alternatives getGrammarElement() { return grammarAccess.getTextReferenceAccess().getAlternatives_2(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TextReference_ValueAssignment_2_0(lastRuleCallOrigin, this, 0, inst); case 1: return new TextReference_ValueAssignment_2_1(lastRuleCallOrigin, this, 1, inst); default: return null; } } } // value=ID protected class TextReference_ValueAssignment_2_0 extends AssignmentToken { public TextReference_ValueAssignment_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTextReferenceAccess().getValueAssignment_2_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TextReference_ColonKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("value",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("value"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getTextReferenceAccess().getValueIDTerminalRuleCall_2_0_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getTextReferenceAccess().getValueIDTerminalRuleCall_2_0_0(); return obj; } return null; } } // value=STRING protected class TextReference_ValueAssignment_2_1 extends AssignmentToken { public TextReference_ValueAssignment_2_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTextReferenceAccess().getValueAssignment_2_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TextReference_ColonKeyword_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("value",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("value"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getTextReferenceAccess().getValueSTRINGTerminalRuleCall_2_1_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getTextReferenceAccess().getValueSTRINGTerminalRuleCall_2_1_0(); return obj; } return null; } } /************ end Rule TextReference ****************/ /************ begin Rule Words **************** * * Words: * values+=ID values+=ID+; * **/ // values+=ID values+=ID+ protected class Words_Group extends GroupToken { public Words_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getWordsAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Words_ValuesAssignment_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getWordsRule().getType().getClassifier()) return null; return eObjectConsumer; } } // values+=ID protected class Words_ValuesAssignment_0 extends AssignmentToken { public Words_ValuesAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getWordsAccess().getValuesAssignment_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("values",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("values"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getWordsAccess().getValuesIDTerminalRuleCall_0_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getWordsAccess().getValuesIDTerminalRuleCall_0_0(); return obj; } return null; } } // values+=ID+ protected class Words_ValuesAssignment_1 extends AssignmentToken { public Words_ValuesAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getWordsAccess().getValuesAssignment_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new Words_ValuesAssignment_1(lastRuleCallOrigin, this, 0, inst); case 1: return new Words_ValuesAssignment_0(lastRuleCallOrigin, this, 1, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("values",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("values"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getWordsAccess().getValuesIDTerminalRuleCall_1_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getWordsAccess().getValuesIDTerminalRuleCall_1_0(); return obj; } return null; } } /************ end Rule Words ****************/ /************ begin Rule Word **************** * * Word: * value=ID; * **/ // value=ID protected class Word_ValueAssignment extends AssignmentToken { public Word_ValueAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getWordAccess().getValueAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getWordRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("value",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("value"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getWordAccess().getValueIDTerminalRuleCall_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getWordAccess().getValueIDTerminalRuleCall_0(); return obj; } return null; } } /************ end Rule Word ****************/ /************ begin Rule Phrase **************** * * Phrase: * value=STRING; * **/ // value=STRING protected class Phrase_ValueAssignment extends AssignmentToken { public Phrase_ValueAssignment(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getPhraseAccess().getValueAssignment(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getPhraseRule().getType().getClassifier()) return null; if((value = eObjectConsumer.getConsumable("value",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("value"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getPhraseAccess().getValueSTRINGTerminalRuleCall_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getPhraseAccess().getValueSTRINGTerminalRuleCall_0(); return obj; } return null; } } /************ end Rule Phrase ****************/ /************ begin Rule TagReference **************** * * TagReference: * "@" value=ID; * **/ // "@" value=ID protected class TagReference_Group extends GroupToken { public TagReference_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Group getGrammarElement() { return grammarAccess.getTagReferenceAccess().getGroup(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TagReference_ValueAssignment_1(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if(getEObject().eClass() != grammarAccess.getTagReferenceRule().getType().getClassifier()) return null; return eObjectConsumer; } } // "@" protected class TagReference_CommercialAtKeyword_0 extends KeywordToken { public TagReference_CommercialAtKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Keyword getGrammarElement() { return grammarAccess.getTagReferenceAccess().getCommercialAtKeyword_0(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst); } } } // value=ID protected class TagReference_ValueAssignment_1 extends AssignmentToken { public TagReference_ValueAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) { super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer); } @Override public Assignment getGrammarElement() { return grammarAccess.getTagReferenceAccess().getValueAssignment_1(); } @Override public AbstractToken createFollower(int index, IEObjectConsumer inst) { switch(index) { case 0: return new TagReference_CommercialAtKeyword_0(lastRuleCallOrigin, this, 0, inst); default: return null; } } @Override public IEObjectConsumer tryConsume() { if((value = eObjectConsumer.getConsumable("value",true)) == null) return null; IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("value"); if(valueSerializer.isValid(obj.getEObject(), grammarAccess.getTagReferenceAccess().getValueIDTerminalRuleCall_1_0(), value, null)) { type = AssignmentType.TERMINAL_RULE_CALL; element = grammarAccess.getTagReferenceAccess().getValueIDTerminalRuleCall_1_0(); return obj; } return null; } } /************ end Rule TagReference ****************/ }