/*
* generated by Xtext
*/
package org.eclipse.sirius.expression.text.services;
import com.google.inject.Singleton;
import com.google.inject.Inject;
import java.util.List;
import org.eclipse.xtext.*;
import org.eclipse.xtext.service.GrammarProvider;
import org.eclipse.xtext.service.AbstractElementFinder.*;
@Singleton
public class ExpressionTextGrammarAccess extends AbstractGrammarElementFinder {
public class SiriusExpressionPackageElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.sirius.expression.text.ExpressionText.SiriusExpressionPackage");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cPackageKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cEPackageAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final CrossReference cEPackageEPackageCrossReference_1_0 = (CrossReference)cEPackageAssignment_1.eContents().get(0);
private final RuleCall cEPackageEPackageIDTerminalRuleCall_1_0_1 = (RuleCall)cEPackageEPackageCrossReference_1_0.eContents().get(1);
private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Assignment cExpressionClassesAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cExpressionClassesSiriusExpressionClassParserRuleCall_3_0 = (RuleCall)cExpressionClassesAssignment_3.eContents().get(0);
private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
//SiriusExpressionPackage:
// 'package' ePackage=[ecore::EPackage] '{'
// expressionClasses+=SiriusExpressionClass*
// '}';
@Override public ParserRule getRule() { return rule; }
//'package' ePackage=[ecore::EPackage] '{' expressionClasses+=SiriusExpressionClass* '}'
public Group getGroup() { return cGroup; }
//'package'
public Keyword getPackageKeyword_0() { return cPackageKeyword_0; }
//ePackage=[ecore::EPackage]
public Assignment getEPackageAssignment_1() { return cEPackageAssignment_1; }
//[ecore::EPackage]
public CrossReference getEPackageEPackageCrossReference_1_0() { return cEPackageEPackageCrossReference_1_0; }
//ID
public RuleCall getEPackageEPackageIDTerminalRuleCall_1_0_1() { return cEPackageEPackageIDTerminalRuleCall_1_0_1; }
//'{'
public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
//expressionClasses+=SiriusExpressionClass*
public Assignment getExpressionClassesAssignment_3() { return cExpressionClassesAssignment_3; }
//SiriusExpressionClass
public RuleCall getExpressionClassesSiriusExpressionClassParserRuleCall_3_0() { return cExpressionClassesSiriusExpressionClassParserRuleCall_3_0; }
//'}'
public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
}
public class SiriusExpressionClassElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.sirius.expression.text.ExpressionText.SiriusExpressionClass");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cClassKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cEClassAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final CrossReference cEClassEClassCrossReference_1_0 = (CrossReference)cEClassAssignment_1.eContents().get(0);
private final RuleCall cEClassEClassFQNParserRuleCall_1_0_1 = (RuleCall)cEClassEClassCrossReference_1_0.eContents().get(1);
private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Assignment cVariablesAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cVariablesSiriusVariableParserRuleCall_3_0 = (RuleCall)cVariablesAssignment_3.eContents().get(0);
private final Assignment cExpressionDescriptionsAssignment_4 = (Assignment)cGroup.eContents().get(4);
private final RuleCall cExpressionDescriptionsSiriusExpressionDescriptionParserRuleCall_4_0 = (RuleCall)cExpressionDescriptionsAssignment_4.eContents().get(0);
private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
//SiriusExpressionClass:
// 'class' eClass=[ecore::EClass|FQN] '{'
// variables+=SiriusVariable*
// expressionDescriptions+=SiriusExpressionDescription*
// '}';
@Override public ParserRule getRule() { return rule; }
//'class' eClass=[ecore::EClass|FQN] '{' variables+=SiriusVariable* expressionDescriptions+=SiriusExpressionDescription*
//'}'
public Group getGroup() { return cGroup; }
//'class'
public Keyword getClassKeyword_0() { return cClassKeyword_0; }
//eClass=[ecore::EClass|FQN]
public Assignment getEClassAssignment_1() { return cEClassAssignment_1; }
//[ecore::EClass|FQN]
public CrossReference getEClassEClassCrossReference_1_0() { return cEClassEClassCrossReference_1_0; }
//FQN
public RuleCall getEClassEClassFQNParserRuleCall_1_0_1() { return cEClassEClassFQNParserRuleCall_1_0_1; }
//'{'
public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
//variables+=SiriusVariable*
public Assignment getVariablesAssignment_3() { return cVariablesAssignment_3; }
//SiriusVariable
public RuleCall getVariablesSiriusVariableParserRuleCall_3_0() { return cVariablesSiriusVariableParserRuleCall_3_0; }
//expressionDescriptions+=SiriusExpressionDescription*
public Assignment getExpressionDescriptionsAssignment_4() { return cExpressionDescriptionsAssignment_4; }
//SiriusExpressionDescription
public RuleCall getExpressionDescriptionsSiriusExpressionDescriptionParserRuleCall_4_0() { return cExpressionDescriptionsSiriusExpressionDescriptionParserRuleCall_4_0; }
//'}'
public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; }
}
public class FQNElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.sirius.expression.text.ExpressionText.FQN");
private final Group cGroup = (Group)rule.eContents().get(1);
private final RuleCall cIDTerminalRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
private final Keyword cFullStopKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
private final RuleCall cIDTerminalRuleCall_1_1 = (RuleCall)cGroup_1.eContents().get(1);
//FQN:
// ID ("." ID)*;
@Override public ParserRule getRule() { return rule; }
//ID ("." ID)*
public Group getGroup() { return cGroup; }
//ID
public RuleCall getIDTerminalRuleCall_0() { return cIDTerminalRuleCall_0; }
//("." ID)*
public Group getGroup_1() { return cGroup_1; }
//"."
public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; }
//ID
public RuleCall getIDTerminalRuleCall_1_1() { return cIDTerminalRuleCall_1_1; }
}
public class SiriusVariableElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.sirius.expression.text.ExpressionText.SiriusVariable");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cDocumentationAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final RuleCall cDocumentationML_COMMENTTerminalRuleCall_0_0 = (RuleCall)cDocumentationAssignment_0.eContents().get(0);
private final Keyword cVarKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final RuleCall cNameIDTerminalRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
private final Keyword cColonKeyword_3 = (Keyword)cGroup.eContents().get(3);
private final Assignment cETypeAssignment_4 = (Assignment)cGroup.eContents().get(4);
private final CrossReference cETypeEClassifierCrossReference_4_0 = (CrossReference)cETypeAssignment_4.eContents().get(0);
private final RuleCall cETypeEClassifierFQNParserRuleCall_4_0_1 = (RuleCall)cETypeEClassifierCrossReference_4_0.eContents().get(1);
//SiriusVariable:
// documentation=ML_COMMENT?
// 'var' name=ID ':' eType=[ecore::EClassifier|FQN];
@Override public ParserRule getRule() { return rule; }
//documentation=ML_COMMENT? 'var' name=ID ':' eType=[ecore::EClassifier|FQN]
public Group getGroup() { return cGroup; }
//documentation=ML_COMMENT?
public Assignment getDocumentationAssignment_0() { return cDocumentationAssignment_0; }
//ML_COMMENT
public RuleCall getDocumentationML_COMMENTTerminalRuleCall_0_0() { return cDocumentationML_COMMENTTerminalRuleCall_0_0; }
//'var'
public Keyword getVarKeyword_1() { return cVarKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//':'
public Keyword getColonKeyword_3() { return cColonKeyword_3; }
//eType=[ecore::EClassifier|FQN]
public Assignment getETypeAssignment_4() { return cETypeAssignment_4; }
//[ecore::EClassifier|FQN]
public CrossReference getETypeEClassifierCrossReference_4_0() { return cETypeEClassifierCrossReference_4_0; }
//FQN
public RuleCall getETypeEClassifierFQNParserRuleCall_4_0_1() { return cETypeEClassifierFQNParserRuleCall_4_0_1; }
}
public class SiriusExpressionDescriptionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.sirius.expression.text.ExpressionText.SiriusExpressionDescription");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cExpKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cExpressionAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final CrossReference cExpressionEAttributeCrossReference_1_0 = (CrossReference)cExpressionAssignment_1.eContents().get(0);
private final RuleCall cExpressionEAttributeFQNParserRuleCall_1_0_1 = (RuleCall)cExpressionEAttributeCrossReference_1_0.eContents().get(1);
private final Keyword cLeftParenthesisKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Assignment cParametersAssignment_3_0 = (Assignment)cGroup_3.eContents().get(0);
private final RuleCall cParametersSiriusParameterParserRuleCall_3_0_0 = (RuleCall)cParametersAssignment_3_0.eContents().get(0);
private final Group cGroup_3_1 = (Group)cGroup_3.eContents().get(1);
private final Keyword cCommaKeyword_3_1_0 = (Keyword)cGroup_3_1.eContents().get(0);
private final Assignment cParametersAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
private final RuleCall cParametersSiriusParameterParserRuleCall_3_1_1_0 = (RuleCall)cParametersAssignment_3_1_1.eContents().get(0);
private final Keyword cRightParenthesisKeyword_4 = (Keyword)cGroup.eContents().get(4);
private final Keyword cColonKeyword_5 = (Keyword)cGroup.eContents().get(5);
private final Assignment cReturnTypeAssignment_6 = (Assignment)cGroup.eContents().get(6);
private final CrossReference cReturnTypeEClassifierCrossReference_6_0 = (CrossReference)cReturnTypeAssignment_6.eContents().get(0);
private final RuleCall cReturnTypeEClassifierFQNParserRuleCall_6_0_1 = (RuleCall)cReturnTypeEClassifierCrossReference_6_0.eContents().get(1);
private final Keyword cLeftSquareBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
private final Assignment cLowerBoundAssignment_8 = (Assignment)cGroup.eContents().get(8);
private final RuleCall cLowerBoundBoundParserRuleCall_8_0 = (RuleCall)cLowerBoundAssignment_8.eContents().get(0);
private final Keyword cFullStopFullStopKeyword_9 = (Keyword)cGroup.eContents().get(9);
private final Assignment cUpperBoundAssignment_10 = (Assignment)cGroup.eContents().get(10);
private final RuleCall cUpperBoundBoundParserRuleCall_10_0 = (RuleCall)cUpperBoundAssignment_10.eContents().get(0);
private final Keyword cRightSquareBracketKeyword_11 = (Keyword)cGroup.eContents().get(11);
private final Keyword cLeftCurlyBracketKeyword_12 = (Keyword)cGroup.eContents().get(12);
private final Keyword cUserDefinedVariableContainersKeyword_13 = (Keyword)cGroup.eContents().get(13);
private final Keyword cEqualsSignKeyword_14 = (Keyword)cGroup.eContents().get(14);
private final Keyword cLeftSquareBracketKeyword_15 = (Keyword)cGroup.eContents().get(15);
private final Group cGroup_16 = (Group)cGroup.eContents().get(16);
private final Assignment cVariableContainersAssignment_16_0 = (Assignment)cGroup_16.eContents().get(0);
private final CrossReference cVariableContainersEClassCrossReference_16_0_0 = (CrossReference)cVariableContainersAssignment_16_0.eContents().get(0);
private final RuleCall cVariableContainersEClassFQNParserRuleCall_16_0_0_1 = (RuleCall)cVariableContainersEClassCrossReference_16_0_0.eContents().get(1);
private final Group cGroup_16_1 = (Group)cGroup_16.eContents().get(1);
private final Keyword cCommaKeyword_16_1_0 = (Keyword)cGroup_16_1.eContents().get(0);
private final Assignment cVariableContainersAssignment_16_1_1 = (Assignment)cGroup_16_1.eContents().get(1);
private final CrossReference cVariableContainersEClassCrossReference_16_1_1_0 = (CrossReference)cVariableContainersAssignment_16_1_1.eContents().get(0);
private final RuleCall cVariableContainersEClassFQNParserRuleCall_16_1_1_0_1 = (RuleCall)cVariableContainersEClassCrossReference_16_1_1_0.eContents().get(1);
private final Keyword cRightSquareBracketKeyword_17 = (Keyword)cGroup.eContents().get(17);
private final Keyword cRightCurlyBracketKeyword_18 = (Keyword)cGroup.eContents().get(18);
//SiriusExpressionDescription:
// 'exp' expression=[ecore::EAttribute|FQN] '(' (parameters+=SiriusParameter (',' parameters+=SiriusParameter)*)? ')' ':'
// returnType=[ecore::EClassifier|FQN] '[' lowerBound=Bound '..' upperBound=Bound ']' '{'
// 'userDefinedVariableContainers' '=' '[' (variableContainers+=[ecore::EClass|FQN] (','
// variableContainers+=[ecore::EClass|FQN])*)?
// ']'
// '}';
@Override public ParserRule getRule() { return rule; }
//'exp' expression=[ecore::EAttribute|FQN] '(' (parameters+=SiriusParameter (',' parameters+=SiriusParameter)*)? ')' ':'
//returnType=[ecore::EClassifier|FQN] '[' lowerBound=Bound '..' upperBound=Bound ']' '{' 'userDefinedVariableContainers'
//'=' '[' (variableContainers+=[ecore::EClass|FQN] (',' variableContainers+=[ecore::EClass|FQN])*)? ']' '}'
public Group getGroup() { return cGroup; }
//'exp'
public Keyword getExpKeyword_0() { return cExpKeyword_0; }
//expression=[ecore::EAttribute|FQN]
public Assignment getExpressionAssignment_1() { return cExpressionAssignment_1; }
//[ecore::EAttribute|FQN]
public CrossReference getExpressionEAttributeCrossReference_1_0() { return cExpressionEAttributeCrossReference_1_0; }
//FQN
public RuleCall getExpressionEAttributeFQNParserRuleCall_1_0_1() { return cExpressionEAttributeFQNParserRuleCall_1_0_1; }
//'('
public Keyword getLeftParenthesisKeyword_2() { return cLeftParenthesisKeyword_2; }
//(parameters+=SiriusParameter (',' parameters+=SiriusParameter)*)?
public Group getGroup_3() { return cGroup_3; }
//parameters+=SiriusParameter
public Assignment getParametersAssignment_3_0() { return cParametersAssignment_3_0; }
//SiriusParameter
public RuleCall getParametersSiriusParameterParserRuleCall_3_0_0() { return cParametersSiriusParameterParserRuleCall_3_0_0; }
//(',' parameters+=SiriusParameter)*
public Group getGroup_3_1() { return cGroup_3_1; }
//','
public Keyword getCommaKeyword_3_1_0() { return cCommaKeyword_3_1_0; }
//parameters+=SiriusParameter
public Assignment getParametersAssignment_3_1_1() { return cParametersAssignment_3_1_1; }
//SiriusParameter
public RuleCall getParametersSiriusParameterParserRuleCall_3_1_1_0() { return cParametersSiriusParameterParserRuleCall_3_1_1_0; }
//')'
public Keyword getRightParenthesisKeyword_4() { return cRightParenthesisKeyword_4; }
//':'
public Keyword getColonKeyword_5() { return cColonKeyword_5; }
//returnType=[ecore::EClassifier|FQN]
public Assignment getReturnTypeAssignment_6() { return cReturnTypeAssignment_6; }
//[ecore::EClassifier|FQN]
public CrossReference getReturnTypeEClassifierCrossReference_6_0() { return cReturnTypeEClassifierCrossReference_6_0; }
//FQN
public RuleCall getReturnTypeEClassifierFQNParserRuleCall_6_0_1() { return cReturnTypeEClassifierFQNParserRuleCall_6_0_1; }
//'['
public Keyword getLeftSquareBracketKeyword_7() { return cLeftSquareBracketKeyword_7; }
//lowerBound=Bound
public Assignment getLowerBoundAssignment_8() { return cLowerBoundAssignment_8; }
//Bound
public RuleCall getLowerBoundBoundParserRuleCall_8_0() { return cLowerBoundBoundParserRuleCall_8_0; }
//'..'
public Keyword getFullStopFullStopKeyword_9() { return cFullStopFullStopKeyword_9; }
//upperBound=Bound
public Assignment getUpperBoundAssignment_10() { return cUpperBoundAssignment_10; }
//Bound
public RuleCall getUpperBoundBoundParserRuleCall_10_0() { return cUpperBoundBoundParserRuleCall_10_0; }
//']'
public Keyword getRightSquareBracketKeyword_11() { return cRightSquareBracketKeyword_11; }
//'{'
public Keyword getLeftCurlyBracketKeyword_12() { return cLeftCurlyBracketKeyword_12; }
//'userDefinedVariableContainers'
public Keyword getUserDefinedVariableContainersKeyword_13() { return cUserDefinedVariableContainersKeyword_13; }
//'='
public Keyword getEqualsSignKeyword_14() { return cEqualsSignKeyword_14; }
//'['
public Keyword getLeftSquareBracketKeyword_15() { return cLeftSquareBracketKeyword_15; }
//(variableContainers+=[ecore::EClass|FQN] (',' variableContainers+=[ecore::EClass|FQN])*)?
public Group getGroup_16() { return cGroup_16; }
//variableContainers+=[ecore::EClass|FQN]
public Assignment getVariableContainersAssignment_16_0() { return cVariableContainersAssignment_16_0; }
//[ecore::EClass|FQN]
public CrossReference getVariableContainersEClassCrossReference_16_0_0() { return cVariableContainersEClassCrossReference_16_0_0; }
//FQN
public RuleCall getVariableContainersEClassFQNParserRuleCall_16_0_0_1() { return cVariableContainersEClassFQNParserRuleCall_16_0_0_1; }
//(',' variableContainers+=[ecore::EClass|FQN])*
public Group getGroup_16_1() { return cGroup_16_1; }
//','
public Keyword getCommaKeyword_16_1_0() { return cCommaKeyword_16_1_0; }
//variableContainers+=[ecore::EClass|FQN]
public Assignment getVariableContainersAssignment_16_1_1() { return cVariableContainersAssignment_16_1_1; }
//[ecore::EClass|FQN]
public CrossReference getVariableContainersEClassCrossReference_16_1_1_0() { return cVariableContainersEClassCrossReference_16_1_1_0; }
//FQN
public RuleCall getVariableContainersEClassFQNParserRuleCall_16_1_1_0_1() { return cVariableContainersEClassFQNParserRuleCall_16_1_1_0_1; }
//']'
public Keyword getRightSquareBracketKeyword_17() { return cRightSquareBracketKeyword_17; }
//'}'
public Keyword getRightCurlyBracketKeyword_18() { return cRightCurlyBracketKeyword_18; }
}
public class SiriusParameterElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.sirius.expression.text.ExpressionText.SiriusParameter");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cOptionalAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final Keyword cOptionalOptionalKeyword_0_0 = (Keyword)cOptionalAssignment_0.eContents().get(0);
private final Assignment cVariableAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final CrossReference cVariableSiriusVariableCrossReference_1_0 = (CrossReference)cVariableAssignment_1.eContents().get(0);
private final RuleCall cVariableSiriusVariableIDTerminalRuleCall_1_0_1 = (RuleCall)cVariableSiriusVariableCrossReference_1_0.eContents().get(1);
//SiriusParameter:
// optional?='optional'? variable=[SiriusVariable];
@Override public ParserRule getRule() { return rule; }
//optional?='optional'? variable=[SiriusVariable]
public Group getGroup() { return cGroup; }
//optional?='optional'?
public Assignment getOptionalAssignment_0() { return cOptionalAssignment_0; }
//'optional'
public Keyword getOptionalOptionalKeyword_0_0() { return cOptionalOptionalKeyword_0_0; }
//variable=[SiriusVariable]
public Assignment getVariableAssignment_1() { return cVariableAssignment_1; }
//[SiriusVariable]
public CrossReference getVariableSiriusVariableCrossReference_1_0() { return cVariableSiriusVariableCrossReference_1_0; }
//ID
public RuleCall getVariableSiriusVariableIDTerminalRuleCall_1_0_1() { return cVariableSiriusVariableIDTerminalRuleCall_1_0_1; }
}
public class BoundElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.sirius.expression.text.ExpressionText.Bound");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cHyphenMinusKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
//Bound ecore::EInt:
// '-'? INT
@Override public ParserRule getRule() { return rule; }
//'-'? INT
public Group getGroup() { return cGroup; }
//'-'?
public Keyword getHyphenMinusKeyword_0() { return cHyphenMinusKeyword_0; }
//INT
public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
}
private final SiriusExpressionPackageElements pSiriusExpressionPackage;
private final SiriusExpressionClassElements pSiriusExpressionClass;
private final FQNElements pFQN;
private final SiriusVariableElements pSiriusVariable;
private final SiriusExpressionDescriptionElements pSiriusExpressionDescription;
private final SiriusParameterElements pSiriusParameter;
private final BoundElements pBound;
private final TerminalRule tID;
private final TerminalRule tINT;
private final TerminalRule tML_COMMENT;
private final TerminalRule tWS;
private final Grammar grammar;
@Inject
public ExpressionTextGrammarAccess(GrammarProvider grammarProvider) {
this.grammar = internalFindGrammar(grammarProvider);
this.pSiriusExpressionPackage = new SiriusExpressionPackageElements();
this.pSiriusExpressionClass = new SiriusExpressionClassElements();
this.pFQN = new FQNElements();
this.pSiriusVariable = new SiriusVariableElements();
this.pSiriusExpressionDescription = new SiriusExpressionDescriptionElements();
this.pSiriusParameter = new SiriusParameterElements();
this.pBound = new BoundElements();
this.tID = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.sirius.expression.text.ExpressionText.ID");
this.tINT = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.sirius.expression.text.ExpressionText.INT");
this.tML_COMMENT = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.sirius.expression.text.ExpressionText.ML_COMMENT");
this.tWS = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.sirius.expression.text.ExpressionText.WS");
}
protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
Grammar grammar = grammarProvider.getGrammar(this);
while (grammar != null) {
if ("org.eclipse.sirius.expression.text.ExpressionText".equals(grammar.getName())) {
return grammar;
}
List<Grammar> grammars = grammar.getUsedGrammars();
if (!grammars.isEmpty()) {
grammar = grammars.iterator().next();
} else {
return null;
}
}
return grammar;
}
@Override
public Grammar getGrammar() {
return grammar;
}
//SiriusExpressionPackage:
// 'package' ePackage=[ecore::EPackage] '{'
// expressionClasses+=SiriusExpressionClass*
// '}';
public SiriusExpressionPackageElements getSiriusExpressionPackageAccess() {
return pSiriusExpressionPackage;
}
public ParserRule getSiriusExpressionPackageRule() {
return getSiriusExpressionPackageAccess().getRule();
}
//SiriusExpressionClass:
// 'class' eClass=[ecore::EClass|FQN] '{'
// variables+=SiriusVariable*
// expressionDescriptions+=SiriusExpressionDescription*
// '}';
public SiriusExpressionClassElements getSiriusExpressionClassAccess() {
return pSiriusExpressionClass;
}
public ParserRule getSiriusExpressionClassRule() {
return getSiriusExpressionClassAccess().getRule();
}
//FQN:
// ID ("." ID)*;
public FQNElements getFQNAccess() {
return pFQN;
}
public ParserRule getFQNRule() {
return getFQNAccess().getRule();
}
//SiriusVariable:
// documentation=ML_COMMENT?
// 'var' name=ID ':' eType=[ecore::EClassifier|FQN];
public SiriusVariableElements getSiriusVariableAccess() {
return pSiriusVariable;
}
public ParserRule getSiriusVariableRule() {
return getSiriusVariableAccess().getRule();
}
//SiriusExpressionDescription:
// 'exp' expression=[ecore::EAttribute|FQN] '(' (parameters+=SiriusParameter (',' parameters+=SiriusParameter)*)? ')' ':'
// returnType=[ecore::EClassifier|FQN] '[' lowerBound=Bound '..' upperBound=Bound ']' '{'
// 'userDefinedVariableContainers' '=' '[' (variableContainers+=[ecore::EClass|FQN] (','
// variableContainers+=[ecore::EClass|FQN])*)?
// ']'
// '}';
public SiriusExpressionDescriptionElements getSiriusExpressionDescriptionAccess() {
return pSiriusExpressionDescription;
}
public ParserRule getSiriusExpressionDescriptionRule() {
return getSiriusExpressionDescriptionAccess().getRule();
}
//SiriusParameter:
// optional?='optional'? variable=[SiriusVariable];
public SiriusParameterElements getSiriusParameterAccess() {
return pSiriusParameter;
}
public ParserRule getSiriusParameterRule() {
return getSiriusParameterAccess().getRule();
}
//Bound ecore::EInt:
// '-'? INT
public BoundElements getBoundAccess() {
return pBound;
}
public ParserRule getBoundRule() {
return getBoundAccess().getRule();
}
//terminal ID:
// '^'? ('a'..'z' | 'A'..'Z' | '_') ('a'..'z' | 'A'..'Z' | '_' | '0'..'9')*;
public TerminalRule getIDRule() {
return tID;
}
//terminal INT returns ecore::EInt:
// '0'..'9'+;
public TerminalRule getINTRule() {
return tINT;
}
//terminal ML_COMMENT:
// '/ *'->'* /';
public TerminalRule getML_COMMENTRule() {
return tML_COMMENT;
}
//terminal WS:
// ' ' | '\t' | '\r' | '\n'+;
public TerminalRule getWSRule() {
return tWS;
}
}