/*
* generated by Xtext
*/
package fr.inria.diverse.iot2.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.*;
import org.eclipse.xtext.common.services.TerminalsGrammarAccess;
@Singleton
public class IoT2GrammarAccess extends AbstractGrammarElementFinder {
public class SystemElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "System");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cSystemKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Assignment cComponentsAssignment_3_0 = (Assignment)cGroup_3.eContents().get(0);
private final RuleCall cComponentsHWComponentParserRuleCall_3_0_0 = (RuleCall)cComponentsAssignment_3_0.eContents().get(0);
private final Assignment cComponentsAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
private final RuleCall cComponentsHWComponentParserRuleCall_3_1_0 = (RuleCall)cComponentsAssignment_3_1.eContents().get(0);
private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
private final Assignment cBoardsAssignment_4_0 = (Assignment)cGroup_4.eContents().get(0);
private final RuleCall cBoardsBoardParserRuleCall_4_0_0 = (RuleCall)cBoardsAssignment_4_0.eContents().get(0);
private final Assignment cBoardsAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1);
private final RuleCall cBoardsBoardParserRuleCall_4_1_0 = (RuleCall)cBoardsAssignment_4_1.eContents().get(0);
private final Assignment cSketchAssignment_5 = (Assignment)cGroup.eContents().get(5);
private final RuleCall cSketchSketchParserRuleCall_5_0 = (RuleCall)cSketchAssignment_5.eContents().get(0);
private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
//System:
// "system" name=ID "{" (components+=HWComponent components+=HWComponent*)? (boards+=Board boards+=Board*)?
// sketch=Sketch? "}";
@Override public ParserRule getRule() { return rule; }
//"system" name=ID "{" (components+=HWComponent components+=HWComponent*)? (boards+=Board boards+=Board*)? sketch=Sketch?
//"}"
public Group getGroup() { return cGroup; }
//"system"
public Keyword getSystemKeyword_0() { return cSystemKeyword_0; }
//name=ID
public Assignment getNameAssignment_1() { return cNameAssignment_1; }
//ID
public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
//"{"
public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
//(components+=HWComponent components+=HWComponent*)?
public Group getGroup_3() { return cGroup_3; }
//components+=HWComponent
public Assignment getComponentsAssignment_3_0() { return cComponentsAssignment_3_0; }
//HWComponent
public RuleCall getComponentsHWComponentParserRuleCall_3_0_0() { return cComponentsHWComponentParserRuleCall_3_0_0; }
//components+=HWComponent*
public Assignment getComponentsAssignment_3_1() { return cComponentsAssignment_3_1; }
//HWComponent
public RuleCall getComponentsHWComponentParserRuleCall_3_1_0() { return cComponentsHWComponentParserRuleCall_3_1_0; }
//(boards+=Board boards+=Board*)?
public Group getGroup_4() { return cGroup_4; }
//boards+=Board
public Assignment getBoardsAssignment_4_0() { return cBoardsAssignment_4_0; }
//Board
public RuleCall getBoardsBoardParserRuleCall_4_0_0() { return cBoardsBoardParserRuleCall_4_0_0; }
//boards+=Board*
public Assignment getBoardsAssignment_4_1() { return cBoardsAssignment_4_1; }
//Board
public RuleCall getBoardsBoardParserRuleCall_4_1_0() { return cBoardsBoardParserRuleCall_4_1_0; }
//sketch=Sketch?
public Assignment getSketchAssignment_5() { return cSketchAssignment_5; }
//Sketch
public RuleCall getSketchSketchParserRuleCall_5_0() { return cSketchSketchParserRuleCall_5_0; }
//"}"
public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
}
public class ContainedElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Contained");
private final RuleCall cOperationDefParserRuleCall = (RuleCall)rule.eContents().get(1);
//Contained:
// OperationDef;
@Override public ParserRule getRule() { return rule; }
//OperationDef
public RuleCall getOperationDefParserRuleCall() { return cOperationDefParserRuleCall; }
}
public class HWComponentElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "HWComponent");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final RuleCall cSensorParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
private final RuleCall cActuatorParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
//HWComponent:
// Sensor | Actuator;
@Override public ParserRule getRule() { return rule; }
//Sensor | Actuator
public Alternatives getAlternatives() { return cAlternatives; }
//Sensor
public RuleCall getSensorParserRuleCall_0() { return cSensorParserRuleCall_0; }
//Actuator
public RuleCall getActuatorParserRuleCall_1() { return cActuatorParserRuleCall_1; }
}
public class SensorElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Sensor");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cSensorKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
private final Keyword cLeftCurlyBracketKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
private final Group cGroup_2_1 = (Group)cGroup_2.eContents().get(1);
private final Keyword cProvidesKeyword_2_1_0 = (Keyword)cGroup_2_1.eContents().get(0);
private final Assignment cServicesAssignment_2_1_1 = (Assignment)cGroup_2_1.eContents().get(1);
private final RuleCall cServicesOperationDefParserRuleCall_2_1_1_0 = (RuleCall)cServicesAssignment_2_1_1.eContents().get(0);
private final Keyword cRightCurlyBracketKeyword_2_2 = (Keyword)cGroup_2.eContents().get(2);
//Sensor:
// "sensor" name=ID ("{" ("provides" services+=OperationDef)* "}")?;
@Override public ParserRule getRule() { return rule; }
//"sensor" name=ID ("{" ("provides" services+=OperationDef)* "}")?
public Group getGroup() { return cGroup; }
//"sensor"
public Keyword getSensorKeyword_0() { return cSensorKeyword_0; }
//name=ID
public Assignment getNameAssignment_1() { return cNameAssignment_1; }
//ID
public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
//("{" ("provides" services+=OperationDef)* "}")?
public Group getGroup_2() { return cGroup_2; }
//"{"
public Keyword getLeftCurlyBracketKeyword_2_0() { return cLeftCurlyBracketKeyword_2_0; }
//("provides" services+=OperationDef)*
public Group getGroup_2_1() { return cGroup_2_1; }
//"provides"
public Keyword getProvidesKeyword_2_1_0() { return cProvidesKeyword_2_1_0; }
//services+=OperationDef
public Assignment getServicesAssignment_2_1_1() { return cServicesAssignment_2_1_1; }
//OperationDef
public RuleCall getServicesOperationDefParserRuleCall_2_1_1_0() { return cServicesOperationDefParserRuleCall_2_1_1_0; }
//"}"
public Keyword getRightCurlyBracketKeyword_2_2() { return cRightCurlyBracketKeyword_2_2; }
}
public class ActuatorElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Actuator");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cActuatorKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
private final Keyword cLeftCurlyBracketKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
private final Group cGroup_2_1 = (Group)cGroup_2.eContents().get(1);
private final Keyword cProvidesKeyword_2_1_0 = (Keyword)cGroup_2_1.eContents().get(0);
private final Assignment cServicesAssignment_2_1_1 = (Assignment)cGroup_2_1.eContents().get(1);
private final RuleCall cServicesOperationDefParserRuleCall_2_1_1_0 = (RuleCall)cServicesAssignment_2_1_1.eContents().get(0);
private final Keyword cRightCurlyBracketKeyword_2_2 = (Keyword)cGroup_2.eContents().get(2);
//Actuator:
// "actuator" name=ID ("{" ("provides" services+=OperationDef)* "}")?;
@Override public ParserRule getRule() { return rule; }
//"actuator" name=ID ("{" ("provides" services+=OperationDef)* "}")?
public Group getGroup() { return cGroup; }
//"actuator"
public Keyword getActuatorKeyword_0() { return cActuatorKeyword_0; }
//name=ID
public Assignment getNameAssignment_1() { return cNameAssignment_1; }
//ID
public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
//("{" ("provides" services+=OperationDef)* "}")?
public Group getGroup_2() { return cGroup_2; }
//"{"
public Keyword getLeftCurlyBracketKeyword_2_0() { return cLeftCurlyBracketKeyword_2_0; }
//("provides" services+=OperationDef)*
public Group getGroup_2_1() { return cGroup_2_1; }
//"provides"
public Keyword getProvidesKeyword_2_1_0() { return cProvidesKeyword_2_1_0; }
//services+=OperationDef
public Assignment getServicesAssignment_2_1_1() { return cServicesAssignment_2_1_1; }
//OperationDef
public RuleCall getServicesOperationDefParserRuleCall_2_1_1_0() { return cServicesOperationDefParserRuleCall_2_1_1_0; }
//"}"
public Keyword getRightCurlyBracketKeyword_2_2() { return cRightCurlyBracketKeyword_2_2; }
}
public class BoardElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Board");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cBoardAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cBoardKeyword_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 cLeftSquareBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
private final Assignment cTypeAssignment_4 = (Assignment)cGroup.eContents().get(4);
private final RuleCall cTypeBoardTypeEnumRuleCall_4_0 = (RuleCall)cTypeAssignment_4.eContents().get(0);
private final Keyword cRightSquareBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
private final Group cGroup_6 = (Group)cGroup.eContents().get(6);
private final Keyword cLeftCurlyBracketKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0);
private final Group cGroup_6_1 = (Group)cGroup_6.eContents().get(1);
private final Keyword cProvidesKeyword_6_1_0 = (Keyword)cGroup_6_1.eContents().get(0);
private final Assignment cComponentsAssignment_6_1_1 = (Assignment)cGroup_6_1.eContents().get(1);
private final CrossReference cComponentsHWComponentCrossReference_6_1_1_0 = (CrossReference)cComponentsAssignment_6_1_1.eContents().get(0);
private final RuleCall cComponentsHWComponentIDTerminalRuleCall_6_1_1_0_1 = (RuleCall)cComponentsHWComponentCrossReference_6_1_1_0.eContents().get(1);
private final Keyword cRightCurlyBracketKeyword_6_2 = (Keyword)cGroup_6.eContents().get(2);
//Board:
// {Board} "board" name=ID "[" type=BoardType "]" ("{" ("provides" components+=[HWComponent])* "}")?;
@Override public ParserRule getRule() { return rule; }
//{Board} "board" name=ID "[" type=BoardType "]" ("{" ("provides" components+=[HWComponent])* "}")?
public Group getGroup() { return cGroup; }
//{Board}
public Action getBoardAction_0() { return cBoardAction_0; }
//"board"
public Keyword getBoardKeyword_1() { return cBoardKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//"["
public Keyword getLeftSquareBracketKeyword_3() { return cLeftSquareBracketKeyword_3; }
//type=BoardType
public Assignment getTypeAssignment_4() { return cTypeAssignment_4; }
//BoardType
public RuleCall getTypeBoardTypeEnumRuleCall_4_0() { return cTypeBoardTypeEnumRuleCall_4_0; }
//"]"
public Keyword getRightSquareBracketKeyword_5() { return cRightSquareBracketKeyword_5; }
//("{" ("provides" components+=[HWComponent])* "}")?
public Group getGroup_6() { return cGroup_6; }
//"{"
public Keyword getLeftCurlyBracketKeyword_6_0() { return cLeftCurlyBracketKeyword_6_0; }
//("provides" components+=[HWComponent])*
public Group getGroup_6_1() { return cGroup_6_1; }
//"provides"
public Keyword getProvidesKeyword_6_1_0() { return cProvidesKeyword_6_1_0; }
//components+=[HWComponent]
public Assignment getComponentsAssignment_6_1_1() { return cComponentsAssignment_6_1_1; }
//[HWComponent]
public CrossReference getComponentsHWComponentCrossReference_6_1_1_0() { return cComponentsHWComponentCrossReference_6_1_1_0; }
//ID
public RuleCall getComponentsHWComponentIDTerminalRuleCall_6_1_1_0_1() { return cComponentsHWComponentIDTerminalRuleCall_6_1_1_0_1; }
//"}"
public Keyword getRightCurlyBracketKeyword_6_2() { return cRightCurlyBracketKeyword_6_2; }
}
public class SketchElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Sketch");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cSketchAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cSketchKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Assignment cActivityAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cActivityActivityParserRuleCall_3_0 = (RuleCall)cActivityAssignment_3.eContents().get(0);
private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
//Sketch:
// {Sketch} "sketch" "{" activity=Activity "}";
@Override public ParserRule getRule() { return rule; }
//{Sketch} "sketch" "{" activity=Activity "}"
public Group getGroup() { return cGroup; }
//{Sketch}
public Action getSketchAction_0() { return cSketchAction_0; }
//"sketch"
public Keyword getSketchKeyword_1() { return cSketchKeyword_1; }
//"{"
public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
//activity=Activity
public Assignment getActivityAssignment_3() { return cActivityAssignment_3; }
//Activity
public RuleCall getActivityActivityParserRuleCall_3_0() { return cActivityActivityParserRuleCall_3_0; }
//"}"
public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
}
public class EBooleanElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "EBoolean");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final Keyword cTrueKeyword_0 = (Keyword)cAlternatives.eContents().get(0);
private final Keyword cFalseKeyword_1 = (Keyword)cAlternatives.eContents().get(1);
//EBoolean returns ecore::EBoolean:
// "true" | "false";
@Override public ParserRule getRule() { return rule; }
//"true" | "false"
public Alternatives getAlternatives() { return cAlternatives; }
//"true"
public Keyword getTrueKeyword_0() { return cTrueKeyword_0; }
//"false"
public Keyword getFalseKeyword_1() { return cFalseKeyword_1; }
}
public class OperationDefElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "OperationDef");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cOperationDefAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cOperationKeyword_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 cLeftParenthesisKeyword_3 = (Keyword)cGroup.eContents().get(3);
private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
private final Assignment cParametersAssignment_4_0 = (Assignment)cGroup_4.eContents().get(0);
private final RuleCall cParametersParameterDefParserRuleCall_4_0_0 = (RuleCall)cParametersAssignment_4_0.eContents().get(0);
private final Group cGroup_4_1 = (Group)cGroup_4.eContents().get(1);
private final Keyword cCommaKeyword_4_1_0 = (Keyword)cGroup_4_1.eContents().get(0);
private final Assignment cParametersAssignment_4_1_1 = (Assignment)cGroup_4_1.eContents().get(1);
private final RuleCall cParametersParameterDefParserRuleCall_4_1_1_0 = (RuleCall)cParametersAssignment_4_1_1.eContents().get(0);
private final Keyword cRightParenthesisKeyword_5 = (Keyword)cGroup.eContents().get(5);
private final Keyword cLeftCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
private final Assignment cLuaAssignment_7 = (Assignment)cGroup.eContents().get(7);
private final RuleCall cLuaBlockParserRuleCall_7_0 = (RuleCall)cLuaAssignment_7.eContents().get(0);
private final Keyword cRightCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8);
//OperationDef:
// {OperationDef} "operation" name=ID "(" (parameters+=ParameterDef ("," parameters+=ParameterDef)*)? ")" "{" lua=Block
// "}";
@Override public ParserRule getRule() { return rule; }
//{OperationDef} "operation" name=ID "(" (parameters+=ParameterDef ("," parameters+=ParameterDef)*)? ")" "{" lua=Block "}"
public Group getGroup() { return cGroup; }
//{OperationDef}
public Action getOperationDefAction_0() { return cOperationDefAction_0; }
//"operation"
public Keyword getOperationKeyword_1() { return cOperationKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//"("
public Keyword getLeftParenthesisKeyword_3() { return cLeftParenthesisKeyword_3; }
//(parameters+=ParameterDef ("," parameters+=ParameterDef)*)?
public Group getGroup_4() { return cGroup_4; }
//parameters+=ParameterDef
public Assignment getParametersAssignment_4_0() { return cParametersAssignment_4_0; }
//ParameterDef
public RuleCall getParametersParameterDefParserRuleCall_4_0_0() { return cParametersParameterDefParserRuleCall_4_0_0; }
//("," parameters+=ParameterDef)*
public Group getGroup_4_1() { return cGroup_4_1; }
//","
public Keyword getCommaKeyword_4_1_0() { return cCommaKeyword_4_1_0; }
//parameters+=ParameterDef
public Assignment getParametersAssignment_4_1_1() { return cParametersAssignment_4_1_1; }
//ParameterDef
public RuleCall getParametersParameterDefParserRuleCall_4_1_1_0() { return cParametersParameterDefParserRuleCall_4_1_1_0; }
//")"
public Keyword getRightParenthesisKeyword_5() { return cRightParenthesisKeyword_5; }
//"{"
public Keyword getLeftCurlyBracketKeyword_6() { return cLeftCurlyBracketKeyword_6; }
//lua=Block
public Assignment getLuaAssignment_7() { return cLuaAssignment_7; }
//Block
public RuleCall getLuaBlockParserRuleCall_7_0() { return cLuaBlockParserRuleCall_7_0; }
//"}"
public Keyword getRightCurlyBracketKeyword_8() { return cRightCurlyBracketKeyword_8; }
}
public class ParameterDefElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ParameterDef");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cDirectionAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final RuleCall cDirectionParam_attributeEnumRuleCall_0_0 = (RuleCall)cDirectionAssignment_0.eContents().get(0);
private final Assignment cContainedTypeAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cContainedTypePrimitiveDefParserRuleCall_1_0 = (RuleCall)cContainedTypeAssignment_1.eContents().get(0);
private final Assignment cIdentifierAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final RuleCall cIdentifierIDTerminalRuleCall_2_0 = (RuleCall)cIdentifierAssignment_2.eContents().get(0);
//ParameterDef:
// direction=param_attribute containedType=PrimitiveDef identifier=ID;
@Override public ParserRule getRule() { return rule; }
//direction=param_attribute containedType=PrimitiveDef identifier=ID
public Group getGroup() { return cGroup; }
//direction=param_attribute
public Assignment getDirectionAssignment_0() { return cDirectionAssignment_0; }
//param_attribute
public RuleCall getDirectionParam_attributeEnumRuleCall_0_0() { return cDirectionParam_attributeEnumRuleCall_0_0; }
//containedType=PrimitiveDef
public Assignment getContainedTypeAssignment_1() { return cContainedTypeAssignment_1; }
//PrimitiveDef
public RuleCall getContainedTypePrimitiveDefParserRuleCall_1_0() { return cContainedTypePrimitiveDefParserRuleCall_1_0; }
//identifier=ID
public Assignment getIdentifierAssignment_2() { return cIdentifierAssignment_2; }
//ID
public RuleCall getIdentifierIDTerminalRuleCall_2_0() { return cIdentifierIDTerminalRuleCall_2_0; }
}
public class PrimitiveDefElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "PrimitiveDef");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final RuleCall cInteger_typeParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
private final RuleCall cFloating_pt_typeParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
private final RuleCall cCharstr_typeParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
private final RuleCall cOther_typeParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
//PrimitiveDef:
// integer_type | floating_pt_type | charstr_type | other_type;
@Override public ParserRule getRule() { return rule; }
//integer_type | floating_pt_type | charstr_type | other_type
public Alternatives getAlternatives() { return cAlternatives; }
//integer_type
public RuleCall getInteger_typeParserRuleCall_0() { return cInteger_typeParserRuleCall_0; }
//floating_pt_type
public RuleCall getFloating_pt_typeParserRuleCall_1() { return cFloating_pt_typeParserRuleCall_1; }
//charstr_type
public RuleCall getCharstr_typeParserRuleCall_2() { return cCharstr_typeParserRuleCall_2; }
//other_type
public RuleCall getOther_typeParserRuleCall_3() { return cOther_typeParserRuleCall_3; }
}
public class Floating_pt_typeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "floating_pt_type");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final Assignment cKindAssignment_0 = (Assignment)cAlternatives.eContents().get(0);
private final RuleCall cKindFloat_typeEnumRuleCall_0_0 = (RuleCall)cKindAssignment_0.eContents().get(0);
private final Assignment cKindAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
private final RuleCall cKindDouble_typeEnumRuleCall_1_0 = (RuleCall)cKindAssignment_1.eContents().get(0);
private final Assignment cKindAssignment_2 = (Assignment)cAlternatives.eContents().get(2);
private final RuleCall cKindLongdouble_typeParserRuleCall_2_0 = (RuleCall)cKindAssignment_2.eContents().get(0);
////---------------------------
//// BASE TYPES
////---------------------------
//floating_pt_type returns PrimitiveDef:
// kind=float_type | kind=double_type | kind=longdouble_type;
@Override public ParserRule getRule() { return rule; }
//kind=float_type | kind=double_type | kind=longdouble_type
public Alternatives getAlternatives() { return cAlternatives; }
//kind=float_type
public Assignment getKindAssignment_0() { return cKindAssignment_0; }
//float_type
public RuleCall getKindFloat_typeEnumRuleCall_0_0() { return cKindFloat_typeEnumRuleCall_0_0; }
//kind=double_type
public Assignment getKindAssignment_1() { return cKindAssignment_1; }
//double_type
public RuleCall getKindDouble_typeEnumRuleCall_1_0() { return cKindDouble_typeEnumRuleCall_1_0; }
//kind=longdouble_type
public Assignment getKindAssignment_2() { return cKindAssignment_2; }
//longdouble_type
public RuleCall getKindLongdouble_typeParserRuleCall_2_0() { return cKindLongdouble_typeParserRuleCall_2_0; }
}
public class Longdouble_typeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "longdouble_type");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cLongKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Keyword cDoubleKeyword_1 = (Keyword)cGroup.eContents().get(1);
//longdouble_type returns PrimitiveKind:
// "long" "double";
@Override public ParserRule getRule() { return rule; }
//"long" "double"
public Group getGroup() { return cGroup; }
//"long"
public Keyword getLongKeyword_0() { return cLongKeyword_0; }
//"double"
public Keyword getDoubleKeyword_1() { return cDoubleKeyword_1; }
}
public class Integer_typeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "integer_type");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final Assignment cKindAssignment_0 = (Assignment)cAlternatives.eContents().get(0);
private final RuleCall cKindShort_typeEnumRuleCall_0_0 = (RuleCall)cKindAssignment_0.eContents().get(0);
private final Assignment cKindAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
private final RuleCall cKindLong_typeEnumRuleCall_1_0 = (RuleCall)cKindAssignment_1.eContents().get(0);
private final Assignment cKindAssignment_2 = (Assignment)cAlternatives.eContents().get(2);
private final RuleCall cKindLonglong_typeParserRuleCall_2_0 = (RuleCall)cKindAssignment_2.eContents().get(0);
private final Assignment cKindAssignment_3 = (Assignment)cAlternatives.eContents().get(3);
private final RuleCall cKindUshort_typeParserRuleCall_3_0 = (RuleCall)cKindAssignment_3.eContents().get(0);
private final Assignment cKindAssignment_4 = (Assignment)cAlternatives.eContents().get(4);
private final RuleCall cKindUlong_typeParserRuleCall_4_0 = (RuleCall)cKindAssignment_4.eContents().get(0);
private final Assignment cKindAssignment_5 = (Assignment)cAlternatives.eContents().get(5);
private final RuleCall cKindUlonglong_typeParserRuleCall_5_0 = (RuleCall)cKindAssignment_5.eContents().get(0);
//integer_type returns PrimitiveDef:
// kind=short_type | kind=long_type | kind=longlong_type | kind=ushort_type | kind=ulong_type | kind=ulonglong_type;
@Override public ParserRule getRule() { return rule; }
//kind=short_type | kind=long_type | kind=longlong_type | kind=ushort_type | kind=ulong_type | kind=ulonglong_type
public Alternatives getAlternatives() { return cAlternatives; }
//kind=short_type
public Assignment getKindAssignment_0() { return cKindAssignment_0; }
//short_type
public RuleCall getKindShort_typeEnumRuleCall_0_0() { return cKindShort_typeEnumRuleCall_0_0; }
//kind=long_type
public Assignment getKindAssignment_1() { return cKindAssignment_1; }
//long_type
public RuleCall getKindLong_typeEnumRuleCall_1_0() { return cKindLong_typeEnumRuleCall_1_0; }
//kind=longlong_type
public Assignment getKindAssignment_2() { return cKindAssignment_2; }
//longlong_type
public RuleCall getKindLonglong_typeParserRuleCall_2_0() { return cKindLonglong_typeParserRuleCall_2_0; }
//kind=ushort_type
public Assignment getKindAssignment_3() { return cKindAssignment_3; }
//ushort_type
public RuleCall getKindUshort_typeParserRuleCall_3_0() { return cKindUshort_typeParserRuleCall_3_0; }
//kind=ulong_type
public Assignment getKindAssignment_4() { return cKindAssignment_4; }
//ulong_type
public RuleCall getKindUlong_typeParserRuleCall_4_0() { return cKindUlong_typeParserRuleCall_4_0; }
//kind=ulonglong_type
public Assignment getKindAssignment_5() { return cKindAssignment_5; }
//ulonglong_type
public RuleCall getKindUlonglong_typeParserRuleCall_5_0() { return cKindUlonglong_typeParserRuleCall_5_0; }
}
public class Longlong_typeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "longlong_type");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cLongKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Keyword cLongKeyword_1 = (Keyword)cGroup.eContents().get(1);
//longlong_type returns PrimitiveKind:
// "long" "long";
@Override public ParserRule getRule() { return rule; }
//"long" "long"
public Group getGroup() { return cGroup; }
//"long"
public Keyword getLongKeyword_0() { return cLongKeyword_0; }
//"long"
public Keyword getLongKeyword_1() { return cLongKeyword_1; }
}
public class Ushort_typeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ushort_type");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cUnsignedKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Keyword cShortKeyword_1 = (Keyword)cGroup.eContents().get(1);
//ushort_type returns PrimitiveKind:
// "unsigned" "short";
@Override public ParserRule getRule() { return rule; }
//"unsigned" "short"
public Group getGroup() { return cGroup; }
//"unsigned"
public Keyword getUnsignedKeyword_0() { return cUnsignedKeyword_0; }
//"short"
public Keyword getShortKeyword_1() { return cShortKeyword_1; }
}
public class Ulong_typeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ulong_type");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cUnsignedKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Keyword cLongKeyword_1 = (Keyword)cGroup.eContents().get(1);
//ulong_type returns PrimitiveKind:
// "unsigned" "long";
@Override public ParserRule getRule() { return rule; }
//"unsigned" "long"
public Group getGroup() { return cGroup; }
//"unsigned"
public Keyword getUnsignedKeyword_0() { return cUnsignedKeyword_0; }
//"long"
public Keyword getLongKeyword_1() { return cLongKeyword_1; }
}
public class Ulonglong_typeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ulonglong_type");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cUnsignedKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Keyword cLongKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Keyword cLongKeyword_2 = (Keyword)cGroup.eContents().get(2);
//ulonglong_type returns PrimitiveKind:
// "unsigned" "long" "long";
@Override public ParserRule getRule() { return rule; }
//"unsigned" "long" "long"
public Group getGroup() { return cGroup; }
//"unsigned"
public Keyword getUnsignedKeyword_0() { return cUnsignedKeyword_0; }
//"long"
public Keyword getLongKeyword_1() { return cLongKeyword_1; }
//"long"
public Keyword getLongKeyword_2() { return cLongKeyword_2; }
}
public class Charstr_typeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "charstr_type");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final Assignment cKindAssignment_0 = (Assignment)cAlternatives.eContents().get(0);
private final RuleCall cKindChar_typeEnumRuleCall_0_0 = (RuleCall)cKindAssignment_0.eContents().get(0);
private final Assignment cKindAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
private final RuleCall cKindWide_char_typeEnumRuleCall_1_0 = (RuleCall)cKindAssignment_1.eContents().get(0);
private final Assignment cKindAssignment_2 = (Assignment)cAlternatives.eContents().get(2);
private final RuleCall cKindString_typeEnumRuleCall_2_0 = (RuleCall)cKindAssignment_2.eContents().get(0);
private final Assignment cKindAssignment_3 = (Assignment)cAlternatives.eContents().get(3);
private final RuleCall cKindWide_string_typeEnumRuleCall_3_0 = (RuleCall)cKindAssignment_3.eContents().get(0);
//charstr_type returns PrimitiveDef:
// kind=char_type | kind=wide_char_type | kind=string_type | kind=wide_string_type;
@Override public ParserRule getRule() { return rule; }
//kind=char_type | kind=wide_char_type | kind=string_type | kind=wide_string_type
public Alternatives getAlternatives() { return cAlternatives; }
//kind=char_type
public Assignment getKindAssignment_0() { return cKindAssignment_0; }
//char_type
public RuleCall getKindChar_typeEnumRuleCall_0_0() { return cKindChar_typeEnumRuleCall_0_0; }
//kind=wide_char_type
public Assignment getKindAssignment_1() { return cKindAssignment_1; }
//wide_char_type
public RuleCall getKindWide_char_typeEnumRuleCall_1_0() { return cKindWide_char_typeEnumRuleCall_1_0; }
//kind=string_type
public Assignment getKindAssignment_2() { return cKindAssignment_2; }
//string_type
public RuleCall getKindString_typeEnumRuleCall_2_0() { return cKindString_typeEnumRuleCall_2_0; }
//kind=wide_string_type
public Assignment getKindAssignment_3() { return cKindAssignment_3; }
//wide_string_type
public RuleCall getKindWide_string_typeEnumRuleCall_3_0() { return cKindWide_string_typeEnumRuleCall_3_0; }
}
public class Other_typeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "other_type");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final Assignment cKindAssignment_0 = (Assignment)cAlternatives.eContents().get(0);
private final RuleCall cKindBoolean_typeEnumRuleCall_0_0 = (RuleCall)cKindAssignment_0.eContents().get(0);
private final Assignment cKindAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
private final RuleCall cKindOctet_typeEnumRuleCall_1_0 = (RuleCall)cKindAssignment_1.eContents().get(0);
private final Assignment cKindAssignment_2 = (Assignment)cAlternatives.eContents().get(2);
private final RuleCall cKindAny_typeEnumRuleCall_2_0 = (RuleCall)cKindAssignment_2.eContents().get(0);
//other_type returns PrimitiveDef:
// kind=boolean_type | kind=octet_type | kind=any_type;
@Override public ParserRule getRule() { return rule; }
//kind=boolean_type | kind=octet_type | kind=any_type
public Alternatives getAlternatives() { return cAlternatives; }
//kind=boolean_type
public Assignment getKindAssignment_0() { return cKindAssignment_0; }
//boolean_type
public RuleCall getKindBoolean_typeEnumRuleCall_0_0() { return cKindBoolean_typeEnumRuleCall_0_0; }
//kind=octet_type
public Assignment getKindAssignment_1() { return cKindAssignment_1; }
//octet_type
public RuleCall getKindOctet_typeEnumRuleCall_1_0() { return cKindOctet_typeEnumRuleCall_1_0; }
//kind=any_type
public Assignment getKindAssignment_2() { return cKindAssignment_2; }
//any_type
public RuleCall getKindAny_typeEnumRuleCall_2_0() { return cKindAny_typeEnumRuleCall_2_0; }
}
public class ChunkElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Chunk");
private final RuleCall cBlockParserRuleCall = (RuleCall)rule.eContents().get(1);
//Chunk:
// Block;
@Override public ParserRule getRule() { return rule; }
//Block
public RuleCall getBlockParserRuleCall() { return cBlockParserRuleCall; }
}
public class BlockElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Block");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cBlockAction_0 = (Action)cGroup.eContents().get(0);
private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
private final Assignment cStatementsAssignment_1_0 = (Assignment)cGroup_1.eContents().get(0);
private final RuleCall cStatementsStatementParserRuleCall_1_0_0 = (RuleCall)cStatementsAssignment_1_0.eContents().get(0);
private final Keyword cSemicolonKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1);
private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
private final Assignment cReturnValueAssignment_2_0 = (Assignment)cGroup_2.eContents().get(0);
private final RuleCall cReturnValueLastStatementParserRuleCall_2_0_0 = (RuleCall)cReturnValueAssignment_2_0.eContents().get(0);
private final Keyword cSemicolonKeyword_2_1 = (Keyword)cGroup_2.eContents().get(1);
//Block:
// {Block} (statements+=Statement ";"?)* (returnValue=LastStatement ";"?)?;
@Override public ParserRule getRule() { return rule; }
//{Block} (statements+=Statement ";"?)* (returnValue=LastStatement ";"?)?
public Group getGroup() { return cGroup; }
//{Block}
public Action getBlockAction_0() { return cBlockAction_0; }
//(statements+=Statement ";"?)*
public Group getGroup_1() { return cGroup_1; }
//statements+=Statement
public Assignment getStatementsAssignment_1_0() { return cStatementsAssignment_1_0; }
//Statement
public RuleCall getStatementsStatementParserRuleCall_1_0_0() { return cStatementsStatementParserRuleCall_1_0_0; }
//";"?
public Keyword getSemicolonKeyword_1_1() { return cSemicolonKeyword_1_1; }
//(returnValue=LastStatement ";"?)?
public Group getGroup_2() { return cGroup_2; }
//returnValue=LastStatement
public Assignment getReturnValueAssignment_2_0() { return cReturnValueAssignment_2_0; }
//LastStatement
public RuleCall getReturnValueLastStatementParserRuleCall_2_0_0() { return cReturnValueLastStatementParserRuleCall_2_0_0; }
//";"?
public Keyword getSemicolonKeyword_2_1() { return cSemicolonKeyword_2_1; }
}
public class LastStatementElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "LastStatement");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final RuleCall cLastStatement_ReturnParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
private final RuleCall cLastStatement_BreakParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
//// ****************************************************
//// LAST STATEMENT
//// ****************************************************
//LastStatement:
// LastStatement_Return | LastStatement_Break;
@Override public ParserRule getRule() { return rule; }
//LastStatement_Return | LastStatement_Break
public Alternatives getAlternatives() { return cAlternatives; }
//LastStatement_Return
public RuleCall getLastStatement_ReturnParserRuleCall_0() { return cLastStatement_ReturnParserRuleCall_0; }
//LastStatement_Break
public RuleCall getLastStatement_BreakParserRuleCall_1() { return cLastStatement_BreakParserRuleCall_1; }
}
public class LastStatement_ReturnElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "LastStatement_Return");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cReturnKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Action cLastStatement_ReturnWithValueAction_1 = (Action)cGroup.eContents().get(1);
private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
private final Assignment cReturnValuesAssignment_2_0 = (Assignment)cGroup_2.eContents().get(0);
private final RuleCall cReturnValuesExpressionParserRuleCall_2_0_0 = (RuleCall)cReturnValuesAssignment_2_0.eContents().get(0);
private final Group cGroup_2_1 = (Group)cGroup_2.eContents().get(1);
private final Keyword cCommaKeyword_2_1_0 = (Keyword)cGroup_2_1.eContents().get(0);
private final Assignment cReturnValuesAssignment_2_1_1 = (Assignment)cGroup_2_1.eContents().get(1);
private final RuleCall cReturnValuesExpressionParserRuleCall_2_1_1_0 = (RuleCall)cReturnValuesAssignment_2_1_1.eContents().get(0);
//// The return statement is used to return values from a function or a chunk
//LastStatement_Return:
// "return" {LastStatement_ReturnWithValue} (returnValues+=Expression ("," returnValues+=Expression)*)?;
@Override public ParserRule getRule() { return rule; }
//"return" {LastStatement_ReturnWithValue} (returnValues+=Expression ("," returnValues+=Expression)*)?
public Group getGroup() { return cGroup; }
//"return"
public Keyword getReturnKeyword_0() { return cReturnKeyword_0; }
//{LastStatement_ReturnWithValue}
public Action getLastStatement_ReturnWithValueAction_1() { return cLastStatement_ReturnWithValueAction_1; }
//(returnValues+=Expression ("," returnValues+=Expression)*)?
public Group getGroup_2() { return cGroup_2; }
//returnValues+=Expression
public Assignment getReturnValuesAssignment_2_0() { return cReturnValuesAssignment_2_0; }
//Expression
public RuleCall getReturnValuesExpressionParserRuleCall_2_0_0() { return cReturnValuesExpressionParserRuleCall_2_0_0; }
//("," returnValues+=Expression)*
public Group getGroup_2_1() { return cGroup_2_1; }
//","
public Keyword getCommaKeyword_2_1_0() { return cCommaKeyword_2_1_0; }
//returnValues+=Expression
public Assignment getReturnValuesAssignment_2_1_1() { return cReturnValuesAssignment_2_1_1; }
//Expression
public RuleCall getReturnValuesExpressionParserRuleCall_2_1_1_0() { return cReturnValuesExpressionParserRuleCall_2_1_1_0; }
}
public class LastStatement_BreakElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "LastStatement_Break");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cBreakKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Action cLastStatement_BreakAction_1 = (Action)cGroup.eContents().get(1);
//// The break statement is used to terminate the execution of a while, repeat, or for loop, skipping to the next statement after the loop
//LastStatement_Break:
// "break" {LastStatement_Break};
@Override public ParserRule getRule() { return rule; }
//"break" {LastStatement_Break}
public Group getGroup() { return cGroup; }
//"break"
public Keyword getBreakKeyword_0() { return cBreakKeyword_0; }
//{LastStatement_Break}
public Action getLastStatement_BreakAction_1() { return cLastStatement_BreakAction_1; }
}
public class StatementElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Statement");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final RuleCall cStatement_BlockParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
private final RuleCall cStatement_WhileParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
private final RuleCall cStatement_RepeatParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
private final RuleCall cStatement_If_Then_ElseParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
private final RuleCall cStatement_For_NumericParserRuleCall_4 = (RuleCall)cAlternatives.eContents().get(4);
private final RuleCall cStatement_For_GenericParserRuleCall_5 = (RuleCall)cAlternatives.eContents().get(5);
private final RuleCall cStatement_GlobalFunction_DeclarationParserRuleCall_6 = (RuleCall)cAlternatives.eContents().get(6);
private final RuleCall cStatement_LocalFunction_DeclarationParserRuleCall_7 = (RuleCall)cAlternatives.eContents().get(7);
private final RuleCall cStatement_Local_Variable_DeclarationParserRuleCall_8 = (RuleCall)cAlternatives.eContents().get(8);
private final RuleCall cStatement_FunctioncallOrAssignmentParserRuleCall_9 = (RuleCall)cAlternatives.eContents().get(9);
//// ****************************************************
//// STATEMENT
//// ****************************************************
//Statement:
// Statement_Block | Statement_While | Statement_Repeat | Statement_If_Then_Else | Statement_For_Numeric |
// Statement_For_Generic | Statement_GlobalFunction_Declaration | Statement_LocalFunction_Declaration |
// Statement_Local_Variable_Declaration | Statement_FunctioncallOrAssignment;
@Override public ParserRule getRule() { return rule; }
//Statement_Block | Statement_While | Statement_Repeat | Statement_If_Then_Else | Statement_For_Numeric |
//Statement_For_Generic | Statement_GlobalFunction_Declaration | Statement_LocalFunction_Declaration |
//Statement_Local_Variable_Declaration | Statement_FunctioncallOrAssignment
public Alternatives getAlternatives() { return cAlternatives; }
//Statement_Block
public RuleCall getStatement_BlockParserRuleCall_0() { return cStatement_BlockParserRuleCall_0; }
//Statement_While
public RuleCall getStatement_WhileParserRuleCall_1() { return cStatement_WhileParserRuleCall_1; }
//Statement_Repeat
public RuleCall getStatement_RepeatParserRuleCall_2() { return cStatement_RepeatParserRuleCall_2; }
//Statement_If_Then_Else
public RuleCall getStatement_If_Then_ElseParserRuleCall_3() { return cStatement_If_Then_ElseParserRuleCall_3; }
//Statement_For_Numeric
public RuleCall getStatement_For_NumericParserRuleCall_4() { return cStatement_For_NumericParserRuleCall_4; }
//Statement_For_Generic
public RuleCall getStatement_For_GenericParserRuleCall_5() { return cStatement_For_GenericParserRuleCall_5; }
//Statement_GlobalFunction_Declaration
public RuleCall getStatement_GlobalFunction_DeclarationParserRuleCall_6() { return cStatement_GlobalFunction_DeclarationParserRuleCall_6; }
//Statement_LocalFunction_Declaration
public RuleCall getStatement_LocalFunction_DeclarationParserRuleCall_7() { return cStatement_LocalFunction_DeclarationParserRuleCall_7; }
//Statement_Local_Variable_Declaration
public RuleCall getStatement_Local_Variable_DeclarationParserRuleCall_8() { return cStatement_Local_Variable_DeclarationParserRuleCall_8; }
//Statement_FunctioncallOrAssignment
public RuleCall getStatement_FunctioncallOrAssignmentParserRuleCall_9() { return cStatement_FunctioncallOrAssignmentParserRuleCall_9; }
}
public class Statement_BlockElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Statement_Block");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cDoKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cBlockAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cBlockBlockParserRuleCall_1_0 = (RuleCall)cBlockAssignment_1.eContents().get(0);
private final Keyword cEndKeyword_2 = (Keyword)cGroup.eContents().get(2);
//// A block can be explicitly delimited to produce a single statement. "do ... end"
//Statement_Block:
// "do" block=Block "end";
@Override public ParserRule getRule() { return rule; }
//"do" block=Block "end"
public Group getGroup() { return cGroup; }
//"do"
public Keyword getDoKeyword_0() { return cDoKeyword_0; }
//block=Block
public Assignment getBlockAssignment_1() { return cBlockAssignment_1; }
//Block
public RuleCall getBlockBlockParserRuleCall_1_0() { return cBlockBlockParserRuleCall_1_0; }
//"end"
public Keyword getEndKeyword_2() { return cEndKeyword_2; }
}
public class Statement_WhileElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Statement_While");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cWhileKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cExpressionAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cExpressionExpressionParserRuleCall_1_0 = (RuleCall)cExpressionAssignment_1.eContents().get(0);
private final Keyword cDoKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Assignment cBlockAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cBlockBlockParserRuleCall_3_0 = (RuleCall)cBlockAssignment_3.eContents().get(0);
private final Keyword cEndKeyword_4 = (Keyword)cGroup.eContents().get(4);
//// Control structure. "while ... do ... end"
//Statement_While:
// "while" expression=Expression "do" block=Block "end";
@Override public ParserRule getRule() { return rule; }
//"while" expression=Expression "do" block=Block "end"
public Group getGroup() { return cGroup; }
//"while"
public Keyword getWhileKeyword_0() { return cWhileKeyword_0; }
//expression=Expression
public Assignment getExpressionAssignment_1() { return cExpressionAssignment_1; }
//Expression
public RuleCall getExpressionExpressionParserRuleCall_1_0() { return cExpressionExpressionParserRuleCall_1_0; }
//"do"
public Keyword getDoKeyword_2() { return cDoKeyword_2; }
//block=Block
public Assignment getBlockAssignment_3() { return cBlockAssignment_3; }
//Block
public RuleCall getBlockBlockParserRuleCall_3_0() { return cBlockBlockParserRuleCall_3_0; }
//"end"
public Keyword getEndKeyword_4() { return cEndKeyword_4; }
}
public class Statement_RepeatElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Statement_Repeat");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cRepeatKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cBlockAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cBlockBlockParserRuleCall_1_0 = (RuleCall)cBlockAssignment_1.eContents().get(0);
private final Keyword cUntilKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Assignment cExpressionAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cExpressionExpressionParserRuleCall_3_0 = (RuleCall)cExpressionAssignment_3.eContents().get(0);
//// Control structure. "repeat ... until ..."
//Statement_Repeat:
// "repeat" block=Block "until" expression=Expression;
@Override public ParserRule getRule() { return rule; }
//"repeat" block=Block "until" expression=Expression
public Group getGroup() { return cGroup; }
//"repeat"
public Keyword getRepeatKeyword_0() { return cRepeatKeyword_0; }
//block=Block
public Assignment getBlockAssignment_1() { return cBlockAssignment_1; }
//Block
public RuleCall getBlockBlockParserRuleCall_1_0() { return cBlockBlockParserRuleCall_1_0; }
//"until"
public Keyword getUntilKeyword_2() { return cUntilKeyword_2; }
//expression=Expression
public Assignment getExpressionAssignment_3() { return cExpressionAssignment_3; }
//Expression
public RuleCall getExpressionExpressionParserRuleCall_3_0() { return cExpressionExpressionParserRuleCall_3_0; }
}
public class Statement_If_Then_ElseElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Statement_If_Then_Else");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cIfKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cIfExpressionAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cIfExpressionExpressionParserRuleCall_1_0 = (RuleCall)cIfExpressionAssignment_1.eContents().get(0);
private final Keyword cThenKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Assignment cIfBlockAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cIfBlockBlockParserRuleCall_3_0 = (RuleCall)cIfBlockAssignment_3.eContents().get(0);
private final Assignment cElseIfAssignment_4 = (Assignment)cGroup.eContents().get(4);
private final RuleCall cElseIfStatement_If_Then_Else_ElseIfPartParserRuleCall_4_0 = (RuleCall)cElseIfAssignment_4.eContents().get(0);
private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
private final Keyword cElseKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
private final Assignment cElseBlockAssignment_5_1 = (Assignment)cGroup_5.eContents().get(1);
private final RuleCall cElseBlockBlockParserRuleCall_5_1_0 = (RuleCall)cElseBlockAssignment_5_1.eContents().get(0);
private final Keyword cEndKeyword_6 = (Keyword)cGroup.eContents().get(6);
//// Control structure. "if ... then ... elseif ... elseif ... else ... end"
//Statement_If_Then_Else:
// "if" ifExpression=Expression "then" ifBlock=Block elseIf+=Statement_If_Then_Else_ElseIfPart* ("else" elseBlock=Block)?
// "end";
@Override public ParserRule getRule() { return rule; }
//"if" ifExpression=Expression "then" ifBlock=Block elseIf+=Statement_If_Then_Else_ElseIfPart* ("else" elseBlock=Block)?
//"end"
public Group getGroup() { return cGroup; }
//"if"
public Keyword getIfKeyword_0() { return cIfKeyword_0; }
//ifExpression=Expression
public Assignment getIfExpressionAssignment_1() { return cIfExpressionAssignment_1; }
//Expression
public RuleCall getIfExpressionExpressionParserRuleCall_1_0() { return cIfExpressionExpressionParserRuleCall_1_0; }
//"then"
public Keyword getThenKeyword_2() { return cThenKeyword_2; }
//ifBlock=Block
public Assignment getIfBlockAssignment_3() { return cIfBlockAssignment_3; }
//Block
public RuleCall getIfBlockBlockParserRuleCall_3_0() { return cIfBlockBlockParserRuleCall_3_0; }
//elseIf+=Statement_If_Then_Else_ElseIfPart*
public Assignment getElseIfAssignment_4() { return cElseIfAssignment_4; }
//Statement_If_Then_Else_ElseIfPart
public RuleCall getElseIfStatement_If_Then_Else_ElseIfPartParserRuleCall_4_0() { return cElseIfStatement_If_Then_Else_ElseIfPartParserRuleCall_4_0; }
//("else" elseBlock=Block)?
public Group getGroup_5() { return cGroup_5; }
//"else"
public Keyword getElseKeyword_5_0() { return cElseKeyword_5_0; }
//elseBlock=Block
public Assignment getElseBlockAssignment_5_1() { return cElseBlockAssignment_5_1; }
//Block
public RuleCall getElseBlockBlockParserRuleCall_5_1_0() { return cElseBlockBlockParserRuleCall_5_1_0; }
//"end"
public Keyword getEndKeyword_6() { return cEndKeyword_6; }
}
public class Statement_If_Then_Else_ElseIfPartElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Statement_If_Then_Else_ElseIfPart");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cElseifKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cElseifExpressionAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cElseifExpressionExpressionParserRuleCall_1_0 = (RuleCall)cElseifExpressionAssignment_1.eContents().get(0);
private final Keyword cThenKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Assignment cElseifBlockAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cElseifBlockBlockParserRuleCall_3_0 = (RuleCall)cElseifBlockAssignment_3.eContents().get(0);
//Statement_If_Then_Else_ElseIfPart:
// "elseif" elseifExpression=Expression "then" elseifBlock=Block;
@Override public ParserRule getRule() { return rule; }
//"elseif" elseifExpression=Expression "then" elseifBlock=Block
public Group getGroup() { return cGroup; }
//"elseif"
public Keyword getElseifKeyword_0() { return cElseifKeyword_0; }
//elseifExpression=Expression
public Assignment getElseifExpressionAssignment_1() { return cElseifExpressionAssignment_1; }
//Expression
public RuleCall getElseifExpressionExpressionParserRuleCall_1_0() { return cElseifExpressionExpressionParserRuleCall_1_0; }
//"then"
public Keyword getThenKeyword_2() { return cThenKeyword_2; }
//elseifBlock=Block
public Assignment getElseifBlockAssignment_3() { return cElseifBlockAssignment_3; }
//Block
public RuleCall getElseifBlockBlockParserRuleCall_3_0() { return cElseifBlockBlockParserRuleCall_3_0; }
}
public class Statement_For_NumericElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Statement_For_Numeric");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cForKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cIteratorNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cIteratorNameIDTerminalRuleCall_1_0 = (RuleCall)cIteratorNameAssignment_1.eContents().get(0);
private final Keyword cEqualsSignKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Assignment cStartExprAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cStartExprExpressionParserRuleCall_3_0 = (RuleCall)cStartExprAssignment_3.eContents().get(0);
private final Keyword cCommaKeyword_4 = (Keyword)cGroup.eContents().get(4);
private final Assignment cUntilExprAssignment_5 = (Assignment)cGroup.eContents().get(5);
private final RuleCall cUntilExprExpressionParserRuleCall_5_0 = (RuleCall)cUntilExprAssignment_5.eContents().get(0);
private final Group cGroup_6 = (Group)cGroup.eContents().get(6);
private final Keyword cCommaKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0);
private final Assignment cStepExprAssignment_6_1 = (Assignment)cGroup_6.eContents().get(1);
private final RuleCall cStepExprExpressionParserRuleCall_6_1_0 = (RuleCall)cStepExprAssignment_6_1.eContents().get(0);
private final Keyword cDoKeyword_7 = (Keyword)cGroup.eContents().get(7);
private final Assignment cBlockAssignment_8 = (Assignment)cGroup.eContents().get(8);
private final RuleCall cBlockBlockParserRuleCall_8_0 = (RuleCall)cBlockAssignment_8.eContents().get(0);
private final Keyword cEndKeyword_9 = (Keyword)cGroup.eContents().get(9);
//// The numeric for loop repeats a block of code while a control variable runs through an arithmetic progression "for ...=..., ... [,...] do ... end"
//Statement_For_Numeric:
// "for" iteratorName=ID "=" startExpr=Expression "," untilExpr=Expression ("," stepExpr=Expression)? "do" block=Block
// "end";
@Override public ParserRule getRule() { return rule; }
//"for" iteratorName=ID "=" startExpr=Expression "," untilExpr=Expression ("," stepExpr=Expression)? "do" block=Block
//"end"
public Group getGroup() { return cGroup; }
//"for"
public Keyword getForKeyword_0() { return cForKeyword_0; }
//iteratorName=ID
public Assignment getIteratorNameAssignment_1() { return cIteratorNameAssignment_1; }
//ID
public RuleCall getIteratorNameIDTerminalRuleCall_1_0() { return cIteratorNameIDTerminalRuleCall_1_0; }
//"="
public Keyword getEqualsSignKeyword_2() { return cEqualsSignKeyword_2; }
//startExpr=Expression
public Assignment getStartExprAssignment_3() { return cStartExprAssignment_3; }
//Expression
public RuleCall getStartExprExpressionParserRuleCall_3_0() { return cStartExprExpressionParserRuleCall_3_0; }
//","
public Keyword getCommaKeyword_4() { return cCommaKeyword_4; }
//untilExpr=Expression
public Assignment getUntilExprAssignment_5() { return cUntilExprAssignment_5; }
//Expression
public RuleCall getUntilExprExpressionParserRuleCall_5_0() { return cUntilExprExpressionParserRuleCall_5_0; }
//("," stepExpr=Expression)?
public Group getGroup_6() { return cGroup_6; }
//","
public Keyword getCommaKeyword_6_0() { return cCommaKeyword_6_0; }
//stepExpr=Expression
public Assignment getStepExprAssignment_6_1() { return cStepExprAssignment_6_1; }
//Expression
public RuleCall getStepExprExpressionParserRuleCall_6_1_0() { return cStepExprExpressionParserRuleCall_6_1_0; }
//"do"
public Keyword getDoKeyword_7() { return cDoKeyword_7; }
//block=Block
public Assignment getBlockAssignment_8() { return cBlockAssignment_8; }
//Block
public RuleCall getBlockBlockParserRuleCall_8_0() { return cBlockBlockParserRuleCall_8_0; }
//"end"
public Keyword getEndKeyword_9() { return cEndKeyword_9; }
}
public class Statement_For_GenericElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Statement_For_Generic");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cForKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cNamesAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cNamesIDTerminalRuleCall_1_0 = (RuleCall)cNamesAssignment_1.eContents().get(0);
private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
private final Keyword cCommaKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
private final Assignment cNamesAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
private final RuleCall cNamesIDTerminalRuleCall_2_1_0 = (RuleCall)cNamesAssignment_2_1.eContents().get(0);
private final Keyword cInKeyword_3 = (Keyword)cGroup.eContents().get(3);
private final Assignment cExpressionsAssignment_4 = (Assignment)cGroup.eContents().get(4);
private final RuleCall cExpressionsExpressionParserRuleCall_4_0 = (RuleCall)cExpressionsAssignment_4.eContents().get(0);
private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
private final Keyword cCommaKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
private final Assignment cExpressionsAssignment_5_1 = (Assignment)cGroup_5.eContents().get(1);
private final RuleCall cExpressionsExpressionParserRuleCall_5_1_0 = (RuleCall)cExpressionsAssignment_5_1.eContents().get(0);
private final Keyword cDoKeyword_6 = (Keyword)cGroup.eContents().get(6);
private final Assignment cBlockAssignment_7 = (Assignment)cGroup.eContents().get(7);
private final RuleCall cBlockBlockParserRuleCall_7_0 = (RuleCall)cBlockAssignment_7.eContents().get(0);
private final Keyword cEndKeyword_8 = (Keyword)cGroup.eContents().get(8);
//// The generic for statement works over functions, called iterators. On each iteration, the iterator function is called to produce a new value, stopping when this new value is nil "for ... in ... do ... end"
//Statement_For_Generic:
// "for" names+=ID ("," names+=ID)* "in" expressions+=Expression ("," expressions+=Expression)* "do" block=Block "end";
@Override public ParserRule getRule() { return rule; }
//"for" names+=ID ("," names+=ID)* "in" expressions+=Expression ("," expressions+=Expression)* "do" block=Block "end"
public Group getGroup() { return cGroup; }
//"for"
public Keyword getForKeyword_0() { return cForKeyword_0; }
//names+=ID
public Assignment getNamesAssignment_1() { return cNamesAssignment_1; }
//ID
public RuleCall getNamesIDTerminalRuleCall_1_0() { return cNamesIDTerminalRuleCall_1_0; }
//("," names+=ID)*
public Group getGroup_2() { return cGroup_2; }
//","
public Keyword getCommaKeyword_2_0() { return cCommaKeyword_2_0; }
//names+=ID
public Assignment getNamesAssignment_2_1() { return cNamesAssignment_2_1; }
//ID
public RuleCall getNamesIDTerminalRuleCall_2_1_0() { return cNamesIDTerminalRuleCall_2_1_0; }
//"in"
public Keyword getInKeyword_3() { return cInKeyword_3; }
//expressions+=Expression
public Assignment getExpressionsAssignment_4() { return cExpressionsAssignment_4; }
//Expression
public RuleCall getExpressionsExpressionParserRuleCall_4_0() { return cExpressionsExpressionParserRuleCall_4_0; }
//("," expressions+=Expression)*
public Group getGroup_5() { return cGroup_5; }
//","
public Keyword getCommaKeyword_5_0() { return cCommaKeyword_5_0; }
//expressions+=Expression
public Assignment getExpressionsAssignment_5_1() { return cExpressionsAssignment_5_1; }
//Expression
public RuleCall getExpressionsExpressionParserRuleCall_5_1_0() { return cExpressionsExpressionParserRuleCall_5_1_0; }
//"do"
public Keyword getDoKeyword_6() { return cDoKeyword_6; }
//block=Block
public Assignment getBlockAssignment_7() { return cBlockAssignment_7; }
//Block
public RuleCall getBlockBlockParserRuleCall_7_0() { return cBlockBlockParserRuleCall_7_0; }
//"end"
public Keyword getEndKeyword_8() { return cEndKeyword_8; }
}
public class Statement_GlobalFunction_DeclarationElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Statement_GlobalFunction_Declaration");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cFunctionKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cPrefixAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cPrefixIDTerminalRuleCall_1_0 = (RuleCall)cPrefixAssignment_1.eContents().get(0);
private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
private final Keyword cFullStopKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
private final Assignment cPrefixAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
private final RuleCall cPrefixIDTerminalRuleCall_2_1_0 = (RuleCall)cPrefixAssignment_2_1.eContents().get(0);
private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Keyword cColonKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Assignment cFunctionNameAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
private final RuleCall cFunctionNameIDTerminalRuleCall_3_1_0 = (RuleCall)cFunctionNameAssignment_3_1.eContents().get(0);
private final Assignment cFunctionAssignment_4 = (Assignment)cGroup.eContents().get(4);
private final RuleCall cFunctionFunctionParserRuleCall_4_0 = (RuleCall)cFunctionAssignment_4.eContents().get(0);
private final Keyword cEndKeyword_5 = (Keyword)cGroup.eContents().get(5);
//Statement_GlobalFunction_Declaration:
// "function" prefix+=ID ("." prefix+=ID)* (":" functionName=ID)? function=Function "end";
@Override public ParserRule getRule() { return rule; }
//"function" prefix+=ID ("." prefix+=ID)* (":" functionName=ID)? function=Function "end"
public Group getGroup() { return cGroup; }
//"function"
public Keyword getFunctionKeyword_0() { return cFunctionKeyword_0; }
//prefix+=ID
public Assignment getPrefixAssignment_1() { return cPrefixAssignment_1; }
//ID
public RuleCall getPrefixIDTerminalRuleCall_1_0() { return cPrefixIDTerminalRuleCall_1_0; }
//("." prefix+=ID)*
public Group getGroup_2() { return cGroup_2; }
//"."
public Keyword getFullStopKeyword_2_0() { return cFullStopKeyword_2_0; }
//prefix+=ID
public Assignment getPrefixAssignment_2_1() { return cPrefixAssignment_2_1; }
//ID
public RuleCall getPrefixIDTerminalRuleCall_2_1_0() { return cPrefixIDTerminalRuleCall_2_1_0; }
//(":" functionName=ID)?
public Group getGroup_3() { return cGroup_3; }
//":"
public Keyword getColonKeyword_3_0() { return cColonKeyword_3_0; }
//functionName=ID
public Assignment getFunctionNameAssignment_3_1() { return cFunctionNameAssignment_3_1; }
//ID
public RuleCall getFunctionNameIDTerminalRuleCall_3_1_0() { return cFunctionNameIDTerminalRuleCall_3_1_0; }
//function=Function
public Assignment getFunctionAssignment_4() { return cFunctionAssignment_4; }
//Function
public RuleCall getFunctionFunctionParserRuleCall_4_0() { return cFunctionFunctionParserRuleCall_4_0; }
//"end"
public Keyword getEndKeyword_5() { return cEndKeyword_5; }
}
public class Statement_LocalFunction_DeclarationElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Statement_LocalFunction_Declaration");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cLocalKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Keyword cFunctionKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cFunctionNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final RuleCall cFunctionNameIDTerminalRuleCall_2_0 = (RuleCall)cFunctionNameAssignment_2.eContents().get(0);
private final Assignment cFunctionAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cFunctionFunctionParserRuleCall_3_0 = (RuleCall)cFunctionAssignment_3.eContents().get(0);
private final Keyword cEndKeyword_4 = (Keyword)cGroup.eContents().get(4);
//Statement_LocalFunction_Declaration:
// "local" "function" functionName=ID function=Function "end";
@Override public ParserRule getRule() { return rule; }
//"local" "function" functionName=ID function=Function "end"
public Group getGroup() { return cGroup; }
//"local"
public Keyword getLocalKeyword_0() { return cLocalKeyword_0; }
//"function"
public Keyword getFunctionKeyword_1() { return cFunctionKeyword_1; }
//functionName=ID
public Assignment getFunctionNameAssignment_2() { return cFunctionNameAssignment_2; }
//ID
public RuleCall getFunctionNameIDTerminalRuleCall_2_0() { return cFunctionNameIDTerminalRuleCall_2_0; }
//function=Function
public Assignment getFunctionAssignment_3() { return cFunctionAssignment_3; }
//Function
public RuleCall getFunctionFunctionParserRuleCall_3_0() { return cFunctionFunctionParserRuleCall_3_0; }
//"end"
public Keyword getEndKeyword_4() { return cEndKeyword_4; }
}
public class Statement_Local_Variable_DeclarationElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Statement_Local_Variable_Declaration");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cLocalKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cVariableNamesAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cVariableNamesIDTerminalRuleCall_1_0 = (RuleCall)cVariableNamesAssignment_1.eContents().get(0);
private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
private final Keyword cCommaKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
private final Assignment cVariableNamesAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
private final RuleCall cVariableNamesIDTerminalRuleCall_2_1_0 = (RuleCall)cVariableNamesAssignment_2_1.eContents().get(0);
private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Keyword cEqualsSignKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Assignment cInitialValueAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
private final RuleCall cInitialValueExpressionParserRuleCall_3_1_0 = (RuleCall)cInitialValueAssignment_3_1.eContents().get(0);
private final Group cGroup_3_2 = (Group)cGroup_3.eContents().get(2);
private final Keyword cCommaKeyword_3_2_0 = (Keyword)cGroup_3_2.eContents().get(0);
private final Assignment cInitialValueAssignment_3_2_1 = (Assignment)cGroup_3_2.eContents().get(1);
private final RuleCall cInitialValueExpressionParserRuleCall_3_2_1_0 = (RuleCall)cInitialValueAssignment_3_2_1.eContents().get(0);
//// Local variables can be declared anywhere inside a block. The declaration can include an initial assignment "local ... [= ...]"
//Statement_Local_Variable_Declaration:
// "local" variableNames+=ID ("," variableNames+=ID)* ("=" initialValue+=Expression ("," initialValue+=Expression)*)?;
@Override public ParserRule getRule() { return rule; }
//"local" variableNames+=ID ("," variableNames+=ID)* ("=" initialValue+=Expression ("," initialValue+=Expression)*)?
public Group getGroup() { return cGroup; }
//"local"
public Keyword getLocalKeyword_0() { return cLocalKeyword_0; }
//variableNames+=ID
public Assignment getVariableNamesAssignment_1() { return cVariableNamesAssignment_1; }
//ID
public RuleCall getVariableNamesIDTerminalRuleCall_1_0() { return cVariableNamesIDTerminalRuleCall_1_0; }
//("," variableNames+=ID)*
public Group getGroup_2() { return cGroup_2; }
//","
public Keyword getCommaKeyword_2_0() { return cCommaKeyword_2_0; }
//variableNames+=ID
public Assignment getVariableNamesAssignment_2_1() { return cVariableNamesAssignment_2_1; }
//ID
public RuleCall getVariableNamesIDTerminalRuleCall_2_1_0() { return cVariableNamesIDTerminalRuleCall_2_1_0; }
//("=" initialValue+=Expression ("," initialValue+=Expression)*)?
public Group getGroup_3() { return cGroup_3; }
//"="
public Keyword getEqualsSignKeyword_3_0() { return cEqualsSignKeyword_3_0; }
//initialValue+=Expression
public Assignment getInitialValueAssignment_3_1() { return cInitialValueAssignment_3_1; }
//Expression
public RuleCall getInitialValueExpressionParserRuleCall_3_1_0() { return cInitialValueExpressionParserRuleCall_3_1_0; }
//("," initialValue+=Expression)*
public Group getGroup_3_2() { return cGroup_3_2; }
//","
public Keyword getCommaKeyword_3_2_0() { return cCommaKeyword_3_2_0; }
//initialValue+=Expression
public Assignment getInitialValueAssignment_3_2_1() { return cInitialValueAssignment_3_2_1; }
//Expression
public RuleCall getInitialValueExpressionParserRuleCall_3_2_1_0() { return cInitialValueExpressionParserRuleCall_3_2_1_0; }
}
public class Statement_FunctioncallOrAssignmentElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Statement_FunctioncallOrAssignment");
private final Group cGroup = (Group)rule.eContents().get(1);
private final RuleCall cExpression_AccessMemberOrArrayElementParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
private final Group cGroup_1_0 = (Group)cAlternatives_1.eContents().get(0);
private final Action cStatement_AssignmentVariableAction_1_0_0 = (Action)cGroup_1_0.eContents().get(0);
private final Group cGroup_1_0_1 = (Group)cGroup_1_0.eContents().get(1);
private final Keyword cCommaKeyword_1_0_1_0 = (Keyword)cGroup_1_0_1.eContents().get(0);
private final Assignment cVariableAssignment_1_0_1_1 = (Assignment)cGroup_1_0_1.eContents().get(1);
private final RuleCall cVariableExpression_AccessMemberOrArrayElementParserRuleCall_1_0_1_1_0 = (RuleCall)cVariableAssignment_1_0_1_1.eContents().get(0);
private final Keyword cEqualsSignKeyword_1_0_2 = (Keyword)cGroup_1_0.eContents().get(2);
private final Assignment cValuesAssignment_1_0_3 = (Assignment)cGroup_1_0.eContents().get(3);
private final RuleCall cValuesExpressionParserRuleCall_1_0_3_0 = (RuleCall)cValuesAssignment_1_0_3.eContents().get(0);
private final Group cGroup_1_0_4 = (Group)cGroup_1_0.eContents().get(4);
private final Keyword cCommaKeyword_1_0_4_0 = (Keyword)cGroup_1_0_4.eContents().get(0);
private final Assignment cValuesAssignment_1_0_4_1 = (Assignment)cGroup_1_0_4.eContents().get(1);
private final RuleCall cValuesExpressionParserRuleCall_1_0_4_1_0 = (RuleCall)cValuesAssignment_1_0_4_1.eContents().get(0);
private final Group cGroup_1_1 = (Group)cAlternatives_1.eContents().get(1);
private final Keyword cColonKeyword_1_1_0 = (Keyword)cGroup_1_1.eContents().get(0);
private final Action cStatement_CallMemberFunctionObjectAction_1_1_1 = (Action)cGroup_1_1.eContents().get(1);
private final Assignment cMemberFunctionNameAssignment_1_1_2 = (Assignment)cGroup_1_1.eContents().get(2);
private final RuleCall cMemberFunctionNameIDTerminalRuleCall_1_1_2_0 = (RuleCall)cMemberFunctionNameAssignment_1_1_2.eContents().get(0);
private final Assignment cArgumentsAssignment_1_1_3 = (Assignment)cGroup_1_1.eContents().get(3);
private final RuleCall cArgumentsFunctioncall_ArgumentsParserRuleCall_1_1_3_0 = (RuleCall)cArgumentsAssignment_1_1_3.eContents().get(0);
private final Group cGroup_1_2 = (Group)cAlternatives_1.eContents().get(2);
private final Action cStatement_CallFunctionObjectAction_1_2_0 = (Action)cGroup_1_2.eContents().get(0);
private final Assignment cArgumentsAssignment_1_2_1 = (Assignment)cGroup_1_2.eContents().get(1);
private final RuleCall cArgumentsFunctioncall_ArgumentsParserRuleCall_1_2_1_0 = (RuleCall)cArgumentsAssignment_1_2_1.eContents().get(0);
//Statement_FunctioncallOrAssignment:
// Expression_AccessMemberOrArrayElement ({Statement_Assignment.variable+=current} (","
// variable+=Expression_AccessMemberOrArrayElement)* "=" values+=Expression ("," values+=Expression)* // Assignment
// // Call of a member function
// // Call of a function pointer
// | ":" {Statement_CallMemberFunction.object=current} memberFunctionName=ID arguments=Functioncall_Arguments |
// {Statement_CallFunction.object=current} arguments=Functioncall_Arguments);
@Override public ParserRule getRule() { return rule; }
//Expression_AccessMemberOrArrayElement ({Statement_Assignment.variable+=current} (","
//variable+=Expression_AccessMemberOrArrayElement)* "=" values+=Expression ("," values+=Expression)* // Assignment
//// Call of a member function
//// Call of a function pointer
//| ":" {Statement_CallMemberFunction.object=current} memberFunctionName=ID arguments=Functioncall_Arguments |
//{Statement_CallFunction.object=current} arguments=Functioncall_Arguments)
public Group getGroup() { return cGroup; }
//Expression_AccessMemberOrArrayElement
public RuleCall getExpression_AccessMemberOrArrayElementParserRuleCall_0() { return cExpression_AccessMemberOrArrayElementParserRuleCall_0; }
//{Statement_Assignment.variable+=current} ("," variable+=Expression_AccessMemberOrArrayElement)* "=" values+=Expression
//("," values+=Expression)* // Assignment
//// Call of a member function
//// Call of a function pointer
//| ":" {Statement_CallMemberFunction.object=current} memberFunctionName=ID arguments=Functioncall_Arguments |
//{Statement_CallFunction.object=current} arguments=Functioncall_Arguments
public Alternatives getAlternatives_1() { return cAlternatives_1; }
//{Statement_Assignment.variable+=current} ("," variable+=Expression_AccessMemberOrArrayElement)* "=" values+=Expression
//("," values+=Expression)*
public Group getGroup_1_0() { return cGroup_1_0; }
//{Statement_Assignment.variable+=current}
public Action getStatement_AssignmentVariableAction_1_0_0() { return cStatement_AssignmentVariableAction_1_0_0; }
//(=> "," variable+=Expression_AccessMemberOrArrayElement)*
public Group getGroup_1_0_1() { return cGroup_1_0_1; }
//=> ","
public Keyword getCommaKeyword_1_0_1_0() { return cCommaKeyword_1_0_1_0; }
//variable+=Expression_AccessMemberOrArrayElement
public Assignment getVariableAssignment_1_0_1_1() { return cVariableAssignment_1_0_1_1; }
//Expression_AccessMemberOrArrayElement
public RuleCall getVariableExpression_AccessMemberOrArrayElementParserRuleCall_1_0_1_1_0() { return cVariableExpression_AccessMemberOrArrayElementParserRuleCall_1_0_1_1_0; }
//"="
public Keyword getEqualsSignKeyword_1_0_2() { return cEqualsSignKeyword_1_0_2; }
//values+=Expression
public Assignment getValuesAssignment_1_0_3() { return cValuesAssignment_1_0_3; }
//Expression
public RuleCall getValuesExpressionParserRuleCall_1_0_3_0() { return cValuesExpressionParserRuleCall_1_0_3_0; }
//("," values+=Expression)*
public Group getGroup_1_0_4() { return cGroup_1_0_4; }
//","
public Keyword getCommaKeyword_1_0_4_0() { return cCommaKeyword_1_0_4_0; }
//values+=Expression
public Assignment getValuesAssignment_1_0_4_1() { return cValuesAssignment_1_0_4_1; }
//Expression
public RuleCall getValuesExpressionParserRuleCall_1_0_4_1_0() { return cValuesExpressionParserRuleCall_1_0_4_1_0; }
//":" {Statement_CallMemberFunction.object=current} memberFunctionName=ID arguments=Functioncall_Arguments
public Group getGroup_1_1() { return cGroup_1_1; }
//":"
public Keyword getColonKeyword_1_1_0() { return cColonKeyword_1_1_0; }
//{Statement_CallMemberFunction.object=current}
public Action getStatement_CallMemberFunctionObjectAction_1_1_1() { return cStatement_CallMemberFunctionObjectAction_1_1_1; }
//memberFunctionName=ID
public Assignment getMemberFunctionNameAssignment_1_1_2() { return cMemberFunctionNameAssignment_1_1_2; }
//ID
public RuleCall getMemberFunctionNameIDTerminalRuleCall_1_1_2_0() { return cMemberFunctionNameIDTerminalRuleCall_1_1_2_0; }
//arguments=Functioncall_Arguments
public Assignment getArgumentsAssignment_1_1_3() { return cArgumentsAssignment_1_1_3; }
//Functioncall_Arguments
public RuleCall getArgumentsFunctioncall_ArgumentsParserRuleCall_1_1_3_0() { return cArgumentsFunctioncall_ArgumentsParserRuleCall_1_1_3_0; }
//{Statement_CallFunction.object=current} arguments=Functioncall_Arguments
public Group getGroup_1_2() { return cGroup_1_2; }
//{Statement_CallFunction.object=current}
public Action getStatement_CallFunctionObjectAction_1_2_0() { return cStatement_CallFunctionObjectAction_1_2_0; }
//arguments=Functioncall_Arguments
public Assignment getArgumentsAssignment_1_2_1() { return cArgumentsAssignment_1_2_1; }
//Functioncall_Arguments
public RuleCall getArgumentsFunctioncall_ArgumentsParserRuleCall_1_2_1_0() { return cArgumentsFunctioncall_ArgumentsParserRuleCall_1_2_1_0; }
}
public class ExpressionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression");
private final RuleCall cExpression_OrParserRuleCall = (RuleCall)rule.eContents().get(1);
//// ****************************************************
//// EXPRESSIONS
//// ****************************************************
//// Delegate to the priority chain of operators by calling the rule for the lowest priority operator
//Expression:
// Expression_Or;
@Override public ParserRule getRule() { return rule; }
//Expression_Or
public RuleCall getExpression_OrParserRuleCall() { return cExpression_OrParserRuleCall; }
}
public class Expression_OrElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_Or");
private final Group cGroup = (Group)rule.eContents().get(1);
private final RuleCall cExpression_AndParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
private final Keyword cOrKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
private final Action cExpression_OrLeftAction_1_1 = (Action)cGroup_1.eContents().get(1);
private final Assignment cRightAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2);
private final RuleCall cRightExpression_AndParserRuleCall_1_2_0 = (RuleCall)cRightAssignment_1_2.eContents().get(0);
//// Or: left associative, priority 0
//Expression_Or returns Expression:
// Expression_And ("or" {Expression_Or.left=current} right=Expression_And)*;
@Override public ParserRule getRule() { return rule; }
//Expression_And ("or" {Expression_Or.left=current} right=Expression_And)*
public Group getGroup() { return cGroup; }
//Expression_And
public RuleCall getExpression_AndParserRuleCall_0() { return cExpression_AndParserRuleCall_0; }
//("or" {Expression_Or.left=current} right=Expression_And)*
public Group getGroup_1() { return cGroup_1; }
//"or"
public Keyword getOrKeyword_1_0() { return cOrKeyword_1_0; }
//{Expression_Or.left=current}
public Action getExpression_OrLeftAction_1_1() { return cExpression_OrLeftAction_1_1; }
//right=Expression_And
public Assignment getRightAssignment_1_2() { return cRightAssignment_1_2; }
//Expression_And
public RuleCall getRightExpression_AndParserRuleCall_1_2_0() { return cRightExpression_AndParserRuleCall_1_2_0; }
}
public class Expression_AndElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_And");
private final Group cGroup = (Group)rule.eContents().get(1);
private final RuleCall cExpression_CompareParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
private final Keyword cAndKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
private final Action cExpression_AndLeftAction_1_1 = (Action)cGroup_1.eContents().get(1);
private final Assignment cRightAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2);
private final RuleCall cRightExpression_CompareParserRuleCall_1_2_0 = (RuleCall)cRightAssignment_1_2.eContents().get(0);
//// And: left associative, priority 1
//Expression_And returns Expression:
// Expression_Compare ("and" {Expression_And.left=current} right=Expression_Compare)*;
@Override public ParserRule getRule() { return rule; }
//Expression_Compare ("and" {Expression_And.left=current} right=Expression_Compare)*
public Group getGroup() { return cGroup; }
//Expression_Compare
public RuleCall getExpression_CompareParserRuleCall_0() { return cExpression_CompareParserRuleCall_0; }
//("and" {Expression_And.left=current} right=Expression_Compare)*
public Group getGroup_1() { return cGroup_1; }
//"and"
public Keyword getAndKeyword_1_0() { return cAndKeyword_1_0; }
//{Expression_And.left=current}
public Action getExpression_AndLeftAction_1_1() { return cExpression_AndLeftAction_1_1; }
//right=Expression_Compare
public Assignment getRightAssignment_1_2() { return cRightAssignment_1_2; }
//Expression_Compare
public RuleCall getRightExpression_CompareParserRuleCall_1_2_0() { return cRightExpression_CompareParserRuleCall_1_2_0; }
}
public class Expression_CompareElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_Compare");
private final Group cGroup = (Group)rule.eContents().get(1);
private final RuleCall cExpression_ConcatenationParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
private final Group cGroup_1_0 = (Group)cAlternatives_1.eContents().get(0);
private final Keyword cGreaterThanSignKeyword_1_0_0 = (Keyword)cGroup_1_0.eContents().get(0);
private final Action cExpression_LargerLeftAction_1_0_1 = (Action)cGroup_1_0.eContents().get(1);
private final Assignment cRightAssignment_1_0_2 = (Assignment)cGroup_1_0.eContents().get(2);
private final RuleCall cRightExpression_ConcatenationParserRuleCall_1_0_2_0 = (RuleCall)cRightAssignment_1_0_2.eContents().get(0);
private final Group cGroup_1_1 = (Group)cAlternatives_1.eContents().get(1);
private final Keyword cGreaterThanSignEqualsSignKeyword_1_1_0 = (Keyword)cGroup_1_1.eContents().get(0);
private final Action cExpression_Larger_EqualLeftAction_1_1_1 = (Action)cGroup_1_1.eContents().get(1);
private final Assignment cRightAssignment_1_1_2 = (Assignment)cGroup_1_1.eContents().get(2);
private final RuleCall cRightExpression_ConcatenationParserRuleCall_1_1_2_0 = (RuleCall)cRightAssignment_1_1_2.eContents().get(0);
private final Group cGroup_1_2 = (Group)cAlternatives_1.eContents().get(2);
private final Keyword cLessThanSignKeyword_1_2_0 = (Keyword)cGroup_1_2.eContents().get(0);
private final Action cExpression_SmallerLeftAction_1_2_1 = (Action)cGroup_1_2.eContents().get(1);
private final Assignment cRightAssignment_1_2_2 = (Assignment)cGroup_1_2.eContents().get(2);
private final RuleCall cRightExpression_ConcatenationParserRuleCall_1_2_2_0 = (RuleCall)cRightAssignment_1_2_2.eContents().get(0);
private final Group cGroup_1_3 = (Group)cAlternatives_1.eContents().get(3);
private final Keyword cLessThanSignEqualsSignKeyword_1_3_0 = (Keyword)cGroup_1_3.eContents().get(0);
private final Action cExpression_Smaller_EqualLeftAction_1_3_1 = (Action)cGroup_1_3.eContents().get(1);
private final Assignment cRightAssignment_1_3_2 = (Assignment)cGroup_1_3.eContents().get(2);
private final RuleCall cRightExpression_ConcatenationParserRuleCall_1_3_2_0 = (RuleCall)cRightAssignment_1_3_2.eContents().get(0);
private final Group cGroup_1_4 = (Group)cAlternatives_1.eContents().get(4);
private final Keyword cEqualsSignEqualsSignKeyword_1_4_0 = (Keyword)cGroup_1_4.eContents().get(0);
private final Action cExpression_EqualLeftAction_1_4_1 = (Action)cGroup_1_4.eContents().get(1);
private final Assignment cRightAssignment_1_4_2 = (Assignment)cGroup_1_4.eContents().get(2);
private final RuleCall cRightExpression_ConcatenationParserRuleCall_1_4_2_0 = (RuleCall)cRightAssignment_1_4_2.eContents().get(0);
private final Group cGroup_1_5 = (Group)cAlternatives_1.eContents().get(5);
private final Keyword cTildeEqualsSignKeyword_1_5_0 = (Keyword)cGroup_1_5.eContents().get(0);
private final Action cExpression_Not_EqualLeftAction_1_5_1 = (Action)cGroup_1_5.eContents().get(1);
private final Assignment cRightAssignment_1_5_2 = (Assignment)cGroup_1_5.eContents().get(2);
private final RuleCall cRightExpression_ConcatenationParserRuleCall_1_5_2_0 = (RuleCall)cRightAssignment_1_5_2.eContents().get(0);
//// Comparisons: left associative, priority 2
//Expression_Compare returns Expression:
// Expression_Concatenation (">" {Expression_Larger.left=current} right=Expression_Concatenation | ">="
// {Expression_Larger_Equal.left=current} right=Expression_Concatenation | "<" {Expression_Smaller.left=current}
// right=Expression_Concatenation | "<=" {Expression_Smaller_Equal.left=current} right=Expression_Concatenation | "=="
// {Expression_Equal.left=current} right=Expression_Concatenation | "~=" {Expression_Not_Equal.left=current}
// right=Expression_Concatenation)*;
@Override public ParserRule getRule() { return rule; }
//Expression_Concatenation (">" {Expression_Larger.left=current} right=Expression_Concatenation | ">="
//{Expression_Larger_Equal.left=current} right=Expression_Concatenation | "<" {Expression_Smaller.left=current}
//right=Expression_Concatenation | "<=" {Expression_Smaller_Equal.left=current} right=Expression_Concatenation | "=="
//{Expression_Equal.left=current} right=Expression_Concatenation | "~=" {Expression_Not_Equal.left=current}
//right=Expression_Concatenation)*
public Group getGroup() { return cGroup; }
//Expression_Concatenation
public RuleCall getExpression_ConcatenationParserRuleCall_0() { return cExpression_ConcatenationParserRuleCall_0; }
//(">" {Expression_Larger.left=current} right=Expression_Concatenation | ">=" {Expression_Larger_Equal.left=current}
//right=Expression_Concatenation | "<" {Expression_Smaller.left=current} right=Expression_Concatenation | "<="
//{Expression_Smaller_Equal.left=current} right=Expression_Concatenation | "==" {Expression_Equal.left=current}
//right=Expression_Concatenation | "~=" {Expression_Not_Equal.left=current} right=Expression_Concatenation)*
public Alternatives getAlternatives_1() { return cAlternatives_1; }
//">" {Expression_Larger.left=current} right=Expression_Concatenation
public Group getGroup_1_0() { return cGroup_1_0; }
//">"
public Keyword getGreaterThanSignKeyword_1_0_0() { return cGreaterThanSignKeyword_1_0_0; }
//{Expression_Larger.left=current}
public Action getExpression_LargerLeftAction_1_0_1() { return cExpression_LargerLeftAction_1_0_1; }
//right=Expression_Concatenation
public Assignment getRightAssignment_1_0_2() { return cRightAssignment_1_0_2; }
//Expression_Concatenation
public RuleCall getRightExpression_ConcatenationParserRuleCall_1_0_2_0() { return cRightExpression_ConcatenationParserRuleCall_1_0_2_0; }
//">=" {Expression_Larger_Equal.left=current} right=Expression_Concatenation
public Group getGroup_1_1() { return cGroup_1_1; }
//">="
public Keyword getGreaterThanSignEqualsSignKeyword_1_1_0() { return cGreaterThanSignEqualsSignKeyword_1_1_0; }
//{Expression_Larger_Equal.left=current}
public Action getExpression_Larger_EqualLeftAction_1_1_1() { return cExpression_Larger_EqualLeftAction_1_1_1; }
//right=Expression_Concatenation
public Assignment getRightAssignment_1_1_2() { return cRightAssignment_1_1_2; }
//Expression_Concatenation
public RuleCall getRightExpression_ConcatenationParserRuleCall_1_1_2_0() { return cRightExpression_ConcatenationParserRuleCall_1_1_2_0; }
//"<" {Expression_Smaller.left=current} right=Expression_Concatenation
public Group getGroup_1_2() { return cGroup_1_2; }
//"<"
public Keyword getLessThanSignKeyword_1_2_0() { return cLessThanSignKeyword_1_2_0; }
//{Expression_Smaller.left=current}
public Action getExpression_SmallerLeftAction_1_2_1() { return cExpression_SmallerLeftAction_1_2_1; }
//right=Expression_Concatenation
public Assignment getRightAssignment_1_2_2() { return cRightAssignment_1_2_2; }
//Expression_Concatenation
public RuleCall getRightExpression_ConcatenationParserRuleCall_1_2_2_0() { return cRightExpression_ConcatenationParserRuleCall_1_2_2_0; }
//"<=" {Expression_Smaller_Equal.left=current} right=Expression_Concatenation
public Group getGroup_1_3() { return cGroup_1_3; }
//"<="
public Keyword getLessThanSignEqualsSignKeyword_1_3_0() { return cLessThanSignEqualsSignKeyword_1_3_0; }
//{Expression_Smaller_Equal.left=current}
public Action getExpression_Smaller_EqualLeftAction_1_3_1() { return cExpression_Smaller_EqualLeftAction_1_3_1; }
//right=Expression_Concatenation
public Assignment getRightAssignment_1_3_2() { return cRightAssignment_1_3_2; }
//Expression_Concatenation
public RuleCall getRightExpression_ConcatenationParserRuleCall_1_3_2_0() { return cRightExpression_ConcatenationParserRuleCall_1_3_2_0; }
//"==" {Expression_Equal.left=current} right=Expression_Concatenation
public Group getGroup_1_4() { return cGroup_1_4; }
//"=="
public Keyword getEqualsSignEqualsSignKeyword_1_4_0() { return cEqualsSignEqualsSignKeyword_1_4_0; }
//{Expression_Equal.left=current}
public Action getExpression_EqualLeftAction_1_4_1() { return cExpression_EqualLeftAction_1_4_1; }
//right=Expression_Concatenation
public Assignment getRightAssignment_1_4_2() { return cRightAssignment_1_4_2; }
//Expression_Concatenation
public RuleCall getRightExpression_ConcatenationParserRuleCall_1_4_2_0() { return cRightExpression_ConcatenationParserRuleCall_1_4_2_0; }
//"~=" {Expression_Not_Equal.left=current} right=Expression_Concatenation
public Group getGroup_1_5() { return cGroup_1_5; }
//"~="
public Keyword getTildeEqualsSignKeyword_1_5_0() { return cTildeEqualsSignKeyword_1_5_0; }
//{Expression_Not_Equal.left=current}
public Action getExpression_Not_EqualLeftAction_1_5_1() { return cExpression_Not_EqualLeftAction_1_5_1; }
//right=Expression_Concatenation
public Assignment getRightAssignment_1_5_2() { return cRightAssignment_1_5_2; }
//Expression_Concatenation
public RuleCall getRightExpression_ConcatenationParserRuleCall_1_5_2_0() { return cRightExpression_ConcatenationParserRuleCall_1_5_2_0; }
}
public class Expression_ConcatenationElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_Concatenation");
private final Group cGroup = (Group)rule.eContents().get(1);
private final RuleCall cExpression_PlusMinusParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
private final Keyword cFullStopFullStopKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
private final Action cExpression_ConcatenationLeftAction_1_1 = (Action)cGroup_1.eContents().get(1);
private final Assignment cRightAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2);
private final RuleCall cRightExpression_ConcatenationParserRuleCall_1_2_0 = (RuleCall)cRightAssignment_1_2.eContents().get(0);
//// Concatenation: right associative, priority 3
//Expression_Concatenation returns Expression:
// Expression_PlusMinus (".." {Expression_Concatenation.left=current} right=Expression_Concatenation)?;
@Override public ParserRule getRule() { return rule; }
//Expression_PlusMinus (".." {Expression_Concatenation.left=current} right=Expression_Concatenation)?
public Group getGroup() { return cGroup; }
//Expression_PlusMinus
public RuleCall getExpression_PlusMinusParserRuleCall_0() { return cExpression_PlusMinusParserRuleCall_0; }
//(".." {Expression_Concatenation.left=current} right=Expression_Concatenation)?
public Group getGroup_1() { return cGroup_1; }
//".."
public Keyword getFullStopFullStopKeyword_1_0() { return cFullStopFullStopKeyword_1_0; }
//{Expression_Concatenation.left=current}
public Action getExpression_ConcatenationLeftAction_1_1() { return cExpression_ConcatenationLeftAction_1_1; }
//right=Expression_Concatenation
public Assignment getRightAssignment_1_2() { return cRightAssignment_1_2; }
//Expression_Concatenation
public RuleCall getRightExpression_ConcatenationParserRuleCall_1_2_0() { return cRightExpression_ConcatenationParserRuleCall_1_2_0; }
}
public class Expression_PlusMinusElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_PlusMinus");
private final Group cGroup = (Group)rule.eContents().get(1);
private final RuleCall cExpression_MultiplicationDivisionModuloParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
private final Group cGroup_1_0 = (Group)cAlternatives_1.eContents().get(0);
private final Keyword cPlusSignKeyword_1_0_0 = (Keyword)cGroup_1_0.eContents().get(0);
private final Action cExpression_PlusLeftAction_1_0_1 = (Action)cGroup_1_0.eContents().get(1);
private final Assignment cRightAssignment_1_0_2 = (Assignment)cGroup_1_0.eContents().get(2);
private final RuleCall cRightExpression_MultiplicationDivisionModuloParserRuleCall_1_0_2_0 = (RuleCall)cRightAssignment_1_0_2.eContents().get(0);
private final Group cGroup_1_1 = (Group)cAlternatives_1.eContents().get(1);
private final Keyword cHyphenMinusKeyword_1_1_0 = (Keyword)cGroup_1_1.eContents().get(0);
private final Action cExpression_MinusLeftAction_1_1_1 = (Action)cGroup_1_1.eContents().get(1);
private final Assignment cRightAssignment_1_1_2 = (Assignment)cGroup_1_1.eContents().get(2);
private final RuleCall cRightExpression_MultiplicationDivisionModuloParserRuleCall_1_1_2_0 = (RuleCall)cRightAssignment_1_1_2.eContents().get(0);
//// addition/subtraction: left associative, priority 4
//Expression_PlusMinus returns Expression:
// Expression_MultiplicationDivisionModulo ("+" {Expression_Plus.left=current}
// right=Expression_MultiplicationDivisionModulo | "-" {Expression_Minus.left=current}
// right=Expression_MultiplicationDivisionModulo)*;
@Override public ParserRule getRule() { return rule; }
//Expression_MultiplicationDivisionModulo ("+" {Expression_Plus.left=current}
//right=Expression_MultiplicationDivisionModulo | "-" {Expression_Minus.left=current}
//right=Expression_MultiplicationDivisionModulo)*
public Group getGroup() { return cGroup; }
//Expression_MultiplicationDivisionModulo
public RuleCall getExpression_MultiplicationDivisionModuloParserRuleCall_0() { return cExpression_MultiplicationDivisionModuloParserRuleCall_0; }
//("+" {Expression_Plus.left=current} right=Expression_MultiplicationDivisionModulo | "-" {Expression_Minus.left=current}
//right=Expression_MultiplicationDivisionModulo)*
public Alternatives getAlternatives_1() { return cAlternatives_1; }
//"+" {Expression_Plus.left=current} right=Expression_MultiplicationDivisionModulo
public Group getGroup_1_0() { return cGroup_1_0; }
//"+"
public Keyword getPlusSignKeyword_1_0_0() { return cPlusSignKeyword_1_0_0; }
//{Expression_Plus.left=current}
public Action getExpression_PlusLeftAction_1_0_1() { return cExpression_PlusLeftAction_1_0_1; }
//right=Expression_MultiplicationDivisionModulo
public Assignment getRightAssignment_1_0_2() { return cRightAssignment_1_0_2; }
//Expression_MultiplicationDivisionModulo
public RuleCall getRightExpression_MultiplicationDivisionModuloParserRuleCall_1_0_2_0() { return cRightExpression_MultiplicationDivisionModuloParserRuleCall_1_0_2_0; }
//"-" {Expression_Minus.left=current} right=Expression_MultiplicationDivisionModulo
public Group getGroup_1_1() { return cGroup_1_1; }
//"-"
public Keyword getHyphenMinusKeyword_1_1_0() { return cHyphenMinusKeyword_1_1_0; }
//{Expression_Minus.left=current}
public Action getExpression_MinusLeftAction_1_1_1() { return cExpression_MinusLeftAction_1_1_1; }
//right=Expression_MultiplicationDivisionModulo
public Assignment getRightAssignment_1_1_2() { return cRightAssignment_1_1_2; }
//Expression_MultiplicationDivisionModulo
public RuleCall getRightExpression_MultiplicationDivisionModuloParserRuleCall_1_1_2_0() { return cRightExpression_MultiplicationDivisionModuloParserRuleCall_1_1_2_0; }
}
public class Expression_MultiplicationDivisionModuloElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_MultiplicationDivisionModulo");
private final Group cGroup = (Group)rule.eContents().get(1);
private final RuleCall cExpression_UnaryParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
private final Group cGroup_1_0 = (Group)cAlternatives_1.eContents().get(0);
private final Keyword cAsteriskKeyword_1_0_0 = (Keyword)cGroup_1_0.eContents().get(0);
private final Action cExpression_MultiplicationLeftAction_1_0_1 = (Action)cGroup_1_0.eContents().get(1);
private final Assignment cRightAssignment_1_0_2 = (Assignment)cGroup_1_0.eContents().get(2);
private final RuleCall cRightExpression_UnaryParserRuleCall_1_0_2_0 = (RuleCall)cRightAssignment_1_0_2.eContents().get(0);
private final Group cGroup_1_1 = (Group)cAlternatives_1.eContents().get(1);
private final Keyword cSolidusKeyword_1_1_0 = (Keyword)cGroup_1_1.eContents().get(0);
private final Action cExpression_DivisionLeftAction_1_1_1 = (Action)cGroup_1_1.eContents().get(1);
private final Assignment cRightAssignment_1_1_2 = (Assignment)cGroup_1_1.eContents().get(2);
private final RuleCall cRightExpression_UnaryParserRuleCall_1_1_2_0 = (RuleCall)cRightAssignment_1_1_2.eContents().get(0);
private final Group cGroup_1_2 = (Group)cAlternatives_1.eContents().get(2);
private final Keyword cPercentSignKeyword_1_2_0 = (Keyword)cGroup_1_2.eContents().get(0);
private final Action cExpression_ModuloLeftAction_1_2_1 = (Action)cGroup_1_2.eContents().get(1);
private final Assignment cRightAssignment_1_2_2 = (Assignment)cGroup_1_2.eContents().get(2);
private final RuleCall cRightExpression_UnaryParserRuleCall_1_2_2_0 = (RuleCall)cRightAssignment_1_2_2.eContents().get(0);
//// multiplication/division, left associative, priority 5
//Expression_MultiplicationDivisionModulo returns Expression:
// Expression_Unary ("*" {Expression_Multiplication.left=current} right=Expression_Unary | "/"
// {Expression_Division.left=current} right=Expression_Unary | "%" {Expression_Modulo.left=current}
// right=Expression_Unary)*;
@Override public ParserRule getRule() { return rule; }
//Expression_Unary ("*" {Expression_Multiplication.left=current} right=Expression_Unary | "/"
//{Expression_Division.left=current} right=Expression_Unary | "%" {Expression_Modulo.left=current}
//right=Expression_Unary)*
public Group getGroup() { return cGroup; }
//Expression_Unary
public RuleCall getExpression_UnaryParserRuleCall_0() { return cExpression_UnaryParserRuleCall_0; }
//("*" {Expression_Multiplication.left=current} right=Expression_Unary | "/" {Expression_Division.left=current}
//right=Expression_Unary | "%" {Expression_Modulo.left=current} right=Expression_Unary)*
public Alternatives getAlternatives_1() { return cAlternatives_1; }
//"*" {Expression_Multiplication.left=current} right=Expression_Unary
public Group getGroup_1_0() { return cGroup_1_0; }
//"*"
public Keyword getAsteriskKeyword_1_0_0() { return cAsteriskKeyword_1_0_0; }
//{Expression_Multiplication.left=current}
public Action getExpression_MultiplicationLeftAction_1_0_1() { return cExpression_MultiplicationLeftAction_1_0_1; }
//right=Expression_Unary
public Assignment getRightAssignment_1_0_2() { return cRightAssignment_1_0_2; }
//Expression_Unary
public RuleCall getRightExpression_UnaryParserRuleCall_1_0_2_0() { return cRightExpression_UnaryParserRuleCall_1_0_2_0; }
//"/" {Expression_Division.left=current} right=Expression_Unary
public Group getGroup_1_1() { return cGroup_1_1; }
//"/"
public Keyword getSolidusKeyword_1_1_0() { return cSolidusKeyword_1_1_0; }
//{Expression_Division.left=current}
public Action getExpression_DivisionLeftAction_1_1_1() { return cExpression_DivisionLeftAction_1_1_1; }
//right=Expression_Unary
public Assignment getRightAssignment_1_1_2() { return cRightAssignment_1_1_2; }
//Expression_Unary
public RuleCall getRightExpression_UnaryParserRuleCall_1_1_2_0() { return cRightExpression_UnaryParserRuleCall_1_1_2_0; }
//"%" {Expression_Modulo.left=current} right=Expression_Unary
public Group getGroup_1_2() { return cGroup_1_2; }
//"%"
public Keyword getPercentSignKeyword_1_2_0() { return cPercentSignKeyword_1_2_0; }
//{Expression_Modulo.left=current}
public Action getExpression_ModuloLeftAction_1_2_1() { return cExpression_ModuloLeftAction_1_2_1; }
//right=Expression_Unary
public Assignment getRightAssignment_1_2_2() { return cRightAssignment_1_2_2; }
//Expression_Unary
public RuleCall getRightExpression_UnaryParserRuleCall_1_2_2_0() { return cRightExpression_UnaryParserRuleCall_1_2_2_0; }
}
public class Expression_UnaryElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_Unary");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final RuleCall cExpression_ExponentiationParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
private final Group cGroup_1 = (Group)cAlternatives.eContents().get(1);
private final Keyword cNotKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
private final Action cExpression_NegateAction_1_1 = (Action)cGroup_1.eContents().get(1);
private final Assignment cExpAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2);
private final RuleCall cExpExpression_UnaryParserRuleCall_1_2_0 = (RuleCall)cExpAssignment_1_2.eContents().get(0);
private final Group cGroup_2 = (Group)cAlternatives.eContents().get(2);
private final Keyword cNumberSignKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
private final Action cExpression_LengthAction_2_1 = (Action)cGroup_2.eContents().get(1);
private final Assignment cExpAssignment_2_2 = (Assignment)cGroup_2.eContents().get(2);
private final RuleCall cExpExpression_UnaryParserRuleCall_2_2_0 = (RuleCall)cExpAssignment_2_2.eContents().get(0);
private final Group cGroup_3 = (Group)cAlternatives.eContents().get(3);
private final Keyword cHyphenMinusKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Action cExpression_InvertAction_3_1 = (Action)cGroup_3.eContents().get(1);
private final Assignment cExpAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
private final RuleCall cExpExpression_UnaryParserRuleCall_3_2_0 = (RuleCall)cExpAssignment_3_2.eContents().get(0);
//// Unary operators: right associative, priority 6
//Expression_Unary returns Expression:
// Expression_Exponentiation | "not" {Expression_Negate} exp=Expression_Unary | "#" {Expression_Length}
// exp=Expression_Unary | "-" {Expression_Invert} exp=Expression_Unary;
@Override public ParserRule getRule() { return rule; }
//Expression_Exponentiation | "not" {Expression_Negate} exp=Expression_Unary | "#" {Expression_Length}
//exp=Expression_Unary | "-" {Expression_Invert} exp=Expression_Unary
public Alternatives getAlternatives() { return cAlternatives; }
//Expression_Exponentiation
public RuleCall getExpression_ExponentiationParserRuleCall_0() { return cExpression_ExponentiationParserRuleCall_0; }
//"not" {Expression_Negate} exp=Expression_Unary
public Group getGroup_1() { return cGroup_1; }
//"not"
public Keyword getNotKeyword_1_0() { return cNotKeyword_1_0; }
//{Expression_Negate}
public Action getExpression_NegateAction_1_1() { return cExpression_NegateAction_1_1; }
//exp=Expression_Unary
public Assignment getExpAssignment_1_2() { return cExpAssignment_1_2; }
//Expression_Unary
public RuleCall getExpExpression_UnaryParserRuleCall_1_2_0() { return cExpExpression_UnaryParserRuleCall_1_2_0; }
//"#" {Expression_Length} exp=Expression_Unary
public Group getGroup_2() { return cGroup_2; }
//"#"
public Keyword getNumberSignKeyword_2_0() { return cNumberSignKeyword_2_0; }
//{Expression_Length}
public Action getExpression_LengthAction_2_1() { return cExpression_LengthAction_2_1; }
//exp=Expression_Unary
public Assignment getExpAssignment_2_2() { return cExpAssignment_2_2; }
//Expression_Unary
public RuleCall getExpExpression_UnaryParserRuleCall_2_2_0() { return cExpExpression_UnaryParserRuleCall_2_2_0; }
//"-" {Expression_Invert} exp=Expression_Unary
public Group getGroup_3() { return cGroup_3; }
//"-"
public Keyword getHyphenMinusKeyword_3_0() { return cHyphenMinusKeyword_3_0; }
//{Expression_Invert}
public Action getExpression_InvertAction_3_1() { return cExpression_InvertAction_3_1; }
//exp=Expression_Unary
public Assignment getExpAssignment_3_2() { return cExpAssignment_3_2; }
//Expression_Unary
public RuleCall getExpExpression_UnaryParserRuleCall_3_2_0() { return cExpExpression_UnaryParserRuleCall_3_2_0; }
}
public class Expression_ExponentiationElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_Exponentiation");
private final Group cGroup = (Group)rule.eContents().get(1);
private final RuleCall cExpression_TerminalParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
private final Keyword cCircumflexAccentKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
private final Action cExpression_ExponentiationLeftAction_1_1 = (Action)cGroup_1.eContents().get(1);
private final Assignment cRightAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2);
private final RuleCall cRightExpression_ExponentiationParserRuleCall_1_2_0 = (RuleCall)cRightAssignment_1_2.eContents().get(0);
//// exponentiation: right associative, priority 7
//Expression_Exponentiation returns Expression:
// Expression_Terminal ("^" {Expression_Exponentiation.left=current} right=Expression_Exponentiation)?;
@Override public ParserRule getRule() { return rule; }
//Expression_Terminal ("^" {Expression_Exponentiation.left=current} right=Expression_Exponentiation)?
public Group getGroup() { return cGroup; }
//Expression_Terminal
public RuleCall getExpression_TerminalParserRuleCall_0() { return cExpression_TerminalParserRuleCall_0; }
//("^" {Expression_Exponentiation.left=current} right=Expression_Exponentiation)?
public Group getGroup_1() { return cGroup_1; }
//"^"
public Keyword getCircumflexAccentKeyword_1_0() { return cCircumflexAccentKeyword_1_0; }
//{Expression_Exponentiation.left=current}
public Action getExpression_ExponentiationLeftAction_1_1() { return cExpression_ExponentiationLeftAction_1_1; }
//right=Expression_Exponentiation
public Assignment getRightAssignment_1_2() { return cRightAssignment_1_2; }
//Expression_Exponentiation
public RuleCall getRightExpression_ExponentiationParserRuleCall_1_2_0() { return cRightExpression_ExponentiationParserRuleCall_1_2_0; }
}
public class Expression_TerminalElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_Terminal");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final RuleCall cExpression_NilParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
private final RuleCall cExpression_TrueParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
private final RuleCall cExpression_FalseParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
private final RuleCall cExpression_NumberParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
private final RuleCall cExpression_VarArgsParserRuleCall_4 = (RuleCall)cAlternatives.eContents().get(4);
private final RuleCall cExpression_StringParserRuleCall_5 = (RuleCall)cAlternatives.eContents().get(5);
private final RuleCall cExpression_FunctionParserRuleCall_6 = (RuleCall)cAlternatives.eContents().get(6);
private final RuleCall cExpression_TableConstructorParserRuleCall_7 = (RuleCall)cAlternatives.eContents().get(7);
private final RuleCall cExpression_FunctioncallParserRuleCall_8 = (RuleCall)cAlternatives.eContents().get(8);
//Expression_Terminal returns Expression:
// Expression_Nil | Expression_True | Expression_False | Expression_Number | Expression_VarArgs | Expression_String |
// Expression_Function | Expression_TableConstructor | Expression_Functioncall;
@Override public ParserRule getRule() { return rule; }
//Expression_Nil | Expression_True | Expression_False | Expression_Number | Expression_VarArgs | Expression_String |
//Expression_Function | Expression_TableConstructor | Expression_Functioncall
public Alternatives getAlternatives() { return cAlternatives; }
//Expression_Nil
public RuleCall getExpression_NilParserRuleCall_0() { return cExpression_NilParserRuleCall_0; }
//Expression_True
public RuleCall getExpression_TrueParserRuleCall_1() { return cExpression_TrueParserRuleCall_1; }
//Expression_False
public RuleCall getExpression_FalseParserRuleCall_2() { return cExpression_FalseParserRuleCall_2; }
//Expression_Number
public RuleCall getExpression_NumberParserRuleCall_3() { return cExpression_NumberParserRuleCall_3; }
//Expression_VarArgs
public RuleCall getExpression_VarArgsParserRuleCall_4() { return cExpression_VarArgsParserRuleCall_4; }
//Expression_String
public RuleCall getExpression_StringParserRuleCall_5() { return cExpression_StringParserRuleCall_5; }
//Expression_Function
public RuleCall getExpression_FunctionParserRuleCall_6() { return cExpression_FunctionParserRuleCall_6; }
//Expression_TableConstructor
public RuleCall getExpression_TableConstructorParserRuleCall_7() { return cExpression_TableConstructorParserRuleCall_7; }
//Expression_Functioncall
public RuleCall getExpression_FunctioncallParserRuleCall_8() { return cExpression_FunctioncallParserRuleCall_8; }
}
public class Expression_NilElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_Nil");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cNilKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Action cExpression_NilAction_1 = (Action)cGroup.eContents().get(1);
//Expression_Nil:
// "nil" {Expression_Nil};
@Override public ParserRule getRule() { return rule; }
//"nil" {Expression_Nil}
public Group getGroup() { return cGroup; }
//"nil"
public Keyword getNilKeyword_0() { return cNilKeyword_0; }
//{Expression_Nil}
public Action getExpression_NilAction_1() { return cExpression_NilAction_1; }
}
public class Expression_TrueElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_True");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cTrueKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Action cExpression_TrueAction_1 = (Action)cGroup.eContents().get(1);
//Expression_True:
// "true" {Expression_True};
@Override public ParserRule getRule() { return rule; }
//"true" {Expression_True}
public Group getGroup() { return cGroup; }
//"true"
public Keyword getTrueKeyword_0() { return cTrueKeyword_0; }
//{Expression_True}
public Action getExpression_TrueAction_1() { return cExpression_TrueAction_1; }
}
public class Expression_FalseElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_False");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cFalseKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Action cExpression_FalseAction_1 = (Action)cGroup.eContents().get(1);
//Expression_False:
// "false" {Expression_False};
@Override public ParserRule getRule() { return rule; }
//"false" {Expression_False}
public Group getGroup() { return cGroup; }
//"false"
public Keyword getFalseKeyword_0() { return cFalseKeyword_0; }
//{Expression_False}
public Action getExpression_FalseAction_1() { return cExpression_FalseAction_1; }
}
public class Expression_NumberElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_Number");
private final Assignment cValueAssignment = (Assignment)rule.eContents().get(1);
private final RuleCall cValueDoubleParserRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0);
//Expression_Number:
// value=Double;
@Override public ParserRule getRule() { return rule; }
//value=Double
public Assignment getValueAssignment() { return cValueAssignment; }
//Double
public RuleCall getValueDoubleParserRuleCall_0() { return cValueDoubleParserRuleCall_0; }
}
public class Expression_VarArgsElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_VarArgs");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cFullStopFullStopFullStopKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Action cExpression_VarArgsAction_1 = (Action)cGroup.eContents().get(1);
//Expression_VarArgs:
// "..." {Expression_VarArgs};
@Override public ParserRule getRule() { return rule; }
//"..." {Expression_VarArgs}
public Group getGroup() { return cGroup; }
//"..."
public Keyword getFullStopFullStopFullStopKeyword_0() { return cFullStopFullStopFullStopKeyword_0; }
//{Expression_VarArgs}
public Action getExpression_VarArgsAction_1() { return cExpression_VarArgsAction_1; }
}
public class Expression_StringElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_String");
private final Assignment cValueAssignment = (Assignment)rule.eContents().get(1);
private final RuleCall cValueSTRINGTerminalRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0);
//Expression_String:
// value=STRING;
@Override public ParserRule getRule() { return rule; }
//value=STRING
public Assignment getValueAssignment() { return cValueAssignment; }
//STRING
public RuleCall getValueSTRINGTerminalRuleCall_0() { return cValueSTRINGTerminalRuleCall_0; }
}
public class Expression_FunctionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_Function");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cFunctionKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cFunctionAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cFunctionFunctionParserRuleCall_1_0 = (RuleCall)cFunctionAssignment_1.eContents().get(0);
private final Keyword cEndKeyword_2 = (Keyword)cGroup.eContents().get(2);
//Expression_Function:
// "function" function=Function "end";
@Override public ParserRule getRule() { return rule; }
//"function" function=Function "end"
public Group getGroup() { return cGroup; }
//"function"
public Keyword getFunctionKeyword_0() { return cFunctionKeyword_0; }
//function=Function
public Assignment getFunctionAssignment_1() { return cFunctionAssignment_1; }
//Function
public RuleCall getFunctionFunctionParserRuleCall_1_0() { return cFunctionFunctionParserRuleCall_1_0; }
//"end"
public Keyword getEndKeyword_2() { return cEndKeyword_2; }
}
public class Expression_TableConstructorElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_TableConstructor");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cLeftCurlyBracketKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Action cExpression_TableConstructorAction_1 = (Action)cGroup.eContents().get(1);
private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
private final Assignment cFieldsAssignment_2_0 = (Assignment)cGroup_2.eContents().get(0);
private final RuleCall cFieldsFieldParserRuleCall_2_0_0 = (RuleCall)cFieldsAssignment_2_0.eContents().get(0);
private final Group cGroup_2_1 = (Group)cGroup_2.eContents().get(1);
private final Alternatives cAlternatives_2_1_0 = (Alternatives)cGroup_2_1.eContents().get(0);
private final Keyword cCommaKeyword_2_1_0_0 = (Keyword)cAlternatives_2_1_0.eContents().get(0);
private final Keyword cSemicolonKeyword_2_1_0_1 = (Keyword)cAlternatives_2_1_0.eContents().get(1);
private final Assignment cFieldsAssignment_2_1_1 = (Assignment)cGroup_2_1.eContents().get(1);
private final RuleCall cFieldsFieldParserRuleCall_2_1_1_0 = (RuleCall)cFieldsAssignment_2_1_1.eContents().get(0);
private final Alternatives cAlternatives_2_2 = (Alternatives)cGroup_2.eContents().get(2);
private final Keyword cCommaKeyword_2_2_0 = (Keyword)cAlternatives_2_2.eContents().get(0);
private final Keyword cSemicolonKeyword_2_2_1 = (Keyword)cAlternatives_2_2.eContents().get(1);
private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
//Expression_TableConstructor:
// "{" {Expression_TableConstructor} (fields+=Field (("," | ";") fields+=Field)* ("," | ";")?)? "}";
@Override public ParserRule getRule() { return rule; }
//"{" {Expression_TableConstructor} (fields+=Field (("," | ";") fields+=Field)* ("," | ";")?)? "}"
public Group getGroup() { return cGroup; }
//"{"
public Keyword getLeftCurlyBracketKeyword_0() { return cLeftCurlyBracketKeyword_0; }
//{Expression_TableConstructor}
public Action getExpression_TableConstructorAction_1() { return cExpression_TableConstructorAction_1; }
//(fields+=Field (("," | ";") fields+=Field)* ("," | ";")?)?
public Group getGroup_2() { return cGroup_2; }
//fields+=Field
public Assignment getFieldsAssignment_2_0() { return cFieldsAssignment_2_0; }
//Field
public RuleCall getFieldsFieldParserRuleCall_2_0_0() { return cFieldsFieldParserRuleCall_2_0_0; }
//(("," | ";") fields+=Field)*
public Group getGroup_2_1() { return cGroup_2_1; }
//"," | ";"
public Alternatives getAlternatives_2_1_0() { return cAlternatives_2_1_0; }
//","
public Keyword getCommaKeyword_2_1_0_0() { return cCommaKeyword_2_1_0_0; }
//";"
public Keyword getSemicolonKeyword_2_1_0_1() { return cSemicolonKeyword_2_1_0_1; }
//fields+=Field
public Assignment getFieldsAssignment_2_1_1() { return cFieldsAssignment_2_1_1; }
//Field
public RuleCall getFieldsFieldParserRuleCall_2_1_1_0() { return cFieldsFieldParserRuleCall_2_1_1_0; }
//("," | ";")?
public Alternatives getAlternatives_2_2() { return cAlternatives_2_2; }
//","
public Keyword getCommaKeyword_2_2_0() { return cCommaKeyword_2_2_0; }
//";"
public Keyword getSemicolonKeyword_2_2_1() { return cSemicolonKeyword_2_2_1; }
//"}"
public Keyword getRightCurlyBracketKeyword_3() { return cRightCurlyBracketKeyword_3; }
}
public class Expression_FunctioncallElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_Functioncall");
private final Group cGroup = (Group)rule.eContents().get(1);
private final RuleCall cExpression_AccessMemberOrArrayElementParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
private final Group cGroup_1_0 = (Group)cAlternatives_1.eContents().get(0);
private final Keyword cColonKeyword_1_0_0 = (Keyword)cGroup_1_0.eContents().get(0);
private final Action cExpression_CallMemberFunctionObjectAction_1_0_1 = (Action)cGroup_1_0.eContents().get(1);
private final Assignment cMemberFunctionNameAssignment_1_0_2 = (Assignment)cGroup_1_0.eContents().get(2);
private final RuleCall cMemberFunctionNameIDTerminalRuleCall_1_0_2_0 = (RuleCall)cMemberFunctionNameAssignment_1_0_2.eContents().get(0);
private final Assignment cArgumentsAssignment_1_0_3 = (Assignment)cGroup_1_0.eContents().get(3);
private final RuleCall cArgumentsFunctioncall_ArgumentsParserRuleCall_1_0_3_0 = (RuleCall)cArgumentsAssignment_1_0_3.eContents().get(0);
private final Group cGroup_1_1 = (Group)cAlternatives_1.eContents().get(1);
private final Action cExpression_CallFunctionObjectAction_1_1_0 = (Action)cGroup_1_1.eContents().get(0);
private final Assignment cArgumentsAssignment_1_1_1 = (Assignment)cGroup_1_1.eContents().get(1);
private final RuleCall cArgumentsFunctioncall_ArgumentsParserRuleCall_1_1_1_0 = (RuleCall)cArgumentsAssignment_1_1_1.eContents().get(0);
//// Function calls, left associative, single call only, priority 9
//Expression_Functioncall returns Expression:
// Expression_AccessMemberOrArrayElement (":" {Expression_CallMemberFunction.object=current} memberFunctionName=ID
// arguments=Functioncall_Arguments // Member-Funktionsaufruf
// // Aufruf eines Funktionspointer:
// | {Expression_CallFunction.object=current} arguments=Functioncall_Arguments)?;
@Override public ParserRule getRule() { return rule; }
//Expression_AccessMemberOrArrayElement (":" {Expression_CallMemberFunction.object=current} memberFunctionName=ID
//arguments=Functioncall_Arguments // Member-Funktionsaufruf
//// Aufruf eines Funktionspointer:
//| {Expression_CallFunction.object=current} arguments=Functioncall_Arguments)?
public Group getGroup() { return cGroup; }
//Expression_AccessMemberOrArrayElement
public RuleCall getExpression_AccessMemberOrArrayElementParserRuleCall_0() { return cExpression_AccessMemberOrArrayElementParserRuleCall_0; }
//(=> ":" {Expression_CallMemberFunction.object=current} memberFunctionName=ID arguments=Functioncall_Arguments // Member-Funktionsaufruf
//// Aufruf eines Funktionspointer:
//| {Expression_CallFunction.object=current} arguments=Functioncall_Arguments)?
public Alternatives getAlternatives_1() { return cAlternatives_1; }
//=> ":" {Expression_CallMemberFunction.object=current} memberFunctionName=ID arguments=Functioncall_Arguments
public Group getGroup_1_0() { return cGroup_1_0; }
//=> ":"
public Keyword getColonKeyword_1_0_0() { return cColonKeyword_1_0_0; }
//{Expression_CallMemberFunction.object=current}
public Action getExpression_CallMemberFunctionObjectAction_1_0_1() { return cExpression_CallMemberFunctionObjectAction_1_0_1; }
//memberFunctionName=ID
public Assignment getMemberFunctionNameAssignment_1_0_2() { return cMemberFunctionNameAssignment_1_0_2; }
//ID
public RuleCall getMemberFunctionNameIDTerminalRuleCall_1_0_2_0() { return cMemberFunctionNameIDTerminalRuleCall_1_0_2_0; }
//arguments=Functioncall_Arguments
public Assignment getArgumentsAssignment_1_0_3() { return cArgumentsAssignment_1_0_3; }
//Functioncall_Arguments
public RuleCall getArgumentsFunctioncall_ArgumentsParserRuleCall_1_0_3_0() { return cArgumentsFunctioncall_ArgumentsParserRuleCall_1_0_3_0; }
//{Expression_CallFunction.object=current} arguments=Functioncall_Arguments
public Group getGroup_1_1() { return cGroup_1_1; }
//{Expression_CallFunction.object=current}
public Action getExpression_CallFunctionObjectAction_1_1_0() { return cExpression_CallFunctionObjectAction_1_1_0; }
//arguments=Functioncall_Arguments
public Assignment getArgumentsAssignment_1_1_1() { return cArgumentsAssignment_1_1_1; }
//Functioncall_Arguments
public RuleCall getArgumentsFunctioncall_ArgumentsParserRuleCall_1_1_1_0() { return cArgumentsFunctioncall_ArgumentsParserRuleCall_1_1_1_0; }
}
public class Expression_AccessMemberOrArrayElementElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_AccessMemberOrArrayElement");
private final Group cGroup = (Group)rule.eContents().get(1);
private final RuleCall cExpression_VariableNameParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
private final Group cGroup_1_0 = (Group)cAlternatives_1.eContents().get(0);
private final Keyword cLeftSquareBracketKeyword_1_0_0 = (Keyword)cGroup_1_0.eContents().get(0);
private final Action cExpression_AccessArrayArrayAction_1_0_1 = (Action)cGroup_1_0.eContents().get(1);
private final Assignment cIndexAssignment_1_0_2 = (Assignment)cGroup_1_0.eContents().get(2);
private final RuleCall cIndexExpressionParserRuleCall_1_0_2_0 = (RuleCall)cIndexAssignment_1_0_2.eContents().get(0);
private final Keyword cRightSquareBracketKeyword_1_0_3 = (Keyword)cGroup_1_0.eContents().get(3);
private final Group cGroup_1_1 = (Group)cAlternatives_1.eContents().get(1);
private final Keyword cFullStopKeyword_1_1_0 = (Keyword)cGroup_1_1.eContents().get(0);
private final Action cExpression_AccessMemberObjectAction_1_1_1 = (Action)cGroup_1_1.eContents().get(1);
private final Assignment cMemberNameAssignment_1_1_2 = (Assignment)cGroup_1_1.eContents().get(2);
private final RuleCall cMemberNameIDTerminalRuleCall_1_1_2_0 = (RuleCall)cMemberNameAssignment_1_1_2.eContents().get(0);
//// Access a member or array element, left associative, chaining possible, priority 10
//Expression_AccessMemberOrArrayElement returns Expression:
// Expression_VariableName ("[" {Expression_AccessArray.array=current} index=Expression "]" // An expression accessing an element in a variable array
// // Access a member variable using multiple parts separated by "."
// | "." {Expression_AccessMember.object=current} memberName=ID)*;
@Override public ParserRule getRule() { return rule; }
//Expression_VariableName ("[" {Expression_AccessArray.array=current} index=Expression "]" // An expression accessing an element in a variable array
//// Access a member variable using multiple parts separated by "."
//| "." {Expression_AccessMember.object=current} memberName=ID)*
public Group getGroup() { return cGroup; }
//Expression_VariableName
public RuleCall getExpression_VariableNameParserRuleCall_0() { return cExpression_VariableNameParserRuleCall_0; }
//("[" {Expression_AccessArray.array=current} index=Expression "]" // An expression accessing an element in a variable array
//// Access a member variable using multiple parts separated by "."
//| "." {Expression_AccessMember.object=current} memberName=ID)*
public Alternatives getAlternatives_1() { return cAlternatives_1; }
//"[" {Expression_AccessArray.array=current} index=Expression "]"
public Group getGroup_1_0() { return cGroup_1_0; }
//"["
public Keyword getLeftSquareBracketKeyword_1_0_0() { return cLeftSquareBracketKeyword_1_0_0; }
//{Expression_AccessArray.array=current}
public Action getExpression_AccessArrayArrayAction_1_0_1() { return cExpression_AccessArrayArrayAction_1_0_1; }
//index=Expression
public Assignment getIndexAssignment_1_0_2() { return cIndexAssignment_1_0_2; }
//Expression
public RuleCall getIndexExpressionParserRuleCall_1_0_2_0() { return cIndexExpressionParserRuleCall_1_0_2_0; }
//"]"
public Keyword getRightSquareBracketKeyword_1_0_3() { return cRightSquareBracketKeyword_1_0_3; }
//"." {Expression_AccessMember.object=current} memberName=ID
public Group getGroup_1_1() { return cGroup_1_1; }
//"."
public Keyword getFullStopKeyword_1_1_0() { return cFullStopKeyword_1_1_0; }
//{Expression_AccessMember.object=current}
public Action getExpression_AccessMemberObjectAction_1_1_1() { return cExpression_AccessMemberObjectAction_1_1_1; }
//memberName=ID
public Assignment getMemberNameAssignment_1_1_2() { return cMemberNameAssignment_1_1_2; }
//ID
public RuleCall getMemberNameIDTerminalRuleCall_1_1_2_0() { return cMemberNameIDTerminalRuleCall_1_1_2_0; }
}
public class Expression_VariableNameElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression_VariableName");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final Group cGroup_0 = (Group)cAlternatives.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_0_0 = (Keyword)cGroup_0.eContents().get(0);
private final RuleCall cExpressionParserRuleCall_0_1 = (RuleCall)cGroup_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_0_2 = (Keyword)cGroup_0.eContents().get(2);
private final Group cGroup_1 = (Group)cAlternatives.eContents().get(1);
private final Action cExpression_VariableNameAction_1_0 = (Action)cGroup_1.eContents().get(0);
private final Assignment cVariableAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
private final RuleCall cVariableIDTerminalRuleCall_1_1_0 = (RuleCall)cVariableAssignment_1_1.eContents().get(0);
//// access a variable, terminal expression, priority 11
//// Delegate to top of expression rule chain for bracketed expressions
//Expression_VariableName returns Expression:
// "(" Expression ")" | {Expression_VariableName} variable=ID;
@Override public ParserRule getRule() { return rule; }
//"(" Expression ")" | {Expression_VariableName} variable=ID
public Alternatives getAlternatives() { return cAlternatives; }
//"(" Expression ")"
public Group getGroup_0() { return cGroup_0; }
//"("
public Keyword getLeftParenthesisKeyword_0_0() { return cLeftParenthesisKeyword_0_0; }
//Expression
public RuleCall getExpressionParserRuleCall_0_1() { return cExpressionParserRuleCall_0_1; }
//")"
public Keyword getRightParenthesisKeyword_0_2() { return cRightParenthesisKeyword_0_2; }
//{Expression_VariableName} variable=ID
public Group getGroup_1() { return cGroup_1; }
//{Expression_VariableName}
public Action getExpression_VariableNameAction_1_0() { return cExpression_VariableNameAction_1_0; }
//variable=ID
public Assignment getVariableAssignment_1_1() { return cVariableAssignment_1_1; }
//ID
public RuleCall getVariableIDTerminalRuleCall_1_1_0() { return cVariableIDTerminalRuleCall_1_1_0; }
}
public class FunctionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Function");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cLeftParenthesisKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
private final Assignment cParametersAssignment_1_0 = (Assignment)cGroup_1.eContents().get(0);
private final RuleCall cParametersIDTerminalRuleCall_1_0_0 = (RuleCall)cParametersAssignment_1_0.eContents().get(0);
private final Group cGroup_1_1 = (Group)cGroup_1.eContents().get(1);
private final Keyword cCommaKeyword_1_1_0 = (Keyword)cGroup_1_1.eContents().get(0);
private final Assignment cParametersAssignment_1_1_1 = (Assignment)cGroup_1_1.eContents().get(1);
private final RuleCall cParametersIDTerminalRuleCall_1_1_1_0 = (RuleCall)cParametersAssignment_1_1_1.eContents().get(0);
private final Keyword cCommaKeyword_1_2 = (Keyword)cGroup_1.eContents().get(2);
private final Assignment cVarArgsAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final Keyword cVarArgsFullStopFullStopFullStopKeyword_2_0 = (Keyword)cVarArgsAssignment_2.eContents().get(0);
private final Keyword cRightParenthesisKeyword_3 = (Keyword)cGroup.eContents().get(3);
private final Assignment cBodyAssignment_4 = (Assignment)cGroup.eContents().get(4);
private final RuleCall cBodyBlockParserRuleCall_4_0 = (RuleCall)cBodyAssignment_4.eContents().get(0);
//// ****************************************************
//// FUNCTIONS
//// ****************************************************
//Function:
// "(" (parameters+=ID ("," parameters+=ID)* ","?)? varArgs?="..."? ")" body=Block;
@Override public ParserRule getRule() { return rule; }
//"(" (parameters+=ID ("," parameters+=ID)* ","?)? varArgs?="..."? ")" body=Block
public Group getGroup() { return cGroup; }
//"("
public Keyword getLeftParenthesisKeyword_0() { return cLeftParenthesisKeyword_0; }
//(parameters+=ID ("," parameters+=ID)* ","?)?
public Group getGroup_1() { return cGroup_1; }
//parameters+=ID
public Assignment getParametersAssignment_1_0() { return cParametersAssignment_1_0; }
//ID
public RuleCall getParametersIDTerminalRuleCall_1_0_0() { return cParametersIDTerminalRuleCall_1_0_0; }
//("," parameters+=ID)*
public Group getGroup_1_1() { return cGroup_1_1; }
//","
public Keyword getCommaKeyword_1_1_0() { return cCommaKeyword_1_1_0; }
//parameters+=ID
public Assignment getParametersAssignment_1_1_1() { return cParametersAssignment_1_1_1; }
//ID
public RuleCall getParametersIDTerminalRuleCall_1_1_1_0() { return cParametersIDTerminalRuleCall_1_1_1_0; }
//","?
public Keyword getCommaKeyword_1_2() { return cCommaKeyword_1_2; }
//varArgs?="..."?
public Assignment getVarArgsAssignment_2() { return cVarArgsAssignment_2; }
//"..."
public Keyword getVarArgsFullStopFullStopFullStopKeyword_2_0() { return cVarArgsFullStopFullStopFullStopKeyword_2_0; }
//")"
public Keyword getRightParenthesisKeyword_3() { return cRightParenthesisKeyword_3; }
//body=Block
public Assignment getBodyAssignment_4() { return cBodyAssignment_4; }
//Block
public RuleCall getBodyBlockParserRuleCall_4_0() { return cBodyBlockParserRuleCall_4_0; }
}
public class Functioncall_ArgumentsElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Functioncall_Arguments");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cFunctioncall_ArgumentsAction_0 = (Action)cGroup.eContents().get(0);
private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
private final Group cGroup_1_0 = (Group)cAlternatives_1.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_1_0_0 = (Keyword)cGroup_1_0.eContents().get(0);
private final Group cGroup_1_0_1 = (Group)cGroup_1_0.eContents().get(1);
private final Assignment cArgumentsAssignment_1_0_1_0 = (Assignment)cGroup_1_0_1.eContents().get(0);
private final RuleCall cArgumentsExpressionParserRuleCall_1_0_1_0_0 = (RuleCall)cArgumentsAssignment_1_0_1_0.eContents().get(0);
private final Group cGroup_1_0_1_1 = (Group)cGroup_1_0_1.eContents().get(1);
private final Keyword cCommaKeyword_1_0_1_1_0 = (Keyword)cGroup_1_0_1_1.eContents().get(0);
private final Assignment cArgumentsAssignment_1_0_1_1_1 = (Assignment)cGroup_1_0_1_1.eContents().get(1);
private final RuleCall cArgumentsExpressionParserRuleCall_1_0_1_1_1_0 = (RuleCall)cArgumentsAssignment_1_0_1_1_1.eContents().get(0);
private final Keyword cRightParenthesisKeyword_1_0_2 = (Keyword)cGroup_1_0.eContents().get(2);
private final Assignment cArgumentsAssignment_1_1 = (Assignment)cAlternatives_1.eContents().get(1);
private final RuleCall cArgumentsExpression_TableConstructorParserRuleCall_1_1_0 = (RuleCall)cArgumentsAssignment_1_1.eContents().get(0);
private final Assignment cArgumentsAssignment_1_2 = (Assignment)cAlternatives_1.eContents().get(2);
private final RuleCall cArgumentsExpression_StringParserRuleCall_1_2_0 = (RuleCall)cArgumentsAssignment_1_2.eContents().get(0);
//// Some syntactic sugar: strings and field can be passed as parameters without bracket
//Functioncall_Arguments:
// {Functioncall_Arguments} ("(" (arguments+=Expression ("," arguments+=Expression)*)? ")" |
// arguments+=Expression_TableConstructor | arguments+=Expression_String);
@Override public ParserRule getRule() { return rule; }
//{Functioncall_Arguments} ("(" (arguments+=Expression ("," arguments+=Expression)*)? ")" |
//arguments+=Expression_TableConstructor | arguments+=Expression_String)
public Group getGroup() { return cGroup; }
//{Functioncall_Arguments}
public Action getFunctioncall_ArgumentsAction_0() { return cFunctioncall_ArgumentsAction_0; }
//"(" (arguments+=Expression ("," arguments+=Expression)*)? ")" | arguments+=Expression_TableConstructor |
//arguments+=Expression_String
public Alternatives getAlternatives_1() { return cAlternatives_1; }
//"(" (arguments+=Expression ("," arguments+=Expression)*)? ")"
public Group getGroup_1_0() { return cGroup_1_0; }
//"("
public Keyword getLeftParenthesisKeyword_1_0_0() { return cLeftParenthesisKeyword_1_0_0; }
//(arguments+=Expression ("," arguments+=Expression)*)?
public Group getGroup_1_0_1() { return cGroup_1_0_1; }
//arguments+=Expression
public Assignment getArgumentsAssignment_1_0_1_0() { return cArgumentsAssignment_1_0_1_0; }
//Expression
public RuleCall getArgumentsExpressionParserRuleCall_1_0_1_0_0() { return cArgumentsExpressionParserRuleCall_1_0_1_0_0; }
//("," arguments+=Expression)*
public Group getGroup_1_0_1_1() { return cGroup_1_0_1_1; }
//","
public Keyword getCommaKeyword_1_0_1_1_0() { return cCommaKeyword_1_0_1_1_0; }
//arguments+=Expression
public Assignment getArgumentsAssignment_1_0_1_1_1() { return cArgumentsAssignment_1_0_1_1_1; }
//Expression
public RuleCall getArgumentsExpressionParserRuleCall_1_0_1_1_1_0() { return cArgumentsExpressionParserRuleCall_1_0_1_1_1_0; }
//")"
public Keyword getRightParenthesisKeyword_1_0_2() { return cRightParenthesisKeyword_1_0_2; }
//arguments+=Expression_TableConstructor
public Assignment getArgumentsAssignment_1_1() { return cArgumentsAssignment_1_1; }
//Expression_TableConstructor
public RuleCall getArgumentsExpression_TableConstructorParserRuleCall_1_1_0() { return cArgumentsExpression_TableConstructorParserRuleCall_1_1_0; }
//arguments+=Expression_String
public Assignment getArgumentsAssignment_1_2() { return cArgumentsAssignment_1_2; }
//Expression_String
public RuleCall getArgumentsExpression_StringParserRuleCall_1_2_0() { return cArgumentsExpression_StringParserRuleCall_1_2_0; }
}
public class FieldElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Field");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final RuleCall cField_AddEntryToTable_BracketsParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
private final RuleCall cField_AddEntryToTableParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
private final RuleCall cField_AppendEntryToTableParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
//// ****************************************************
//// TABLES/FIELDS
//// ****************************************************
//Field:
// Field_AddEntryToTable_Brackets | Field_AddEntryToTable | Field_AppendEntryToTable;
@Override public ParserRule getRule() { return rule; }
//Field_AddEntryToTable_Brackets | Field_AddEntryToTable | Field_AppendEntryToTable
public Alternatives getAlternatives() { return cAlternatives; }
//Field_AddEntryToTable_Brackets
public RuleCall getField_AddEntryToTable_BracketsParserRuleCall_0() { return cField_AddEntryToTable_BracketsParserRuleCall_0; }
//Field_AddEntryToTable
public RuleCall getField_AddEntryToTableParserRuleCall_1() { return cField_AddEntryToTableParserRuleCall_1; }
//Field_AppendEntryToTable
public RuleCall getField_AppendEntryToTableParserRuleCall_2() { return cField_AppendEntryToTableParserRuleCall_2; }
}
public class Field_AddEntryToTable_BracketsElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Field_AddEntryToTable_Brackets");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cLeftSquareBracketKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cIndexExpressionAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cIndexExpressionExpressionParserRuleCall_1_0 = (RuleCall)cIndexExpressionAssignment_1.eContents().get(0);
private final Keyword cRightSquareBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Keyword cEqualsSignKeyword_3 = (Keyword)cGroup.eContents().get(3);
private final Assignment cValueAssignment_4 = (Assignment)cGroup.eContents().get(4);
private final RuleCall cValueExpressionParserRuleCall_4_0 = (RuleCall)cValueAssignment_4.eContents().get(0);
//// Each field of the form "[exp1] = exp2" adds to the new table an entry with key exp1 and value exp2
//Field_AddEntryToTable_Brackets:
// "[" indexExpression=Expression "]" "=" value=Expression;
@Override public ParserRule getRule() { return rule; }
//"[" indexExpression=Expression "]" "=" value=Expression
public Group getGroup() { return cGroup; }
//"["
public Keyword getLeftSquareBracketKeyword_0() { return cLeftSquareBracketKeyword_0; }
//indexExpression=Expression
public Assignment getIndexExpressionAssignment_1() { return cIndexExpressionAssignment_1; }
//Expression
public RuleCall getIndexExpressionExpressionParserRuleCall_1_0() { return cIndexExpressionExpressionParserRuleCall_1_0; }
//"]"
public Keyword getRightSquareBracketKeyword_2() { return cRightSquareBracketKeyword_2; }
//"="
public Keyword getEqualsSignKeyword_3() { return cEqualsSignKeyword_3; }
//value=Expression
public Assignment getValueAssignment_4() { return cValueAssignment_4; }
//Expression
public RuleCall getValueExpressionParserRuleCall_4_0() { return cValueExpressionParserRuleCall_4_0; }
}
public class Field_AddEntryToTableElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Field_AddEntryToTable");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cKeyAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final RuleCall cKeyIDTerminalRuleCall_0_0 = (RuleCall)cKeyAssignment_0.eContents().get(0);
private final Keyword cEqualsSignKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cValueAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final RuleCall cValueExpressionParserRuleCall_2_0 = (RuleCall)cValueAssignment_2.eContents().get(0);
//// A field of the form "name = exp" is equivalent to ["name"] = exp
//Field_AddEntryToTable:
// key=ID "=" value=Expression;
@Override public ParserRule getRule() { return rule; }
//key=ID "=" value=Expression
public Group getGroup() { return cGroup; }
//key=ID
public Assignment getKeyAssignment_0() { return cKeyAssignment_0; }
//ID
public RuleCall getKeyIDTerminalRuleCall_0_0() { return cKeyIDTerminalRuleCall_0_0; }
//"="
public Keyword getEqualsSignKeyword_1() { return cEqualsSignKeyword_1; }
//value=Expression
public Assignment getValueAssignment_2() { return cValueAssignment_2; }
//Expression
public RuleCall getValueExpressionParserRuleCall_2_0() { return cValueExpressionParserRuleCall_2_0; }
}
public class Field_AppendEntryToTableElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Field_AppendEntryToTable");
private final Assignment cValueAssignment = (Assignment)rule.eContents().get(1);
private final RuleCall cValueExpressionParserRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0);
//// fields of the form "exp" are equivalent to [i] = exp
//Field_AppendEntryToTable:
// value=Expression;
@Override public ParserRule getRule() { return rule; }
//value=Expression
public Assignment getValueAssignment() { return cValueAssignment; }
//Expression
public RuleCall getValueExpressionParserRuleCall_0() { return cValueExpressionParserRuleCall_0; }
}
public class ActivityElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Activity");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cActivityAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cActivityKeyword_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 Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Keyword cLeftParenthesisKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Assignment cInputsAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
private final RuleCall cInputsVariableParserRuleCall_3_1_0 = (RuleCall)cInputsAssignment_3_1.eContents().get(0);
private final Group cGroup_3_2 = (Group)cGroup_3.eContents().get(2);
private final Keyword cCommaKeyword_3_2_0 = (Keyword)cGroup_3_2.eContents().get(0);
private final Assignment cInputsAssignment_3_2_1 = (Assignment)cGroup_3_2.eContents().get(1);
private final RuleCall cInputsVariableParserRuleCall_3_2_1_0 = (RuleCall)cInputsAssignment_3_2_1.eContents().get(0);
private final Keyword cRightParenthesisKeyword_3_3 = (Keyword)cGroup_3.eContents().get(3);
private final Keyword cLeftCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
private final Assignment cLocalsAssignment_5_0 = (Assignment)cGroup_5.eContents().get(0);
private final RuleCall cLocalsVariableParserRuleCall_5_0_0 = (RuleCall)cLocalsAssignment_5_0.eContents().get(0);
private final Group cGroup_5_1 = (Group)cGroup_5.eContents().get(1);
private final Keyword cCommaKeyword_5_1_0 = (Keyword)cGroup_5_1.eContents().get(0);
private final Assignment cLocalsAssignment_5_1_1 = (Assignment)cGroup_5_1.eContents().get(1);
private final RuleCall cLocalsVariableParserRuleCall_5_1_1_0 = (RuleCall)cLocalsAssignment_5_1_1.eContents().get(0);
private final Group cGroup_6 = (Group)cGroup.eContents().get(6);
private final Keyword cNodesKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0);
private final Keyword cLeftCurlyBracketKeyword_6_1 = (Keyword)cGroup_6.eContents().get(1);
private final Assignment cNodesAssignment_6_2 = (Assignment)cGroup_6.eContents().get(2);
private final RuleCall cNodesActivityNodeParserRuleCall_6_2_0 = (RuleCall)cNodesAssignment_6_2.eContents().get(0);
private final Group cGroup_6_3 = (Group)cGroup_6.eContents().get(3);
private final Keyword cCommaKeyword_6_3_0 = (Keyword)cGroup_6_3.eContents().get(0);
private final Assignment cNodesAssignment_6_3_1 = (Assignment)cGroup_6_3.eContents().get(1);
private final RuleCall cNodesActivityNodeParserRuleCall_6_3_1_0 = (RuleCall)cNodesAssignment_6_3_1.eContents().get(0);
private final Keyword cRightCurlyBracketKeyword_6_4 = (Keyword)cGroup_6.eContents().get(4);
private final Group cGroup_7 = (Group)cGroup.eContents().get(7);
private final Keyword cEdgesKeyword_7_0 = (Keyword)cGroup_7.eContents().get(0);
private final Keyword cLeftCurlyBracketKeyword_7_1 = (Keyword)cGroup_7.eContents().get(1);
private final Assignment cEdgesAssignment_7_2 = (Assignment)cGroup_7.eContents().get(2);
private final RuleCall cEdgesActivityEdgeParserRuleCall_7_2_0 = (RuleCall)cEdgesAssignment_7_2.eContents().get(0);
private final Group cGroup_7_3 = (Group)cGroup_7.eContents().get(3);
private final Keyword cCommaKeyword_7_3_0 = (Keyword)cGroup_7_3.eContents().get(0);
private final Assignment cEdgesAssignment_7_3_1 = (Assignment)cGroup_7_3.eContents().get(1);
private final RuleCall cEdgesActivityEdgeParserRuleCall_7_3_1_0 = (RuleCall)cEdgesAssignment_7_3_1.eContents().get(0);
private final Keyword cRightCurlyBracketKeyword_7_4 = (Keyword)cGroup_7.eContents().get(4);
private final Keyword cRightCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8);
//// ****************************************************
//// TERMINALS
//// ****************************************************
//// Identifiers can be any string of letters, digits, and underscores, but mustn't begin with a digit.
//Activity:
// {Activity} "activity" name=ID ("(" inputs+=Variable ("," inputs+=Variable)* ")")? "{" (locals+=Variable (","
// locals+=Variable)*)? ("nodes" "{" nodes+=ActivityNode ("," nodes+=ActivityNode)* "}")? ("edges" "{"
// edges+=ActivityEdge ("," edges+=ActivityEdge)* "}")? "}";
@Override public ParserRule getRule() { return rule; }
//{Activity} "activity" name=ID ("(" inputs+=Variable ("," inputs+=Variable)* ")")? "{" (locals+=Variable (","
//locals+=Variable)*)? ("nodes" "{" nodes+=ActivityNode ("," nodes+=ActivityNode)* "}")? ("edges" "{" edges+=ActivityEdge
//("," edges+=ActivityEdge)* "}")? "}"
public Group getGroup() { return cGroup; }
//{Activity}
public Action getActivityAction_0() { return cActivityAction_0; }
//"activity"
public Keyword getActivityKeyword_1() { return cActivityKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//("(" inputs+=Variable ("," inputs+=Variable)* ")")?
public Group getGroup_3() { return cGroup_3; }
//"("
public Keyword getLeftParenthesisKeyword_3_0() { return cLeftParenthesisKeyword_3_0; }
//inputs+=Variable
public Assignment getInputsAssignment_3_1() { return cInputsAssignment_3_1; }
//Variable
public RuleCall getInputsVariableParserRuleCall_3_1_0() { return cInputsVariableParserRuleCall_3_1_0; }
//("," inputs+=Variable)*
public Group getGroup_3_2() { return cGroup_3_2; }
//","
public Keyword getCommaKeyword_3_2_0() { return cCommaKeyword_3_2_0; }
//inputs+=Variable
public Assignment getInputsAssignment_3_2_1() { return cInputsAssignment_3_2_1; }
//Variable
public RuleCall getInputsVariableParserRuleCall_3_2_1_0() { return cInputsVariableParserRuleCall_3_2_1_0; }
//")"
public Keyword getRightParenthesisKeyword_3_3() { return cRightParenthesisKeyword_3_3; }
//"{"
public Keyword getLeftCurlyBracketKeyword_4() { return cLeftCurlyBracketKeyword_4; }
//(locals+=Variable ("," locals+=Variable)*)?
public Group getGroup_5() { return cGroup_5; }
//locals+=Variable
public Assignment getLocalsAssignment_5_0() { return cLocalsAssignment_5_0; }
//Variable
public RuleCall getLocalsVariableParserRuleCall_5_0_0() { return cLocalsVariableParserRuleCall_5_0_0; }
//("," locals+=Variable)*
public Group getGroup_5_1() { return cGroup_5_1; }
//","
public Keyword getCommaKeyword_5_1_0() { return cCommaKeyword_5_1_0; }
//locals+=Variable
public Assignment getLocalsAssignment_5_1_1() { return cLocalsAssignment_5_1_1; }
//Variable
public RuleCall getLocalsVariableParserRuleCall_5_1_1_0() { return cLocalsVariableParserRuleCall_5_1_1_0; }
//("nodes" "{" nodes+=ActivityNode ("," nodes+=ActivityNode)* "}")?
public Group getGroup_6() { return cGroup_6; }
//"nodes"
public Keyword getNodesKeyword_6_0() { return cNodesKeyword_6_0; }
//"{"
public Keyword getLeftCurlyBracketKeyword_6_1() { return cLeftCurlyBracketKeyword_6_1; }
//nodes+=ActivityNode
public Assignment getNodesAssignment_6_2() { return cNodesAssignment_6_2; }
//ActivityNode
public RuleCall getNodesActivityNodeParserRuleCall_6_2_0() { return cNodesActivityNodeParserRuleCall_6_2_0; }
//("," nodes+=ActivityNode)*
public Group getGroup_6_3() { return cGroup_6_3; }
//","
public Keyword getCommaKeyword_6_3_0() { return cCommaKeyword_6_3_0; }
//nodes+=ActivityNode
public Assignment getNodesAssignment_6_3_1() { return cNodesAssignment_6_3_1; }
//ActivityNode
public RuleCall getNodesActivityNodeParserRuleCall_6_3_1_0() { return cNodesActivityNodeParserRuleCall_6_3_1_0; }
//"}"
public Keyword getRightCurlyBracketKeyword_6_4() { return cRightCurlyBracketKeyword_6_4; }
//("edges" "{" edges+=ActivityEdge ("," edges+=ActivityEdge)* "}")?
public Group getGroup_7() { return cGroup_7; }
//"edges"
public Keyword getEdgesKeyword_7_0() { return cEdgesKeyword_7_0; }
//"{"
public Keyword getLeftCurlyBracketKeyword_7_1() { return cLeftCurlyBracketKeyword_7_1; }
//edges+=ActivityEdge
public Assignment getEdgesAssignment_7_2() { return cEdgesAssignment_7_2; }
//ActivityEdge
public RuleCall getEdgesActivityEdgeParserRuleCall_7_2_0() { return cEdgesActivityEdgeParserRuleCall_7_2_0; }
//("," edges+=ActivityEdge)*
public Group getGroup_7_3() { return cGroup_7_3; }
//","
public Keyword getCommaKeyword_7_3_0() { return cCommaKeyword_7_3_0; }
//edges+=ActivityEdge
public Assignment getEdgesAssignment_7_3_1() { return cEdgesAssignment_7_3_1; }
//ActivityEdge
public RuleCall getEdgesActivityEdgeParserRuleCall_7_3_1_0() { return cEdgesActivityEdgeParserRuleCall_7_3_1_0; }
//"}"
public Keyword getRightCurlyBracketKeyword_7_4() { return cRightCurlyBracketKeyword_7_4; }
//"}"
public Keyword getRightCurlyBracketKeyword_8() { return cRightCurlyBracketKeyword_8; }
}
public class ActivityNodeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActivityNode");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final RuleCall cOpaqueActionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
private final RuleCall cInitialNodeParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
private final RuleCall cActivityFinalNodeParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
private final RuleCall cForkNodeParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
private final RuleCall cJoinNodeParserRuleCall_4 = (RuleCall)cAlternatives.eContents().get(4);
private final RuleCall cMergeNodeParserRuleCall_5 = (RuleCall)cAlternatives.eContents().get(5);
private final RuleCall cDecisionNodeParserRuleCall_6 = (RuleCall)cAlternatives.eContents().get(6);
//ActivityNode:
// OpaqueAction | InitialNode | ActivityFinalNode | ForkNode | JoinNode | MergeNode | DecisionNode;
@Override public ParserRule getRule() { return rule; }
//OpaqueAction | InitialNode | ActivityFinalNode | ForkNode | JoinNode | MergeNode | DecisionNode
public Alternatives getAlternatives() { return cAlternatives; }
//OpaqueAction
public RuleCall getOpaqueActionParserRuleCall_0() { return cOpaqueActionParserRuleCall_0; }
//InitialNode
public RuleCall getInitialNodeParserRuleCall_1() { return cInitialNodeParserRuleCall_1; }
//ActivityFinalNode
public RuleCall getActivityFinalNodeParserRuleCall_2() { return cActivityFinalNodeParserRuleCall_2; }
//ForkNode
public RuleCall getForkNodeParserRuleCall_3() { return cForkNodeParserRuleCall_3; }
//JoinNode
public RuleCall getJoinNodeParserRuleCall_4() { return cJoinNodeParserRuleCall_4; }
//MergeNode
public RuleCall getMergeNodeParserRuleCall_5() { return cMergeNodeParserRuleCall_5; }
//DecisionNode
public RuleCall getDecisionNodeParserRuleCall_6() { return cDecisionNodeParserRuleCall_6; }
}
public class ActivityEdgeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActivityEdge");
private final RuleCall cControlFlowParserRuleCall = (RuleCall)rule.eContents().get(1);
//ActivityEdge:
// ControlFlow;
@Override public ParserRule getRule() { return rule; }
//ControlFlow
public RuleCall getControlFlowParserRuleCall() { return cControlFlowParserRuleCall; }
}
public class VariableElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Variable");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final RuleCall cIntegerVariableParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
private final RuleCall cBooleanVariableParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
//Variable:
// IntegerVariable | BooleanVariable;
@Override public ParserRule getRule() { return rule; }
//IntegerVariable | BooleanVariable
public Alternatives getAlternatives() { return cAlternatives; }
//IntegerVariable
public RuleCall getIntegerVariableParserRuleCall_0() { return cIntegerVariableParserRuleCall_0; }
//BooleanVariable
public RuleCall getBooleanVariableParserRuleCall_1() { return cBooleanVariableParserRuleCall_1; }
}
public class ValueElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Value");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final RuleCall cBooleanValueParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
private final RuleCall cIntegerValueParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
//Value:
// BooleanValue | IntegerValue;
@Override public ParserRule getRule() { return rule; }
//BooleanValue | IntegerValue
public Alternatives getAlternatives() { return cAlternatives; }
//BooleanValue
public RuleCall getBooleanValueParserRuleCall_0() { return cBooleanValueParserRuleCall_0; }
//IntegerValue
public RuleCall getIntegerValueParserRuleCall_1() { return cIntegerValueParserRuleCall_1; }
}
public class OpaqueActionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "OpaqueAction");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cOpaqueActionAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cActionKeyword_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 Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Keyword cCompKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Keyword cLeftCurlyBracketKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
private final Assignment cExpressionsAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
private final RuleCall cExpressionsActivityExpressionParserRuleCall_3_2_0 = (RuleCall)cExpressionsAssignment_3_2.eContents().get(0);
private final Group cGroup_3_3 = (Group)cGroup_3.eContents().get(3);
private final Keyword cCommaKeyword_3_3_0 = (Keyword)cGroup_3_3.eContents().get(0);
private final Assignment cExpressionsAssignment_3_3_1 = (Assignment)cGroup_3_3.eContents().get(1);
private final RuleCall cExpressionsActivityExpressionParserRuleCall_3_3_1_0 = (RuleCall)cExpressionsAssignment_3_3_1.eContents().get(0);
private final Keyword cRightCurlyBracketKeyword_3_4 = (Keyword)cGroup_3.eContents().get(4);
private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
private final Keyword cInKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_4_1 = (Keyword)cGroup_4.eContents().get(1);
private final Assignment cIncomingAssignment_4_2 = (Assignment)cGroup_4.eContents().get(2);
private final CrossReference cIncomingActivityEdgeCrossReference_4_2_0 = (CrossReference)cIncomingAssignment_4_2.eContents().get(0);
private final RuleCall cIncomingActivityEdgeIDTerminalRuleCall_4_2_0_1 = (RuleCall)cIncomingActivityEdgeCrossReference_4_2_0.eContents().get(1);
private final Group cGroup_4_3 = (Group)cGroup_4.eContents().get(3);
private final Keyword cCommaKeyword_4_3_0 = (Keyword)cGroup_4_3.eContents().get(0);
private final Assignment cIncomingAssignment_4_3_1 = (Assignment)cGroup_4_3.eContents().get(1);
private final CrossReference cIncomingActivityEdgeCrossReference_4_3_1_0 = (CrossReference)cIncomingAssignment_4_3_1.eContents().get(0);
private final RuleCall cIncomingActivityEdgeIDTerminalRuleCall_4_3_1_0_1 = (RuleCall)cIncomingActivityEdgeCrossReference_4_3_1_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_4_4 = (Keyword)cGroup_4.eContents().get(4);
private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
private final Keyword cOutKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_5_1 = (Keyword)cGroup_5.eContents().get(1);
private final Assignment cOutgoingAssignment_5_2 = (Assignment)cGroup_5.eContents().get(2);
private final CrossReference cOutgoingActivityEdgeCrossReference_5_2_0 = (CrossReference)cOutgoingAssignment_5_2.eContents().get(0);
private final RuleCall cOutgoingActivityEdgeIDTerminalRuleCall_5_2_0_1 = (RuleCall)cOutgoingActivityEdgeCrossReference_5_2_0.eContents().get(1);
private final Group cGroup_5_3 = (Group)cGroup_5.eContents().get(3);
private final Keyword cCommaKeyword_5_3_0 = (Keyword)cGroup_5_3.eContents().get(0);
private final Assignment cOutgoingAssignment_5_3_1 = (Assignment)cGroup_5_3.eContents().get(1);
private final CrossReference cOutgoingActivityEdgeCrossReference_5_3_1_0 = (CrossReference)cOutgoingAssignment_5_3_1.eContents().get(0);
private final RuleCall cOutgoingActivityEdgeIDTerminalRuleCall_5_3_1_0_1 = (RuleCall)cOutgoingActivityEdgeCrossReference_5_3_1_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_5_4 = (Keyword)cGroup_5.eContents().get(4);
private final Group cGroup_6 = (Group)cGroup.eContents().get(6);
private final Keyword cServiceKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0);
private final Assignment cServiceAssignment_6_1 = (Assignment)cGroup_6.eContents().get(1);
private final CrossReference cServiceOperationDefCrossReference_6_1_0 = (CrossReference)cServiceAssignment_6_1.eContents().get(0);
private final RuleCall cServiceOperationDefIDTerminalRuleCall_6_1_0_1 = (RuleCall)cServiceOperationDefCrossReference_6_1_0.eContents().get(1);
//OpaqueAction:
// {OpaqueAction} "action" name=ID ("comp" "{" expressions+=ActivityExpression ("," expressions+=ActivityExpression)*
// "}")? ("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")? ("out" "(" outgoing+=[ActivityEdge]
// ("," outgoing+=[ActivityEdge])* ")")? ("service" service=[OperationDef])?;
@Override public ParserRule getRule() { return rule; }
//{OpaqueAction} "action" name=ID ("comp" "{" expressions+=ActivityExpression ("," expressions+=ActivityExpression)* "}")?
//("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")? ("out" "(" outgoing+=[ActivityEdge] (","
//outgoing+=[ActivityEdge])* ")")? ("service" service=[OperationDef])?
public Group getGroup() { return cGroup; }
//{OpaqueAction}
public Action getOpaqueActionAction_0() { return cOpaqueActionAction_0; }
//"action"
public Keyword getActionKeyword_1() { return cActionKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//("comp" "{" expressions+=ActivityExpression ("," expressions+=ActivityExpression)* "}")?
public Group getGroup_3() { return cGroup_3; }
//"comp"
public Keyword getCompKeyword_3_0() { return cCompKeyword_3_0; }
//"{"
public Keyword getLeftCurlyBracketKeyword_3_1() { return cLeftCurlyBracketKeyword_3_1; }
//expressions+=ActivityExpression
public Assignment getExpressionsAssignment_3_2() { return cExpressionsAssignment_3_2; }
//ActivityExpression
public RuleCall getExpressionsActivityExpressionParserRuleCall_3_2_0() { return cExpressionsActivityExpressionParserRuleCall_3_2_0; }
//("," expressions+=ActivityExpression)*
public Group getGroup_3_3() { return cGroup_3_3; }
//","
public Keyword getCommaKeyword_3_3_0() { return cCommaKeyword_3_3_0; }
//expressions+=ActivityExpression
public Assignment getExpressionsAssignment_3_3_1() { return cExpressionsAssignment_3_3_1; }
//ActivityExpression
public RuleCall getExpressionsActivityExpressionParserRuleCall_3_3_1_0() { return cExpressionsActivityExpressionParserRuleCall_3_3_1_0; }
//"}"
public Keyword getRightCurlyBracketKeyword_3_4() { return cRightCurlyBracketKeyword_3_4; }
//("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")?
public Group getGroup_4() { return cGroup_4; }
//"in"
public Keyword getInKeyword_4_0() { return cInKeyword_4_0; }
//"("
public Keyword getLeftParenthesisKeyword_4_1() { return cLeftParenthesisKeyword_4_1; }
//incoming+=[ActivityEdge]
public Assignment getIncomingAssignment_4_2() { return cIncomingAssignment_4_2; }
//[ActivityEdge]
public CrossReference getIncomingActivityEdgeCrossReference_4_2_0() { return cIncomingActivityEdgeCrossReference_4_2_0; }
//ID
public RuleCall getIncomingActivityEdgeIDTerminalRuleCall_4_2_0_1() { return cIncomingActivityEdgeIDTerminalRuleCall_4_2_0_1; }
//("," incoming+=[ActivityEdge])*
public Group getGroup_4_3() { return cGroup_4_3; }
//","
public Keyword getCommaKeyword_4_3_0() { return cCommaKeyword_4_3_0; }
//incoming+=[ActivityEdge]
public Assignment getIncomingAssignment_4_3_1() { return cIncomingAssignment_4_3_1; }
//[ActivityEdge]
public CrossReference getIncomingActivityEdgeCrossReference_4_3_1_0() { return cIncomingActivityEdgeCrossReference_4_3_1_0; }
//ID
public RuleCall getIncomingActivityEdgeIDTerminalRuleCall_4_3_1_0_1() { return cIncomingActivityEdgeIDTerminalRuleCall_4_3_1_0_1; }
//")"
public Keyword getRightParenthesisKeyword_4_4() { return cRightParenthesisKeyword_4_4; }
//("out" "(" outgoing+=[ActivityEdge] ("," outgoing+=[ActivityEdge])* ")")?
public Group getGroup_5() { return cGroup_5; }
//"out"
public Keyword getOutKeyword_5_0() { return cOutKeyword_5_0; }
//"("
public Keyword getLeftParenthesisKeyword_5_1() { return cLeftParenthesisKeyword_5_1; }
//outgoing+=[ActivityEdge]
public Assignment getOutgoingAssignment_5_2() { return cOutgoingAssignment_5_2; }
//[ActivityEdge]
public CrossReference getOutgoingActivityEdgeCrossReference_5_2_0() { return cOutgoingActivityEdgeCrossReference_5_2_0; }
//ID
public RuleCall getOutgoingActivityEdgeIDTerminalRuleCall_5_2_0_1() { return cOutgoingActivityEdgeIDTerminalRuleCall_5_2_0_1; }
//("," outgoing+=[ActivityEdge])*
public Group getGroup_5_3() { return cGroup_5_3; }
//","
public Keyword getCommaKeyword_5_3_0() { return cCommaKeyword_5_3_0; }
//outgoing+=[ActivityEdge]
public Assignment getOutgoingAssignment_5_3_1() { return cOutgoingAssignment_5_3_1; }
//[ActivityEdge]
public CrossReference getOutgoingActivityEdgeCrossReference_5_3_1_0() { return cOutgoingActivityEdgeCrossReference_5_3_1_0; }
//ID
public RuleCall getOutgoingActivityEdgeIDTerminalRuleCall_5_3_1_0_1() { return cOutgoingActivityEdgeIDTerminalRuleCall_5_3_1_0_1; }
//")"
public Keyword getRightParenthesisKeyword_5_4() { return cRightParenthesisKeyword_5_4; }
//("service" service=[OperationDef])?
public Group getGroup_6() { return cGroup_6; }
//"service"
public Keyword getServiceKeyword_6_0() { return cServiceKeyword_6_0; }
//service=[OperationDef]
public Assignment getServiceAssignment_6_1() { return cServiceAssignment_6_1; }
//[OperationDef]
public CrossReference getServiceOperationDefCrossReference_6_1_0() { return cServiceOperationDefCrossReference_6_1_0; }
//ID
public RuleCall getServiceOperationDefIDTerminalRuleCall_6_1_0_1() { return cServiceOperationDefIDTerminalRuleCall_6_1_0_1; }
}
public class ActivityExpressionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActivityExpression");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final RuleCall cIntegerCalculationExpressionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
private final RuleCall cIntegerComparisonExpressionParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
private final RuleCall cBooleanUnaryExpressionParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
private final RuleCall cBooleanBinaryExpressionParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
//ActivityExpression returns Expression:
// IntegerCalculationExpression | IntegerComparisonExpression | BooleanUnaryExpression | BooleanBinaryExpression;
@Override public ParserRule getRule() { return rule; }
//IntegerCalculationExpression | IntegerComparisonExpression | BooleanUnaryExpression | BooleanBinaryExpression
public Alternatives getAlternatives() { return cAlternatives; }
//IntegerCalculationExpression
public RuleCall getIntegerCalculationExpressionParserRuleCall_0() { return cIntegerCalculationExpressionParserRuleCall_0; }
//IntegerComparisonExpression
public RuleCall getIntegerComparisonExpressionParserRuleCall_1() { return cIntegerComparisonExpressionParserRuleCall_1; }
//BooleanUnaryExpression
public RuleCall getBooleanUnaryExpressionParserRuleCall_2() { return cBooleanUnaryExpressionParserRuleCall_2; }
//BooleanBinaryExpression
public RuleCall getBooleanBinaryExpressionParserRuleCall_3() { return cBooleanBinaryExpressionParserRuleCall_3; }
}
public class IntegerCalculationExpressionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "IntegerCalculationExpression");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cAssigneeAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final CrossReference cAssigneeIntegerVariableCrossReference_0_0 = (CrossReference)cAssigneeAssignment_0.eContents().get(0);
private final RuleCall cAssigneeIntegerVariableIDTerminalRuleCall_0_0_1 = (RuleCall)cAssigneeIntegerVariableCrossReference_0_0.eContents().get(1);
private final Keyword cEqualsSignKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cOperand1Assignment_2 = (Assignment)cGroup.eContents().get(2);
private final CrossReference cOperand1IntegerVariableCrossReference_2_0 = (CrossReference)cOperand1Assignment_2.eContents().get(0);
private final RuleCall cOperand1IntegerVariableIDTerminalRuleCall_2_0_1 = (RuleCall)cOperand1IntegerVariableCrossReference_2_0.eContents().get(1);
private final Assignment cOperatorAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cOperatorIntegerCalculationOperatorEnumRuleCall_3_0 = (RuleCall)cOperatorAssignment_3.eContents().get(0);
private final Assignment cOperand2Assignment_4 = (Assignment)cGroup.eContents().get(4);
private final CrossReference cOperand2IntegerVariableCrossReference_4_0 = (CrossReference)cOperand2Assignment_4.eContents().get(0);
private final RuleCall cOperand2IntegerVariableIDTerminalRuleCall_4_0_1 = (RuleCall)cOperand2IntegerVariableCrossReference_4_0.eContents().get(1);
//IntegerCalculationExpression:
// assignee=[IntegerVariable] "=" operand1=[IntegerVariable] operator=IntegerCalculationOperator
// operand2=[IntegerVariable];
@Override public ParserRule getRule() { return rule; }
//assignee=[IntegerVariable] "=" operand1=[IntegerVariable] operator=IntegerCalculationOperator operand2=[IntegerVariable]
public Group getGroup() { return cGroup; }
//assignee=[IntegerVariable]
public Assignment getAssigneeAssignment_0() { return cAssigneeAssignment_0; }
//[IntegerVariable]
public CrossReference getAssigneeIntegerVariableCrossReference_0_0() { return cAssigneeIntegerVariableCrossReference_0_0; }
//ID
public RuleCall getAssigneeIntegerVariableIDTerminalRuleCall_0_0_1() { return cAssigneeIntegerVariableIDTerminalRuleCall_0_0_1; }
//"="
public Keyword getEqualsSignKeyword_1() { return cEqualsSignKeyword_1; }
//operand1=[IntegerVariable]
public Assignment getOperand1Assignment_2() { return cOperand1Assignment_2; }
//[IntegerVariable]
public CrossReference getOperand1IntegerVariableCrossReference_2_0() { return cOperand1IntegerVariableCrossReference_2_0; }
//ID
public RuleCall getOperand1IntegerVariableIDTerminalRuleCall_2_0_1() { return cOperand1IntegerVariableIDTerminalRuleCall_2_0_1; }
//operator=IntegerCalculationOperator
public Assignment getOperatorAssignment_3() { return cOperatorAssignment_3; }
//IntegerCalculationOperator
public RuleCall getOperatorIntegerCalculationOperatorEnumRuleCall_3_0() { return cOperatorIntegerCalculationOperatorEnumRuleCall_3_0; }
//operand2=[IntegerVariable]
public Assignment getOperand2Assignment_4() { return cOperand2Assignment_4; }
//[IntegerVariable]
public CrossReference getOperand2IntegerVariableCrossReference_4_0() { return cOperand2IntegerVariableCrossReference_4_0; }
//ID
public RuleCall getOperand2IntegerVariableIDTerminalRuleCall_4_0_1() { return cOperand2IntegerVariableIDTerminalRuleCall_4_0_1; }
}
public class IntegerComparisonExpressionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "IntegerComparisonExpression");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cAssigneeAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final CrossReference cAssigneeBooleanVariableCrossReference_0_0 = (CrossReference)cAssigneeAssignment_0.eContents().get(0);
private final RuleCall cAssigneeBooleanVariableIDTerminalRuleCall_0_0_1 = (RuleCall)cAssigneeBooleanVariableCrossReference_0_0.eContents().get(1);
private final Keyword cEqualsSignKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cOperand1Assignment_2 = (Assignment)cGroup.eContents().get(2);
private final CrossReference cOperand1IntegerVariableCrossReference_2_0 = (CrossReference)cOperand1Assignment_2.eContents().get(0);
private final RuleCall cOperand1IntegerVariableIDTerminalRuleCall_2_0_1 = (RuleCall)cOperand1IntegerVariableCrossReference_2_0.eContents().get(1);
private final Assignment cOperatorAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cOperatorIntegerComparisonOperatorEnumRuleCall_3_0 = (RuleCall)cOperatorAssignment_3.eContents().get(0);
private final Assignment cOperand2Assignment_4 = (Assignment)cGroup.eContents().get(4);
private final CrossReference cOperand2IntegerVariableCrossReference_4_0 = (CrossReference)cOperand2Assignment_4.eContents().get(0);
private final RuleCall cOperand2IntegerVariableIDTerminalRuleCall_4_0_1 = (RuleCall)cOperand2IntegerVariableCrossReference_4_0.eContents().get(1);
//IntegerComparisonExpression:
// assignee=[BooleanVariable] "=" operand1=[IntegerVariable] operator=IntegerComparisonOperator
// operand2=[IntegerVariable];
@Override public ParserRule getRule() { return rule; }
//assignee=[BooleanVariable] "=" operand1=[IntegerVariable] operator=IntegerComparisonOperator operand2=[IntegerVariable]
public Group getGroup() { return cGroup; }
//assignee=[BooleanVariable]
public Assignment getAssigneeAssignment_0() { return cAssigneeAssignment_0; }
//[BooleanVariable]
public CrossReference getAssigneeBooleanVariableCrossReference_0_0() { return cAssigneeBooleanVariableCrossReference_0_0; }
//ID
public RuleCall getAssigneeBooleanVariableIDTerminalRuleCall_0_0_1() { return cAssigneeBooleanVariableIDTerminalRuleCall_0_0_1; }
//"="
public Keyword getEqualsSignKeyword_1() { return cEqualsSignKeyword_1; }
//operand1=[IntegerVariable]
public Assignment getOperand1Assignment_2() { return cOperand1Assignment_2; }
//[IntegerVariable]
public CrossReference getOperand1IntegerVariableCrossReference_2_0() { return cOperand1IntegerVariableCrossReference_2_0; }
//ID
public RuleCall getOperand1IntegerVariableIDTerminalRuleCall_2_0_1() { return cOperand1IntegerVariableIDTerminalRuleCall_2_0_1; }
//operator=IntegerComparisonOperator
public Assignment getOperatorAssignment_3() { return cOperatorAssignment_3; }
//IntegerComparisonOperator
public RuleCall getOperatorIntegerComparisonOperatorEnumRuleCall_3_0() { return cOperatorIntegerComparisonOperatorEnumRuleCall_3_0; }
//operand2=[IntegerVariable]
public Assignment getOperand2Assignment_4() { return cOperand2Assignment_4; }
//[IntegerVariable]
public CrossReference getOperand2IntegerVariableCrossReference_4_0() { return cOperand2IntegerVariableCrossReference_4_0; }
//ID
public RuleCall getOperand2IntegerVariableIDTerminalRuleCall_4_0_1() { return cOperand2IntegerVariableIDTerminalRuleCall_4_0_1; }
}
public class BooleanUnaryExpressionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "BooleanUnaryExpression");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cAssigneeAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final CrossReference cAssigneeBooleanVariableCrossReference_0_0 = (CrossReference)cAssigneeAssignment_0.eContents().get(0);
private final RuleCall cAssigneeBooleanVariableIDTerminalRuleCall_0_0_1 = (RuleCall)cAssigneeBooleanVariableCrossReference_0_0.eContents().get(1);
private final Keyword cEqualsSignKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cOperatorAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final RuleCall cOperatorBooleanUnaryOperatorEnumRuleCall_2_0 = (RuleCall)cOperatorAssignment_2.eContents().get(0);
private final Assignment cOperandAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final CrossReference cOperandBooleanVariableCrossReference_3_0 = (CrossReference)cOperandAssignment_3.eContents().get(0);
private final RuleCall cOperandBooleanVariableIDTerminalRuleCall_3_0_1 = (RuleCall)cOperandBooleanVariableCrossReference_3_0.eContents().get(1);
//BooleanUnaryExpression:
// assignee=[BooleanVariable] "=" operator=BooleanUnaryOperator operand=[BooleanVariable];
@Override public ParserRule getRule() { return rule; }
//assignee=[BooleanVariable] "=" operator=BooleanUnaryOperator operand=[BooleanVariable]
public Group getGroup() { return cGroup; }
//assignee=[BooleanVariable]
public Assignment getAssigneeAssignment_0() { return cAssigneeAssignment_0; }
//[BooleanVariable]
public CrossReference getAssigneeBooleanVariableCrossReference_0_0() { return cAssigneeBooleanVariableCrossReference_0_0; }
//ID
public RuleCall getAssigneeBooleanVariableIDTerminalRuleCall_0_0_1() { return cAssigneeBooleanVariableIDTerminalRuleCall_0_0_1; }
//"="
public Keyword getEqualsSignKeyword_1() { return cEqualsSignKeyword_1; }
//operator=BooleanUnaryOperator
public Assignment getOperatorAssignment_2() { return cOperatorAssignment_2; }
//BooleanUnaryOperator
public RuleCall getOperatorBooleanUnaryOperatorEnumRuleCall_2_0() { return cOperatorBooleanUnaryOperatorEnumRuleCall_2_0; }
//operand=[BooleanVariable]
public Assignment getOperandAssignment_3() { return cOperandAssignment_3; }
//[BooleanVariable]
public CrossReference getOperandBooleanVariableCrossReference_3_0() { return cOperandBooleanVariableCrossReference_3_0; }
//ID
public RuleCall getOperandBooleanVariableIDTerminalRuleCall_3_0_1() { return cOperandBooleanVariableIDTerminalRuleCall_3_0_1; }
}
public class BooleanBinaryExpressionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "BooleanBinaryExpression");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cAssigneeAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final CrossReference cAssigneeBooleanVariableCrossReference_0_0 = (CrossReference)cAssigneeAssignment_0.eContents().get(0);
private final RuleCall cAssigneeBooleanVariableIDTerminalRuleCall_0_0_1 = (RuleCall)cAssigneeBooleanVariableCrossReference_0_0.eContents().get(1);
private final Keyword cEqualsSignKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cOperand1Assignment_2 = (Assignment)cGroup.eContents().get(2);
private final CrossReference cOperand1BooleanVariableCrossReference_2_0 = (CrossReference)cOperand1Assignment_2.eContents().get(0);
private final RuleCall cOperand1BooleanVariableIDTerminalRuleCall_2_0_1 = (RuleCall)cOperand1BooleanVariableCrossReference_2_0.eContents().get(1);
private final Assignment cOperatorAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cOperatorBooleanBinaryOperatorEnumRuleCall_3_0 = (RuleCall)cOperatorAssignment_3.eContents().get(0);
private final Assignment cOperand2Assignment_4 = (Assignment)cGroup.eContents().get(4);
private final CrossReference cOperand2BooleanVariableCrossReference_4_0 = (CrossReference)cOperand2Assignment_4.eContents().get(0);
private final RuleCall cOperand2BooleanVariableIDTerminalRuleCall_4_0_1 = (RuleCall)cOperand2BooleanVariableCrossReference_4_0.eContents().get(1);
//BooleanBinaryExpression:
// assignee=[BooleanVariable] "=" operand1=[BooleanVariable] operator=BooleanBinaryOperator operand2=[BooleanVariable];
@Override public ParserRule getRule() { return rule; }
//assignee=[BooleanVariable] "=" operand1=[BooleanVariable] operator=BooleanBinaryOperator operand2=[BooleanVariable]
public Group getGroup() { return cGroup; }
//assignee=[BooleanVariable]
public Assignment getAssigneeAssignment_0() { return cAssigneeAssignment_0; }
//[BooleanVariable]
public CrossReference getAssigneeBooleanVariableCrossReference_0_0() { return cAssigneeBooleanVariableCrossReference_0_0; }
//ID
public RuleCall getAssigneeBooleanVariableIDTerminalRuleCall_0_0_1() { return cAssigneeBooleanVariableIDTerminalRuleCall_0_0_1; }
//"="
public Keyword getEqualsSignKeyword_1() { return cEqualsSignKeyword_1; }
//operand1=[BooleanVariable]
public Assignment getOperand1Assignment_2() { return cOperand1Assignment_2; }
//[BooleanVariable]
public CrossReference getOperand1BooleanVariableCrossReference_2_0() { return cOperand1BooleanVariableCrossReference_2_0; }
//ID
public RuleCall getOperand1BooleanVariableIDTerminalRuleCall_2_0_1() { return cOperand1BooleanVariableIDTerminalRuleCall_2_0_1; }
//operator=BooleanBinaryOperator
public Assignment getOperatorAssignment_3() { return cOperatorAssignment_3; }
//BooleanBinaryOperator
public RuleCall getOperatorBooleanBinaryOperatorEnumRuleCall_3_0() { return cOperatorBooleanBinaryOperatorEnumRuleCall_3_0; }
//operand2=[BooleanVariable]
public Assignment getOperand2Assignment_4() { return cOperand2Assignment_4; }
//[BooleanVariable]
public CrossReference getOperand2BooleanVariableCrossReference_4_0() { return cOperand2BooleanVariableCrossReference_4_0; }
//ID
public RuleCall getOperand2BooleanVariableIDTerminalRuleCall_4_0_1() { return cOperand2BooleanVariableIDTerminalRuleCall_4_0_1; }
}
public class InitialNodeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "InitialNode");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cInitialNodeAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cInitialKeyword_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 Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Keyword cOutKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
private final Assignment cOutgoingAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
private final CrossReference cOutgoingActivityEdgeCrossReference_3_2_0 = (CrossReference)cOutgoingAssignment_3_2.eContents().get(0);
private final RuleCall cOutgoingActivityEdgeIDTerminalRuleCall_3_2_0_1 = (RuleCall)cOutgoingActivityEdgeCrossReference_3_2_0.eContents().get(1);
private final Group cGroup_3_3 = (Group)cGroup_3.eContents().get(3);
private final Keyword cCommaKeyword_3_3_0 = (Keyword)cGroup_3_3.eContents().get(0);
private final Assignment cOutgoingAssignment_3_3_1 = (Assignment)cGroup_3_3.eContents().get(1);
private final CrossReference cOutgoingActivityEdgeCrossReference_3_3_1_0 = (CrossReference)cOutgoingAssignment_3_3_1.eContents().get(0);
private final RuleCall cOutgoingActivityEdgeIDTerminalRuleCall_3_3_1_0_1 = (RuleCall)cOutgoingActivityEdgeCrossReference_3_3_1_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_3_4 = (Keyword)cGroup_3.eContents().get(4);
//InitialNode:
// {InitialNode} "initial" name=ID ("out" "(" outgoing+=[ActivityEdge] ("," outgoing+=[ActivityEdge])* ")");
@Override public ParserRule getRule() { return rule; }
//{InitialNode} "initial" name=ID ("out" "(" outgoing+=[ActivityEdge] ("," outgoing+=[ActivityEdge])* ")")
public Group getGroup() { return cGroup; }
//{InitialNode}
public Action getInitialNodeAction_0() { return cInitialNodeAction_0; }
//"initial"
public Keyword getInitialKeyword_1() { return cInitialKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//"out" "(" outgoing+=[ActivityEdge] ("," outgoing+=[ActivityEdge])* ")"
public Group getGroup_3() { return cGroup_3; }
//"out"
public Keyword getOutKeyword_3_0() { return cOutKeyword_3_0; }
//"("
public Keyword getLeftParenthesisKeyword_3_1() { return cLeftParenthesisKeyword_3_1; }
//outgoing+=[ActivityEdge]
public Assignment getOutgoingAssignment_3_2() { return cOutgoingAssignment_3_2; }
//[ActivityEdge]
public CrossReference getOutgoingActivityEdgeCrossReference_3_2_0() { return cOutgoingActivityEdgeCrossReference_3_2_0; }
//ID
public RuleCall getOutgoingActivityEdgeIDTerminalRuleCall_3_2_0_1() { return cOutgoingActivityEdgeIDTerminalRuleCall_3_2_0_1; }
//("," outgoing+=[ActivityEdge])*
public Group getGroup_3_3() { return cGroup_3_3; }
//","
public Keyword getCommaKeyword_3_3_0() { return cCommaKeyword_3_3_0; }
//outgoing+=[ActivityEdge]
public Assignment getOutgoingAssignment_3_3_1() { return cOutgoingAssignment_3_3_1; }
//[ActivityEdge]
public CrossReference getOutgoingActivityEdgeCrossReference_3_3_1_0() { return cOutgoingActivityEdgeCrossReference_3_3_1_0; }
//ID
public RuleCall getOutgoingActivityEdgeIDTerminalRuleCall_3_3_1_0_1() { return cOutgoingActivityEdgeIDTerminalRuleCall_3_3_1_0_1; }
//")"
public Keyword getRightParenthesisKeyword_3_4() { return cRightParenthesisKeyword_3_4; }
}
public class ActivityFinalNodeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ActivityFinalNode");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cActivityFinalNodeAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cFinalKeyword_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 Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Keyword cInKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
private final Assignment cIncomingAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
private final CrossReference cIncomingActivityEdgeCrossReference_3_2_0 = (CrossReference)cIncomingAssignment_3_2.eContents().get(0);
private final RuleCall cIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1 = (RuleCall)cIncomingActivityEdgeCrossReference_3_2_0.eContents().get(1);
private final Group cGroup_3_3 = (Group)cGroup_3.eContents().get(3);
private final Keyword cCommaKeyword_3_3_0 = (Keyword)cGroup_3_3.eContents().get(0);
private final Assignment cIncomingAssignment_3_3_1 = (Assignment)cGroup_3_3.eContents().get(1);
private final CrossReference cIncomingActivityEdgeCrossReference_3_3_1_0 = (CrossReference)cIncomingAssignment_3_3_1.eContents().get(0);
private final RuleCall cIncomingActivityEdgeIDTerminalRuleCall_3_3_1_0_1 = (RuleCall)cIncomingActivityEdgeCrossReference_3_3_1_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_3_4 = (Keyword)cGroup_3.eContents().get(4);
//ActivityFinalNode:
// {ActivityFinalNode} "final" name=ID ("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")");
@Override public ParserRule getRule() { return rule; }
//{ActivityFinalNode} "final" name=ID ("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")
public Group getGroup() { return cGroup; }
//{ActivityFinalNode}
public Action getActivityFinalNodeAction_0() { return cActivityFinalNodeAction_0; }
//"final"
public Keyword getFinalKeyword_1() { return cFinalKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//"in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")"
public Group getGroup_3() { return cGroup_3; }
//"in"
public Keyword getInKeyword_3_0() { return cInKeyword_3_0; }
//"("
public Keyword getLeftParenthesisKeyword_3_1() { return cLeftParenthesisKeyword_3_1; }
//incoming+=[ActivityEdge]
public Assignment getIncomingAssignment_3_2() { return cIncomingAssignment_3_2; }
//[ActivityEdge]
public CrossReference getIncomingActivityEdgeCrossReference_3_2_0() { return cIncomingActivityEdgeCrossReference_3_2_0; }
//ID
public RuleCall getIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1() { return cIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1; }
//("," incoming+=[ActivityEdge])*
public Group getGroup_3_3() { return cGroup_3_3; }
//","
public Keyword getCommaKeyword_3_3_0() { return cCommaKeyword_3_3_0; }
//incoming+=[ActivityEdge]
public Assignment getIncomingAssignment_3_3_1() { return cIncomingAssignment_3_3_1; }
//[ActivityEdge]
public CrossReference getIncomingActivityEdgeCrossReference_3_3_1_0() { return cIncomingActivityEdgeCrossReference_3_3_1_0; }
//ID
public RuleCall getIncomingActivityEdgeIDTerminalRuleCall_3_3_1_0_1() { return cIncomingActivityEdgeIDTerminalRuleCall_3_3_1_0_1; }
//")"
public Keyword getRightParenthesisKeyword_3_4() { return cRightParenthesisKeyword_3_4; }
}
public class ForkNodeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ForkNode");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cForkNodeAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cForkKeyword_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 Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Keyword cInKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
private final Assignment cIncomingAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
private final CrossReference cIncomingActivityEdgeCrossReference_3_2_0 = (CrossReference)cIncomingAssignment_3_2.eContents().get(0);
private final RuleCall cIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1 = (RuleCall)cIncomingActivityEdgeCrossReference_3_2_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_3_3 = (Keyword)cGroup_3.eContents().get(3);
private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
private final Keyword cOutKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_4_1 = (Keyword)cGroup_4.eContents().get(1);
private final Assignment cOutgoingAssignment_4_2 = (Assignment)cGroup_4.eContents().get(2);
private final CrossReference cOutgoingActivityEdgeCrossReference_4_2_0 = (CrossReference)cOutgoingAssignment_4_2.eContents().get(0);
private final RuleCall cOutgoingActivityEdgeIDTerminalRuleCall_4_2_0_1 = (RuleCall)cOutgoingActivityEdgeCrossReference_4_2_0.eContents().get(1);
private final Group cGroup_4_3 = (Group)cGroup_4.eContents().get(3);
private final Keyword cCommaKeyword_4_3_0 = (Keyword)cGroup_4_3.eContents().get(0);
private final Assignment cOutgoingAssignment_4_3_1 = (Assignment)cGroup_4_3.eContents().get(1);
private final CrossReference cOutgoingActivityEdgeCrossReference_4_3_1_0 = (CrossReference)cOutgoingAssignment_4_3_1.eContents().get(0);
private final RuleCall cOutgoingActivityEdgeIDTerminalRuleCall_4_3_1_0_1 = (RuleCall)cOutgoingActivityEdgeCrossReference_4_3_1_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_4_4 = (Keyword)cGroup_4.eContents().get(4);
//ForkNode:
// {ForkNode} "fork" name=ID ("in" "(" incoming+=[ActivityEdge] ")") ("out" "(" outgoing+=[ActivityEdge] (","
// outgoing+=[ActivityEdge])* ")")?;
@Override public ParserRule getRule() { return rule; }
//{ForkNode} "fork" name=ID ("in" "(" incoming+=[ActivityEdge] ")") ("out" "(" outgoing+=[ActivityEdge] (","
//outgoing+=[ActivityEdge])* ")")?
public Group getGroup() { return cGroup; }
//{ForkNode}
public Action getForkNodeAction_0() { return cForkNodeAction_0; }
//"fork"
public Keyword getForkKeyword_1() { return cForkKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//"in" "(" incoming+=[ActivityEdge] ")"
public Group getGroup_3() { return cGroup_3; }
//"in"
public Keyword getInKeyword_3_0() { return cInKeyword_3_0; }
//"("
public Keyword getLeftParenthesisKeyword_3_1() { return cLeftParenthesisKeyword_3_1; }
//incoming+=[ActivityEdge]
public Assignment getIncomingAssignment_3_2() { return cIncomingAssignment_3_2; }
//[ActivityEdge]
public CrossReference getIncomingActivityEdgeCrossReference_3_2_0() { return cIncomingActivityEdgeCrossReference_3_2_0; }
//ID
public RuleCall getIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1() { return cIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1; }
//")"
public Keyword getRightParenthesisKeyword_3_3() { return cRightParenthesisKeyword_3_3; }
//("out" "(" outgoing+=[ActivityEdge] ("," outgoing+=[ActivityEdge])* ")")?
public Group getGroup_4() { return cGroup_4; }
//"out"
public Keyword getOutKeyword_4_0() { return cOutKeyword_4_0; }
//"("
public Keyword getLeftParenthesisKeyword_4_1() { return cLeftParenthesisKeyword_4_1; }
//outgoing+=[ActivityEdge]
public Assignment getOutgoingAssignment_4_2() { return cOutgoingAssignment_4_2; }
//[ActivityEdge]
public CrossReference getOutgoingActivityEdgeCrossReference_4_2_0() { return cOutgoingActivityEdgeCrossReference_4_2_0; }
//ID
public RuleCall getOutgoingActivityEdgeIDTerminalRuleCall_4_2_0_1() { return cOutgoingActivityEdgeIDTerminalRuleCall_4_2_0_1; }
//("," outgoing+=[ActivityEdge])*
public Group getGroup_4_3() { return cGroup_4_3; }
//","
public Keyword getCommaKeyword_4_3_0() { return cCommaKeyword_4_3_0; }
//outgoing+=[ActivityEdge]
public Assignment getOutgoingAssignment_4_3_1() { return cOutgoingAssignment_4_3_1; }
//[ActivityEdge]
public CrossReference getOutgoingActivityEdgeCrossReference_4_3_1_0() { return cOutgoingActivityEdgeCrossReference_4_3_1_0; }
//ID
public RuleCall getOutgoingActivityEdgeIDTerminalRuleCall_4_3_1_0_1() { return cOutgoingActivityEdgeIDTerminalRuleCall_4_3_1_0_1; }
//")"
public Keyword getRightParenthesisKeyword_4_4() { return cRightParenthesisKeyword_4_4; }
}
public class JoinNodeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "JoinNode");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cJoinNodeAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cJoinKeyword_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 Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Keyword cInKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
private final Assignment cIncomingAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
private final CrossReference cIncomingActivityEdgeCrossReference_3_2_0 = (CrossReference)cIncomingAssignment_3_2.eContents().get(0);
private final RuleCall cIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1 = (RuleCall)cIncomingActivityEdgeCrossReference_3_2_0.eContents().get(1);
private final Group cGroup_3_3 = (Group)cGroup_3.eContents().get(3);
private final Keyword cCommaKeyword_3_3_0 = (Keyword)cGroup_3_3.eContents().get(0);
private final Assignment cIncomingAssignment_3_3_1 = (Assignment)cGroup_3_3.eContents().get(1);
private final CrossReference cIncomingActivityEdgeCrossReference_3_3_1_0 = (CrossReference)cIncomingAssignment_3_3_1.eContents().get(0);
private final RuleCall cIncomingActivityEdgeIDTerminalRuleCall_3_3_1_0_1 = (RuleCall)cIncomingActivityEdgeCrossReference_3_3_1_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_3_4 = (Keyword)cGroup_3.eContents().get(4);
private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
private final Keyword cOutKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_4_1 = (Keyword)cGroup_4.eContents().get(1);
private final Assignment cOutgoingAssignment_4_2 = (Assignment)cGroup_4.eContents().get(2);
private final CrossReference cOutgoingActivityEdgeCrossReference_4_2_0 = (CrossReference)cOutgoingAssignment_4_2.eContents().get(0);
private final RuleCall cOutgoingActivityEdgeIDTerminalRuleCall_4_2_0_1 = (RuleCall)cOutgoingActivityEdgeCrossReference_4_2_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_4_3 = (Keyword)cGroup_4.eContents().get(3);
//JoinNode:
// {JoinNode} "join" name=ID ("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")? ("out" "("
// outgoing+=[ActivityEdge] ")");
@Override public ParserRule getRule() { return rule; }
//{JoinNode} "join" name=ID ("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")? ("out" "("
//outgoing+=[ActivityEdge] ")")
public Group getGroup() { return cGroup; }
//{JoinNode}
public Action getJoinNodeAction_0() { return cJoinNodeAction_0; }
//"join"
public Keyword getJoinKeyword_1() { return cJoinKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")?
public Group getGroup_3() { return cGroup_3; }
//"in"
public Keyword getInKeyword_3_0() { return cInKeyword_3_0; }
//"("
public Keyword getLeftParenthesisKeyword_3_1() { return cLeftParenthesisKeyword_3_1; }
//incoming+=[ActivityEdge]
public Assignment getIncomingAssignment_3_2() { return cIncomingAssignment_3_2; }
//[ActivityEdge]
public CrossReference getIncomingActivityEdgeCrossReference_3_2_0() { return cIncomingActivityEdgeCrossReference_3_2_0; }
//ID
public RuleCall getIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1() { return cIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1; }
//("," incoming+=[ActivityEdge])*
public Group getGroup_3_3() { return cGroup_3_3; }
//","
public Keyword getCommaKeyword_3_3_0() { return cCommaKeyword_3_3_0; }
//incoming+=[ActivityEdge]
public Assignment getIncomingAssignment_3_3_1() { return cIncomingAssignment_3_3_1; }
//[ActivityEdge]
public CrossReference getIncomingActivityEdgeCrossReference_3_3_1_0() { return cIncomingActivityEdgeCrossReference_3_3_1_0; }
//ID
public RuleCall getIncomingActivityEdgeIDTerminalRuleCall_3_3_1_0_1() { return cIncomingActivityEdgeIDTerminalRuleCall_3_3_1_0_1; }
//")"
public Keyword getRightParenthesisKeyword_3_4() { return cRightParenthesisKeyword_3_4; }
//"out" "(" outgoing+=[ActivityEdge] ")"
public Group getGroup_4() { return cGroup_4; }
//"out"
public Keyword getOutKeyword_4_0() { return cOutKeyword_4_0; }
//"("
public Keyword getLeftParenthesisKeyword_4_1() { return cLeftParenthesisKeyword_4_1; }
//outgoing+=[ActivityEdge]
public Assignment getOutgoingAssignment_4_2() { return cOutgoingAssignment_4_2; }
//[ActivityEdge]
public CrossReference getOutgoingActivityEdgeCrossReference_4_2_0() { return cOutgoingActivityEdgeCrossReference_4_2_0; }
//ID
public RuleCall getOutgoingActivityEdgeIDTerminalRuleCall_4_2_0_1() { return cOutgoingActivityEdgeIDTerminalRuleCall_4_2_0_1; }
//")"
public Keyword getRightParenthesisKeyword_4_3() { return cRightParenthesisKeyword_4_3; }
}
public class MergeNodeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "MergeNode");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cMergeNodeAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cMergeKeyword_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 Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Keyword cInKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
private final Assignment cIncomingAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
private final CrossReference cIncomingActivityEdgeCrossReference_3_2_0 = (CrossReference)cIncomingAssignment_3_2.eContents().get(0);
private final RuleCall cIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1 = (RuleCall)cIncomingActivityEdgeCrossReference_3_2_0.eContents().get(1);
private final Group cGroup_3_3 = (Group)cGroup_3.eContents().get(3);
private final Keyword cCommaKeyword_3_3_0 = (Keyword)cGroup_3_3.eContents().get(0);
private final Assignment cIncomingAssignment_3_3_1 = (Assignment)cGroup_3_3.eContents().get(1);
private final CrossReference cIncomingActivityEdgeCrossReference_3_3_1_0 = (CrossReference)cIncomingAssignment_3_3_1.eContents().get(0);
private final RuleCall cIncomingActivityEdgeIDTerminalRuleCall_3_3_1_0_1 = (RuleCall)cIncomingActivityEdgeCrossReference_3_3_1_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_3_4 = (Keyword)cGroup_3.eContents().get(4);
private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
private final Keyword cOutKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_4_1 = (Keyword)cGroup_4.eContents().get(1);
private final Assignment cOutgoingAssignment_4_2 = (Assignment)cGroup_4.eContents().get(2);
private final CrossReference cOutgoingActivityEdgeCrossReference_4_2_0 = (CrossReference)cOutgoingAssignment_4_2.eContents().get(0);
private final RuleCall cOutgoingActivityEdgeIDTerminalRuleCall_4_2_0_1 = (RuleCall)cOutgoingActivityEdgeCrossReference_4_2_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_4_3 = (Keyword)cGroup_4.eContents().get(3);
//MergeNode:
// {MergeNode} "merge" name=ID ("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")? ("out" "("
// outgoing+=[ActivityEdge] ")");
@Override public ParserRule getRule() { return rule; }
//{MergeNode} "merge" name=ID ("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")? ("out" "("
//outgoing+=[ActivityEdge] ")")
public Group getGroup() { return cGroup; }
//{MergeNode}
public Action getMergeNodeAction_0() { return cMergeNodeAction_0; }
//"merge"
public Keyword getMergeKeyword_1() { return cMergeKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")?
public Group getGroup_3() { return cGroup_3; }
//"in"
public Keyword getInKeyword_3_0() { return cInKeyword_3_0; }
//"("
public Keyword getLeftParenthesisKeyword_3_1() { return cLeftParenthesisKeyword_3_1; }
//incoming+=[ActivityEdge]
public Assignment getIncomingAssignment_3_2() { return cIncomingAssignment_3_2; }
//[ActivityEdge]
public CrossReference getIncomingActivityEdgeCrossReference_3_2_0() { return cIncomingActivityEdgeCrossReference_3_2_0; }
//ID
public RuleCall getIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1() { return cIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1; }
//("," incoming+=[ActivityEdge])*
public Group getGroup_3_3() { return cGroup_3_3; }
//","
public Keyword getCommaKeyword_3_3_0() { return cCommaKeyword_3_3_0; }
//incoming+=[ActivityEdge]
public Assignment getIncomingAssignment_3_3_1() { return cIncomingAssignment_3_3_1; }
//[ActivityEdge]
public CrossReference getIncomingActivityEdgeCrossReference_3_3_1_0() { return cIncomingActivityEdgeCrossReference_3_3_1_0; }
//ID
public RuleCall getIncomingActivityEdgeIDTerminalRuleCall_3_3_1_0_1() { return cIncomingActivityEdgeIDTerminalRuleCall_3_3_1_0_1; }
//")"
public Keyword getRightParenthesisKeyword_3_4() { return cRightParenthesisKeyword_3_4; }
//"out" "(" outgoing+=[ActivityEdge] ")"
public Group getGroup_4() { return cGroup_4; }
//"out"
public Keyword getOutKeyword_4_0() { return cOutKeyword_4_0; }
//"("
public Keyword getLeftParenthesisKeyword_4_1() { return cLeftParenthesisKeyword_4_1; }
//outgoing+=[ActivityEdge]
public Assignment getOutgoingAssignment_4_2() { return cOutgoingAssignment_4_2; }
//[ActivityEdge]
public CrossReference getOutgoingActivityEdgeCrossReference_4_2_0() { return cOutgoingActivityEdgeCrossReference_4_2_0; }
//ID
public RuleCall getOutgoingActivityEdgeIDTerminalRuleCall_4_2_0_1() { return cOutgoingActivityEdgeIDTerminalRuleCall_4_2_0_1; }
//")"
public Keyword getRightParenthesisKeyword_4_3() { return cRightParenthesisKeyword_4_3; }
}
public class DecisionNodeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "DecisionNode");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cDecisionNodeAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cDecisionKeyword_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 Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Keyword cInKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
private final Assignment cIncomingAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
private final CrossReference cIncomingActivityEdgeCrossReference_3_2_0 = (CrossReference)cIncomingAssignment_3_2.eContents().get(0);
private final RuleCall cIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1 = (RuleCall)cIncomingActivityEdgeCrossReference_3_2_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_3_3 = (Keyword)cGroup_3.eContents().get(3);
private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
private final Keyword cOutKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
private final Keyword cLeftParenthesisKeyword_4_1 = (Keyword)cGroup_4.eContents().get(1);
private final Assignment cOutgoingAssignment_4_2 = (Assignment)cGroup_4.eContents().get(2);
private final CrossReference cOutgoingActivityEdgeCrossReference_4_2_0 = (CrossReference)cOutgoingAssignment_4_2.eContents().get(0);
private final RuleCall cOutgoingActivityEdgeIDTerminalRuleCall_4_2_0_1 = (RuleCall)cOutgoingActivityEdgeCrossReference_4_2_0.eContents().get(1);
private final Group cGroup_4_3 = (Group)cGroup_4.eContents().get(3);
private final Keyword cCommaKeyword_4_3_0 = (Keyword)cGroup_4_3.eContents().get(0);
private final Assignment cOutgoingAssignment_4_3_1 = (Assignment)cGroup_4_3.eContents().get(1);
private final CrossReference cOutgoingActivityEdgeCrossReference_4_3_1_0 = (CrossReference)cOutgoingAssignment_4_3_1.eContents().get(0);
private final RuleCall cOutgoingActivityEdgeIDTerminalRuleCall_4_3_1_0_1 = (RuleCall)cOutgoingActivityEdgeCrossReference_4_3_1_0.eContents().get(1);
private final Keyword cRightParenthesisKeyword_4_4 = (Keyword)cGroup_4.eContents().get(4);
//DecisionNode:
// {DecisionNode} "decision" name=ID ("in" "(" incoming+=[ActivityEdge] ")") ("out" "(" outgoing+=[ActivityEdge] (","
// outgoing+=[ActivityEdge])* ")")?;
@Override public ParserRule getRule() { return rule; }
//{DecisionNode} "decision" name=ID ("in" "(" incoming+=[ActivityEdge] ")") ("out" "(" outgoing+=[ActivityEdge] (","
//outgoing+=[ActivityEdge])* ")")?
public Group getGroup() { return cGroup; }
//{DecisionNode}
public Action getDecisionNodeAction_0() { return cDecisionNodeAction_0; }
//"decision"
public Keyword getDecisionKeyword_1() { return cDecisionKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//"in" "(" incoming+=[ActivityEdge] ")"
public Group getGroup_3() { return cGroup_3; }
//"in"
public Keyword getInKeyword_3_0() { return cInKeyword_3_0; }
//"("
public Keyword getLeftParenthesisKeyword_3_1() { return cLeftParenthesisKeyword_3_1; }
//incoming+=[ActivityEdge]
public Assignment getIncomingAssignment_3_2() { return cIncomingAssignment_3_2; }
//[ActivityEdge]
public CrossReference getIncomingActivityEdgeCrossReference_3_2_0() { return cIncomingActivityEdgeCrossReference_3_2_0; }
//ID
public RuleCall getIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1() { return cIncomingActivityEdgeIDTerminalRuleCall_3_2_0_1; }
//")"
public Keyword getRightParenthesisKeyword_3_3() { return cRightParenthesisKeyword_3_3; }
//("out" "(" outgoing+=[ActivityEdge] ("," outgoing+=[ActivityEdge])* ")")?
public Group getGroup_4() { return cGroup_4; }
//"out"
public Keyword getOutKeyword_4_0() { return cOutKeyword_4_0; }
//"("
public Keyword getLeftParenthesisKeyword_4_1() { return cLeftParenthesisKeyword_4_1; }
//outgoing+=[ActivityEdge]
public Assignment getOutgoingAssignment_4_2() { return cOutgoingAssignment_4_2; }
//[ActivityEdge]
public CrossReference getOutgoingActivityEdgeCrossReference_4_2_0() { return cOutgoingActivityEdgeCrossReference_4_2_0; }
//ID
public RuleCall getOutgoingActivityEdgeIDTerminalRuleCall_4_2_0_1() { return cOutgoingActivityEdgeIDTerminalRuleCall_4_2_0_1; }
//("," outgoing+=[ActivityEdge])*
public Group getGroup_4_3() { return cGroup_4_3; }
//","
public Keyword getCommaKeyword_4_3_0() { return cCommaKeyword_4_3_0; }
//outgoing+=[ActivityEdge]
public Assignment getOutgoingAssignment_4_3_1() { return cOutgoingAssignment_4_3_1; }
//[ActivityEdge]
public CrossReference getOutgoingActivityEdgeCrossReference_4_3_1_0() { return cOutgoingActivityEdgeCrossReference_4_3_1_0; }
//ID
public RuleCall getOutgoingActivityEdgeIDTerminalRuleCall_4_3_1_0_1() { return cOutgoingActivityEdgeIDTerminalRuleCall_4_3_1_0_1; }
//")"
public Keyword getRightParenthesisKeyword_4_4() { return cRightParenthesisKeyword_4_4; }
}
public class IntegerVariableElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "IntegerVariable");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cIntegerVariableAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cIntKeyword_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 Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Keyword cEqualsSignKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Assignment cInitialValueAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
private final RuleCall cInitialValueIntegerValueParserRuleCall_3_1_0 = (RuleCall)cInitialValueAssignment_3_1.eContents().get(0);
//IntegerVariable:
// {IntegerVariable} "int" name=ID ("=" initialValue=IntegerValue)?;
@Override public ParserRule getRule() { return rule; }
//{IntegerVariable} "int" name=ID ("=" initialValue=IntegerValue)?
public Group getGroup() { return cGroup; }
//{IntegerVariable}
public Action getIntegerVariableAction_0() { return cIntegerVariableAction_0; }
//"int"
public Keyword getIntKeyword_1() { return cIntKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//("=" initialValue=IntegerValue)?
public Group getGroup_3() { return cGroup_3; }
//"="
public Keyword getEqualsSignKeyword_3_0() { return cEqualsSignKeyword_3_0; }
//initialValue=IntegerValue
public Assignment getInitialValueAssignment_3_1() { return cInitialValueAssignment_3_1; }
//IntegerValue
public RuleCall getInitialValueIntegerValueParserRuleCall_3_1_0() { return cInitialValueIntegerValueParserRuleCall_3_1_0; }
}
public class BooleanVariableElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "BooleanVariable");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cBooleanVariableAction_0 = (Action)cGroup.eContents().get(0);
private final Keyword cBoolKeyword_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 Group cGroup_3 = (Group)cGroup.eContents().get(3);
private final Keyword cEqualsSignKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
private final Assignment cInitialValueAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
private final RuleCall cInitialValueBooleanValueParserRuleCall_3_1_0 = (RuleCall)cInitialValueAssignment_3_1.eContents().get(0);
//BooleanVariable:
// {BooleanVariable} "bool" name=ID ("=" initialValue=BooleanValue)?;
@Override public ParserRule getRule() { return rule; }
//{BooleanVariable} "bool" name=ID ("=" initialValue=BooleanValue)?
public Group getGroup() { return cGroup; }
//{BooleanVariable}
public Action getBooleanVariableAction_0() { return cBooleanVariableAction_0; }
//"bool"
public Keyword getBoolKeyword_1() { return cBoolKeyword_1; }
//name=ID
public Assignment getNameAssignment_2() { return cNameAssignment_2; }
//ID
public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
//("=" initialValue=BooleanValue)?
public Group getGroup_3() { return cGroup_3; }
//"="
public Keyword getEqualsSignKeyword_3_0() { return cEqualsSignKeyword_3_0; }
//initialValue=BooleanValue
public Assignment getInitialValueAssignment_3_1() { return cInitialValueAssignment_3_1; }
//BooleanValue
public RuleCall getInitialValueBooleanValueParserRuleCall_3_1_0() { return cInitialValueBooleanValueParserRuleCall_3_1_0; }
}
public class BooleanValueElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "BooleanValue");
private final Assignment cValueAssignment = (Assignment)rule.eContents().get(1);
private final RuleCall cValueEBooleanParserRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0);
//BooleanValue:
// value=EBoolean;
@Override public ParserRule getRule() { return rule; }
//value=EBoolean
public Assignment getValueAssignment() { return cValueAssignment; }
//EBoolean
public RuleCall getValueEBooleanParserRuleCall_0() { return cValueEBooleanParserRuleCall_0; }
}
public class IntegerValueElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "IntegerValue");
private final Assignment cValueAssignment = (Assignment)rule.eContents().get(1);
private final RuleCall cValueINTTerminalRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0);
//IntegerValue:
// value=INT;
@Override public ParserRule getRule() { return rule; }
//value=INT
public Assignment getValueAssignment() { return cValueAssignment; }
//INT
public RuleCall getValueINTTerminalRuleCall_0() { return cValueINTTerminalRuleCall_0; }
}
public class ControlFlowElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ControlFlow");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cFlowKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
private final Keyword cFromKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Assignment cSourceAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final CrossReference cSourceActivityNodeCrossReference_3_0 = (CrossReference)cSourceAssignment_3.eContents().get(0);
private final RuleCall cSourceActivityNodeIDTerminalRuleCall_3_0_1 = (RuleCall)cSourceActivityNodeCrossReference_3_0.eContents().get(1);
private final Keyword cToKeyword_4 = (Keyword)cGroup.eContents().get(4);
private final Assignment cTargetAssignment_5 = (Assignment)cGroup.eContents().get(5);
private final CrossReference cTargetActivityNodeCrossReference_5_0 = (CrossReference)cTargetAssignment_5.eContents().get(0);
private final RuleCall cTargetActivityNodeIDTerminalRuleCall_5_0_1 = (RuleCall)cTargetActivityNodeCrossReference_5_0.eContents().get(1);
private final Group cGroup_6 = (Group)cGroup.eContents().get(6);
private final Keyword cLeftSquareBracketKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0);
private final Assignment cGuardAssignment_6_1 = (Assignment)cGroup_6.eContents().get(1);
private final CrossReference cGuardBooleanVariableCrossReference_6_1_0 = (CrossReference)cGuardAssignment_6_1.eContents().get(0);
private final RuleCall cGuardBooleanVariableIDTerminalRuleCall_6_1_0_1 = (RuleCall)cGuardBooleanVariableCrossReference_6_1_0.eContents().get(1);
private final Keyword cRightSquareBracketKeyword_6_2 = (Keyword)cGroup_6.eContents().get(2);
//ControlFlow:
// "flow" name=ID "from" source=[ActivityNode] "to" target=[ActivityNode] ("[" guard=[BooleanVariable] "]")?;
@Override public ParserRule getRule() { return rule; }
//"flow" name=ID "from" source=[ActivityNode] "to" target=[ActivityNode] ("[" guard=[BooleanVariable] "]")?
public Group getGroup() { return cGroup; }
//"flow"
public Keyword getFlowKeyword_0() { return cFlowKeyword_0; }
//name=ID
public Assignment getNameAssignment_1() { return cNameAssignment_1; }
//ID
public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
//"from"
public Keyword getFromKeyword_2() { return cFromKeyword_2; }
//source=[ActivityNode]
public Assignment getSourceAssignment_3() { return cSourceAssignment_3; }
//[ActivityNode]
public CrossReference getSourceActivityNodeCrossReference_3_0() { return cSourceActivityNodeCrossReference_3_0; }
//ID
public RuleCall getSourceActivityNodeIDTerminalRuleCall_3_0_1() { return cSourceActivityNodeIDTerminalRuleCall_3_0_1; }
//"to"
public Keyword getToKeyword_4() { return cToKeyword_4; }
//target=[ActivityNode]
public Assignment getTargetAssignment_5() { return cTargetAssignment_5; }
//[ActivityNode]
public CrossReference getTargetActivityNodeCrossReference_5_0() { return cTargetActivityNodeCrossReference_5_0; }
//ID
public RuleCall getTargetActivityNodeIDTerminalRuleCall_5_0_1() { return cTargetActivityNodeIDTerminalRuleCall_5_0_1; }
//("[" guard=[BooleanVariable] "]")?
public Group getGroup_6() { return cGroup_6; }
//"["
public Keyword getLeftSquareBracketKeyword_6_0() { return cLeftSquareBracketKeyword_6_0; }
//guard=[BooleanVariable]
public Assignment getGuardAssignment_6_1() { return cGuardAssignment_6_1; }
//[BooleanVariable]
public CrossReference getGuardBooleanVariableCrossReference_6_1_0() { return cGuardBooleanVariableCrossReference_6_1_0; }
//ID
public RuleCall getGuardBooleanVariableIDTerminalRuleCall_6_1_0_1() { return cGuardBooleanVariableIDTerminalRuleCall_6_1_0_1; }
//"]"
public Keyword getRightSquareBracketKeyword_6_2() { return cRightSquareBracketKeyword_6_2; }
}
public class DoubleElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Double");
private final Group cGroup = (Group)rule.eContents().get(1);
private final RuleCall cINTTerminalRuleCall_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 cINTTerminalRuleCall_1_1 = (RuleCall)cGroup_1.eContents().get(1);
//Double returns ecore::EDouble:
// INT ("." INT)?;
@Override public ParserRule getRule() { return rule; }
//INT ("." INT)?
public Group getGroup() { return cGroup; }
//INT
public RuleCall getINTTerminalRuleCall_0() { return cINTTerminalRuleCall_0; }
//("." INT)?
public Group getGroup_1() { return cGroup_1; }
//"."
public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; }
//INT
public RuleCall getINTTerminalRuleCall_1_1() { return cINTTerminalRuleCall_1_1; }
}
public class BoardTypeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "BoardType");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final EnumLiteralDeclaration cRaspberryPiEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0);
private final Keyword cRaspberryPiRaspberryPiKeyword_0_0 = (Keyword)cRaspberryPiEnumLiteralDeclaration_0.eContents().get(0);
private final EnumLiteralDeclaration cArduinoEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1);
private final Keyword cArduinoArduinoKeyword_1_0 = (Keyword)cArduinoEnumLiteralDeclaration_1.eContents().get(0);
private final EnumLiteralDeclaration cBeagleBoardEnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2);
private final Keyword cBeagleBoardBeagleBoardKeyword_2_0 = (Keyword)cBeagleBoardEnumLiteralDeclaration_2.eContents().get(0);
//enum BoardType:
// RaspberryPi | Arduino | BeagleBoard;
public EnumRule getRule() { return rule; }
//RaspberryPi | Arduino | BeagleBoard
public Alternatives getAlternatives() { return cAlternatives; }
//RaspberryPi
public EnumLiteralDeclaration getRaspberryPiEnumLiteralDeclaration_0() { return cRaspberryPiEnumLiteralDeclaration_0; }
//"RaspberryPi"
public Keyword getRaspberryPiRaspberryPiKeyword_0_0() { return cRaspberryPiRaspberryPiKeyword_0_0; }
//Arduino
public EnumLiteralDeclaration getArduinoEnumLiteralDeclaration_1() { return cArduinoEnumLiteralDeclaration_1; }
//"Arduino"
public Keyword getArduinoArduinoKeyword_1_0() { return cArduinoArduinoKeyword_1_0; }
//BeagleBoard
public EnumLiteralDeclaration getBeagleBoardEnumLiteralDeclaration_2() { return cBeagleBoardEnumLiteralDeclaration_2; }
//"BeagleBoard"
public Keyword getBeagleBoardBeagleBoardKeyword_2_0() { return cBeagleBoardBeagleBoardKeyword_2_0; }
}
public class Param_attributeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "param_attribute");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final EnumLiteralDeclaration cPARAM_INEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0);
private final Keyword cPARAM_INInKeyword_0_0 = (Keyword)cPARAM_INEnumLiteralDeclaration_0.eContents().get(0);
private final EnumLiteralDeclaration cPARAM_OUTEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1);
private final Keyword cPARAM_OUTOutKeyword_1_0 = (Keyword)cPARAM_OUTEnumLiteralDeclaration_1.eContents().get(0);
private final EnumLiteralDeclaration cPARAM_INOUTEnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2);
private final Keyword cPARAM_INOUTInoutKeyword_2_0 = (Keyword)cPARAM_INOUTEnumLiteralDeclaration_2.eContents().get(0);
//enum param_attribute returns ParameterMode:
// PARAM_IN="in" | PARAM_OUT="out" | PARAM_INOUT="inout";
public EnumRule getRule() { return rule; }
//PARAM_IN="in" | PARAM_OUT="out" | PARAM_INOUT="inout"
public Alternatives getAlternatives() { return cAlternatives; }
//PARAM_IN="in"
public EnumLiteralDeclaration getPARAM_INEnumLiteralDeclaration_0() { return cPARAM_INEnumLiteralDeclaration_0; }
//"in"
public Keyword getPARAM_INInKeyword_0_0() { return cPARAM_INInKeyword_0_0; }
//PARAM_OUT="out"
public EnumLiteralDeclaration getPARAM_OUTEnumLiteralDeclaration_1() { return cPARAM_OUTEnumLiteralDeclaration_1; }
//"out"
public Keyword getPARAM_OUTOutKeyword_1_0() { return cPARAM_OUTOutKeyword_1_0; }
//PARAM_INOUT="inout"
public EnumLiteralDeclaration getPARAM_INOUTEnumLiteralDeclaration_2() { return cPARAM_INOUTEnumLiteralDeclaration_2; }
//"inout"
public Keyword getPARAM_INOUTInoutKeyword_2_0() { return cPARAM_INOUTInoutKeyword_2_0; }
}
public class Float_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "float_type");
private final EnumLiteralDeclaration cPK_FLOATEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_FLOATFloatKeyword_0 = (Keyword)cPK_FLOATEnumLiteralDeclaration.eContents().get(0);
//enum float_type returns PrimitiveKind:
// PK_FLOAT="float";
public EnumRule getRule() { return rule; }
//PK_FLOAT="float"
public EnumLiteralDeclaration getPK_FLOATEnumLiteralDeclaration() { return cPK_FLOATEnumLiteralDeclaration; }
//"float"
public Keyword getPK_FLOATFloatKeyword_0() { return cPK_FLOATFloatKeyword_0; }
}
public class Double_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "double_type");
private final EnumLiteralDeclaration cPK_DOUBLEEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_DOUBLEDoubleKeyword_0 = (Keyword)cPK_DOUBLEEnumLiteralDeclaration.eContents().get(0);
//enum double_type returns PrimitiveKind:
// PK_DOUBLE="double";
public EnumRule getRule() { return rule; }
//PK_DOUBLE="double"
public EnumLiteralDeclaration getPK_DOUBLEEnumLiteralDeclaration() { return cPK_DOUBLEEnumLiteralDeclaration; }
//"double"
public Keyword getPK_DOUBLEDoubleKeyword_0() { return cPK_DOUBLEDoubleKeyword_0; }
}
public class Short_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "short_type");
private final EnumLiteralDeclaration cPK_SHORTEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_SHORTShortKeyword_0 = (Keyword)cPK_SHORTEnumLiteralDeclaration.eContents().get(0);
//enum short_type returns PrimitiveKind:
// PK_SHORT="short";
public EnumRule getRule() { return rule; }
//PK_SHORT="short"
public EnumLiteralDeclaration getPK_SHORTEnumLiteralDeclaration() { return cPK_SHORTEnumLiteralDeclaration; }
//"short"
public Keyword getPK_SHORTShortKeyword_0() { return cPK_SHORTShortKeyword_0; }
}
public class Long_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "long_type");
private final EnumLiteralDeclaration cPK_LONGEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_LONGLongKeyword_0 = (Keyword)cPK_LONGEnumLiteralDeclaration.eContents().get(0);
//enum long_type returns PrimitiveKind:
// PK_LONG="long";
public EnumRule getRule() { return rule; }
//PK_LONG="long"
public EnumLiteralDeclaration getPK_LONGEnumLiteralDeclaration() { return cPK_LONGEnumLiteralDeclaration; }
//"long"
public Keyword getPK_LONGLongKeyword_0() { return cPK_LONGLongKeyword_0; }
}
public class Char_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "char_type");
private final EnumLiteralDeclaration cPK_CHAREnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_CHARCharKeyword_0 = (Keyword)cPK_CHAREnumLiteralDeclaration.eContents().get(0);
//enum char_type returns PrimitiveKind:
// PK_CHAR="char";
public EnumRule getRule() { return rule; }
//PK_CHAR="char"
public EnumLiteralDeclaration getPK_CHAREnumLiteralDeclaration() { return cPK_CHAREnumLiteralDeclaration; }
//"char"
public Keyword getPK_CHARCharKeyword_0() { return cPK_CHARCharKeyword_0; }
}
public class Wide_char_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "wide_char_type");
private final EnumLiteralDeclaration cPK_WCHAREnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_WCHARWcharKeyword_0 = (Keyword)cPK_WCHAREnumLiteralDeclaration.eContents().get(0);
//enum wide_char_type returns PrimitiveKind:
// PK_WCHAR="wchar";
public EnumRule getRule() { return rule; }
//PK_WCHAR="wchar"
public EnumLiteralDeclaration getPK_WCHAREnumLiteralDeclaration() { return cPK_WCHAREnumLiteralDeclaration; }
//"wchar"
public Keyword getPK_WCHARWcharKeyword_0() { return cPK_WCHARWcharKeyword_0; }
}
public class String_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "string_type");
private final EnumLiteralDeclaration cPK_STRINGEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_STRINGStringKeyword_0 = (Keyword)cPK_STRINGEnumLiteralDeclaration.eContents().get(0);
//enum string_type returns PrimitiveKind:
// PK_STRING="string";
public EnumRule getRule() { return rule; }
//PK_STRING="string"
public EnumLiteralDeclaration getPK_STRINGEnumLiteralDeclaration() { return cPK_STRINGEnumLiteralDeclaration; }
//"string"
public Keyword getPK_STRINGStringKeyword_0() { return cPK_STRINGStringKeyword_0; }
}
public class Wide_string_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "wide_string_type");
private final EnumLiteralDeclaration cPK_WSTRINGEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_WSTRINGWstringKeyword_0 = (Keyword)cPK_WSTRINGEnumLiteralDeclaration.eContents().get(0);
//enum wide_string_type returns PrimitiveKind:
// PK_WSTRING="wstring";
public EnumRule getRule() { return rule; }
//PK_WSTRING="wstring"
public EnumLiteralDeclaration getPK_WSTRINGEnumLiteralDeclaration() { return cPK_WSTRINGEnumLiteralDeclaration; }
//"wstring"
public Keyword getPK_WSTRINGWstringKeyword_0() { return cPK_WSTRINGWstringKeyword_0; }
}
public class Boolean_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "boolean_type");
private final EnumLiteralDeclaration cPK_BOOLEANEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_BOOLEANBooleanKeyword_0 = (Keyword)cPK_BOOLEANEnumLiteralDeclaration.eContents().get(0);
//enum boolean_type returns PrimitiveKind:
// PK_BOOLEAN="boolean";
public EnumRule getRule() { return rule; }
//PK_BOOLEAN="boolean"
public EnumLiteralDeclaration getPK_BOOLEANEnumLiteralDeclaration() { return cPK_BOOLEANEnumLiteralDeclaration; }
//"boolean"
public Keyword getPK_BOOLEANBooleanKeyword_0() { return cPK_BOOLEANBooleanKeyword_0; }
}
public class Octet_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "octet_type");
private final EnumLiteralDeclaration cPK_OCTETEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_OCTETOctetKeyword_0 = (Keyword)cPK_OCTETEnumLiteralDeclaration.eContents().get(0);
//enum octet_type returns PrimitiveKind:
// PK_OCTET="octet";
public EnumRule getRule() { return rule; }
//PK_OCTET="octet"
public EnumLiteralDeclaration getPK_OCTETEnumLiteralDeclaration() { return cPK_OCTETEnumLiteralDeclaration; }
//"octet"
public Keyword getPK_OCTETOctetKeyword_0() { return cPK_OCTETOctetKeyword_0; }
}
public class Any_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "any_type");
private final EnumLiteralDeclaration cPK_ANYEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_ANYAnyKeyword_0 = (Keyword)cPK_ANYEnumLiteralDeclaration.eContents().get(0);
//enum any_type returns PrimitiveKind:
// PK_ANY="any";
public EnumRule getRule() { return rule; }
//PK_ANY="any"
public EnumLiteralDeclaration getPK_ANYEnumLiteralDeclaration() { return cPK_ANYEnumLiteralDeclaration; }
//"any"
public Keyword getPK_ANYAnyKeyword_0() { return cPK_ANYAnyKeyword_0; }
}
public class Object_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "object_type");
private final EnumLiteralDeclaration cPK_OBJREFEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_OBJREFObjectKeyword_0 = (Keyword)cPK_OBJREFEnumLiteralDeclaration.eContents().get(0);
//enum object_type returns PrimitiveKind:
// PK_OBJREF="Object";
public EnumRule getRule() { return rule; }
//PK_OBJREF="Object"
public EnumLiteralDeclaration getPK_OBJREFEnumLiteralDeclaration() { return cPK_OBJREFEnumLiteralDeclaration; }
//"Object"
public Keyword getPK_OBJREFObjectKeyword_0() { return cPK_OBJREFObjectKeyword_0; }
}
public class Void_typeElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "void_type");
private final EnumLiteralDeclaration cPK_VOIDEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cPK_VOIDVoidKeyword_0 = (Keyword)cPK_VOIDEnumLiteralDeclaration.eContents().get(0);
//enum void_type returns PrimitiveKind:
// PK_VOID="void";
public EnumRule getRule() { return rule; }
//PK_VOID="void"
public EnumLiteralDeclaration getPK_VOIDEnumLiteralDeclaration() { return cPK_VOIDEnumLiteralDeclaration; }
//"void"
public Keyword getPK_VOIDVoidKeyword_0() { return cPK_VOIDVoidKeyword_0; }
}
public class IntegerCalculationOperatorElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "IntegerCalculationOperator");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final EnumLiteralDeclaration cADDEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0);
private final Keyword cADDPlusSignKeyword_0_0 = (Keyword)cADDEnumLiteralDeclaration_0.eContents().get(0);
private final EnumLiteralDeclaration cSUBRACTEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1);
private final Keyword cSUBRACTHyphenMinusKeyword_1_0 = (Keyword)cSUBRACTEnumLiteralDeclaration_1.eContents().get(0);
//enum IntegerCalculationOperator:
// ADD="+" | SUBRACT="-";
public EnumRule getRule() { return rule; }
//ADD="+" | SUBRACT="-"
public Alternatives getAlternatives() { return cAlternatives; }
//ADD="+"
public EnumLiteralDeclaration getADDEnumLiteralDeclaration_0() { return cADDEnumLiteralDeclaration_0; }
//"+"
public Keyword getADDPlusSignKeyword_0_0() { return cADDPlusSignKeyword_0_0; }
//SUBRACT="-"
public EnumLiteralDeclaration getSUBRACTEnumLiteralDeclaration_1() { return cSUBRACTEnumLiteralDeclaration_1; }
//"-"
public Keyword getSUBRACTHyphenMinusKeyword_1_0() { return cSUBRACTHyphenMinusKeyword_1_0; }
}
public class IntegerComparisonOperatorElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "IntegerComparisonOperator");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final EnumLiteralDeclaration cSMALLEREnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0);
private final Keyword cSMALLERLessThanSignKeyword_0_0 = (Keyword)cSMALLEREnumLiteralDeclaration_0.eContents().get(0);
private final EnumLiteralDeclaration cSMALLER_EQUALSEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1);
private final Keyword cSMALLER_EQUALSLessThanSignEqualsSignKeyword_1_0 = (Keyword)cSMALLER_EQUALSEnumLiteralDeclaration_1.eContents().get(0);
private final EnumLiteralDeclaration cEQUALSEnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2);
private final Keyword cEQUALSEqualsSignEqualsSignKeyword_2_0 = (Keyword)cEQUALSEnumLiteralDeclaration_2.eContents().get(0);
private final EnumLiteralDeclaration cGREATER_EQUALSEnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3);
private final Keyword cGREATER_EQUALSGreaterThanSignEqualsSignKeyword_3_0 = (Keyword)cGREATER_EQUALSEnumLiteralDeclaration_3.eContents().get(0);
private final EnumLiteralDeclaration cGREATEREnumLiteralDeclaration_4 = (EnumLiteralDeclaration)cAlternatives.eContents().get(4);
private final Keyword cGREATERGreaterThanSignKeyword_4_0 = (Keyword)cGREATEREnumLiteralDeclaration_4.eContents().get(0);
//enum IntegerComparisonOperator:
// SMALLER="<" | SMALLER_EQUALS="<=" | EQUALS="==" | GREATER_EQUALS=">=" | GREATER=">";
public EnumRule getRule() { return rule; }
//SMALLER="<" | SMALLER_EQUALS="<=" | EQUALS="==" | GREATER_EQUALS=">=" | GREATER=">"
public Alternatives getAlternatives() { return cAlternatives; }
//SMALLER="<"
public EnumLiteralDeclaration getSMALLEREnumLiteralDeclaration_0() { return cSMALLEREnumLiteralDeclaration_0; }
//"<"
public Keyword getSMALLERLessThanSignKeyword_0_0() { return cSMALLERLessThanSignKeyword_0_0; }
//SMALLER_EQUALS="<="
public EnumLiteralDeclaration getSMALLER_EQUALSEnumLiteralDeclaration_1() { return cSMALLER_EQUALSEnumLiteralDeclaration_1; }
//"<="
public Keyword getSMALLER_EQUALSLessThanSignEqualsSignKeyword_1_0() { return cSMALLER_EQUALSLessThanSignEqualsSignKeyword_1_0; }
//EQUALS="=="
public EnumLiteralDeclaration getEQUALSEnumLiteralDeclaration_2() { return cEQUALSEnumLiteralDeclaration_2; }
//"=="
public Keyword getEQUALSEqualsSignEqualsSignKeyword_2_0() { return cEQUALSEqualsSignEqualsSignKeyword_2_0; }
//GREATER_EQUALS=">="
public EnumLiteralDeclaration getGREATER_EQUALSEnumLiteralDeclaration_3() { return cGREATER_EQUALSEnumLiteralDeclaration_3; }
//">="
public Keyword getGREATER_EQUALSGreaterThanSignEqualsSignKeyword_3_0() { return cGREATER_EQUALSGreaterThanSignEqualsSignKeyword_3_0; }
//GREATER=">"
public EnumLiteralDeclaration getGREATEREnumLiteralDeclaration_4() { return cGREATEREnumLiteralDeclaration_4; }
//">"
public Keyword getGREATERGreaterThanSignKeyword_4_0() { return cGREATERGreaterThanSignKeyword_4_0; }
}
public class BooleanUnaryOperatorElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "BooleanUnaryOperator");
private final EnumLiteralDeclaration cNOTEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1);
private final Keyword cNOTExclamationMarkKeyword_0 = (Keyword)cNOTEnumLiteralDeclaration.eContents().get(0);
//enum BooleanUnaryOperator:
// NOT="!";
public EnumRule getRule() { return rule; }
//NOT="!"
public EnumLiteralDeclaration getNOTEnumLiteralDeclaration() { return cNOTEnumLiteralDeclaration; }
//"!"
public Keyword getNOTExclamationMarkKeyword_0() { return cNOTExclamationMarkKeyword_0; }
}
public class BooleanBinaryOperatorElements extends AbstractEnumRuleElementFinder {
private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "BooleanBinaryOperator");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final EnumLiteralDeclaration cANDEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0);
private final Keyword cANDAmpersandKeyword_0_0 = (Keyword)cANDEnumLiteralDeclaration_0.eContents().get(0);
private final EnumLiteralDeclaration cOREnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1);
private final Keyword cORVerticalLineKeyword_1_0 = (Keyword)cOREnumLiteralDeclaration_1.eContents().get(0);
//enum BooleanBinaryOperator:
// AND="&" | OR="|";
public EnumRule getRule() { return rule; }
//AND="&" | OR="|"
public Alternatives getAlternatives() { return cAlternatives; }
//AND="&"
public EnumLiteralDeclaration getANDEnumLiteralDeclaration_0() { return cANDEnumLiteralDeclaration_0; }
//"&"
public Keyword getANDAmpersandKeyword_0_0() { return cANDAmpersandKeyword_0_0; }
//OR="|"
public EnumLiteralDeclaration getOREnumLiteralDeclaration_1() { return cOREnumLiteralDeclaration_1; }
//"|"
public Keyword getORVerticalLineKeyword_1_0() { return cORVerticalLineKeyword_1_0; }
}
private final SystemElements pSystem;
private final ContainedElements pContained;
private final HWComponentElements pHWComponent;
private final SensorElements pSensor;
private final ActuatorElements pActuator;
private final BoardElements pBoard;
private final BoardTypeElements unknownRuleBoardType;
private final SketchElements pSketch;
private final EBooleanElements pEBoolean;
private final OperationDefElements pOperationDef;
private final ParameterDefElements pParameterDef;
private final Param_attributeElements unknownRuleParam_attribute;
private final PrimitiveDefElements pPrimitiveDef;
private final Floating_pt_typeElements pFloating_pt_type;
private final Float_typeElements unknownRuleFloat_type;
private final Double_typeElements unknownRuleDouble_type;
private final Longdouble_typeElements pLongdouble_type;
private final Integer_typeElements pInteger_type;
private final Short_typeElements unknownRuleShort_type;
private final Long_typeElements unknownRuleLong_type;
private final Longlong_typeElements pLonglong_type;
private final Ushort_typeElements pUshort_type;
private final Ulong_typeElements pUlong_type;
private final Ulonglong_typeElements pUlonglong_type;
private final Charstr_typeElements pCharstr_type;
private final Char_typeElements unknownRuleChar_type;
private final Wide_char_typeElements unknownRuleWide_char_type;
private final String_typeElements unknownRuleString_type;
private final Wide_string_typeElements unknownRuleWide_string_type;
private final Other_typeElements pOther_type;
private final Boolean_typeElements unknownRuleBoolean_type;
private final Octet_typeElements unknownRuleOctet_type;
private final Any_typeElements unknownRuleAny_type;
private final Object_typeElements unknownRuleObject_type;
private final Void_typeElements unknownRuleVoid_type;
private final ChunkElements pChunk;
private final BlockElements pBlock;
private final LastStatementElements pLastStatement;
private final LastStatement_ReturnElements pLastStatement_Return;
private final LastStatement_BreakElements pLastStatement_Break;
private final StatementElements pStatement;
private final Statement_BlockElements pStatement_Block;
private final Statement_WhileElements pStatement_While;
private final Statement_RepeatElements pStatement_Repeat;
private final Statement_If_Then_ElseElements pStatement_If_Then_Else;
private final Statement_If_Then_Else_ElseIfPartElements pStatement_If_Then_Else_ElseIfPart;
private final Statement_For_NumericElements pStatement_For_Numeric;
private final Statement_For_GenericElements pStatement_For_Generic;
private final Statement_GlobalFunction_DeclarationElements pStatement_GlobalFunction_Declaration;
private final Statement_LocalFunction_DeclarationElements pStatement_LocalFunction_Declaration;
private final Statement_Local_Variable_DeclarationElements pStatement_Local_Variable_Declaration;
private final Statement_FunctioncallOrAssignmentElements pStatement_FunctioncallOrAssignment;
private final ExpressionElements pExpression;
private final Expression_OrElements pExpression_Or;
private final Expression_AndElements pExpression_And;
private final Expression_CompareElements pExpression_Compare;
private final Expression_ConcatenationElements pExpression_Concatenation;
private final Expression_PlusMinusElements pExpression_PlusMinus;
private final Expression_MultiplicationDivisionModuloElements pExpression_MultiplicationDivisionModulo;
private final Expression_UnaryElements pExpression_Unary;
private final Expression_ExponentiationElements pExpression_Exponentiation;
private final Expression_TerminalElements pExpression_Terminal;
private final Expression_NilElements pExpression_Nil;
private final Expression_TrueElements pExpression_True;
private final Expression_FalseElements pExpression_False;
private final Expression_NumberElements pExpression_Number;
private final Expression_VarArgsElements pExpression_VarArgs;
private final Expression_StringElements pExpression_String;
private final Expression_FunctionElements pExpression_Function;
private final Expression_TableConstructorElements pExpression_TableConstructor;
private final Expression_FunctioncallElements pExpression_Functioncall;
private final Expression_AccessMemberOrArrayElementElements pExpression_AccessMemberOrArrayElement;
private final Expression_VariableNameElements pExpression_VariableName;
private final FunctionElements pFunction;
private final Functioncall_ArgumentsElements pFunctioncall_Arguments;
private final FieldElements pField;
private final Field_AddEntryToTable_BracketsElements pField_AddEntryToTable_Brackets;
private final Field_AddEntryToTableElements pField_AddEntryToTable;
private final Field_AppendEntryToTableElements pField_AppendEntryToTable;
private final ActivityElements pActivity;
private final ActivityNodeElements pActivityNode;
private final ActivityEdgeElements pActivityEdge;
private final VariableElements pVariable;
private final ValueElements pValue;
private final OpaqueActionElements pOpaqueAction;
private final ActivityExpressionElements pActivityExpression;
private final IntegerCalculationOperatorElements unknownRuleIntegerCalculationOperator;
private final IntegerComparisonOperatorElements unknownRuleIntegerComparisonOperator;
private final BooleanUnaryOperatorElements unknownRuleBooleanUnaryOperator;
private final BooleanBinaryOperatorElements unknownRuleBooleanBinaryOperator;
private final IntegerCalculationExpressionElements pIntegerCalculationExpression;
private final IntegerComparisonExpressionElements pIntegerComparisonExpression;
private final BooleanUnaryExpressionElements pBooleanUnaryExpression;
private final BooleanBinaryExpressionElements pBooleanBinaryExpression;
private final InitialNodeElements pInitialNode;
private final ActivityFinalNodeElements pActivityFinalNode;
private final ForkNodeElements pForkNode;
private final JoinNodeElements pJoinNode;
private final MergeNodeElements pMergeNode;
private final DecisionNodeElements pDecisionNode;
private final IntegerVariableElements pIntegerVariable;
private final BooleanVariableElements pBooleanVariable;
private final BooleanValueElements pBooleanValue;
private final IntegerValueElements pIntegerValue;
private final ControlFlowElements pControlFlow;
private final DoubleElements pDouble;
private final Grammar grammar;
private final TerminalsGrammarAccess gaTerminals;
@Inject
public IoT2GrammarAccess(GrammarProvider grammarProvider,
TerminalsGrammarAccess gaTerminals) {
this.grammar = internalFindGrammar(grammarProvider);
this.gaTerminals = gaTerminals;
this.pSystem = new SystemElements();
this.pContained = new ContainedElements();
this.pHWComponent = new HWComponentElements();
this.pSensor = new SensorElements();
this.pActuator = new ActuatorElements();
this.pBoard = new BoardElements();
this.unknownRuleBoardType = new BoardTypeElements();
this.pSketch = new SketchElements();
this.pEBoolean = new EBooleanElements();
this.pOperationDef = new OperationDefElements();
this.pParameterDef = new ParameterDefElements();
this.unknownRuleParam_attribute = new Param_attributeElements();
this.pPrimitiveDef = new PrimitiveDefElements();
this.pFloating_pt_type = new Floating_pt_typeElements();
this.unknownRuleFloat_type = new Float_typeElements();
this.unknownRuleDouble_type = new Double_typeElements();
this.pLongdouble_type = new Longdouble_typeElements();
this.pInteger_type = new Integer_typeElements();
this.unknownRuleShort_type = new Short_typeElements();
this.unknownRuleLong_type = new Long_typeElements();
this.pLonglong_type = new Longlong_typeElements();
this.pUshort_type = new Ushort_typeElements();
this.pUlong_type = new Ulong_typeElements();
this.pUlonglong_type = new Ulonglong_typeElements();
this.pCharstr_type = new Charstr_typeElements();
this.unknownRuleChar_type = new Char_typeElements();
this.unknownRuleWide_char_type = new Wide_char_typeElements();
this.unknownRuleString_type = new String_typeElements();
this.unknownRuleWide_string_type = new Wide_string_typeElements();
this.pOther_type = new Other_typeElements();
this.unknownRuleBoolean_type = new Boolean_typeElements();
this.unknownRuleOctet_type = new Octet_typeElements();
this.unknownRuleAny_type = new Any_typeElements();
this.unknownRuleObject_type = new Object_typeElements();
this.unknownRuleVoid_type = new Void_typeElements();
this.pChunk = new ChunkElements();
this.pBlock = new BlockElements();
this.pLastStatement = new LastStatementElements();
this.pLastStatement_Return = new LastStatement_ReturnElements();
this.pLastStatement_Break = new LastStatement_BreakElements();
this.pStatement = new StatementElements();
this.pStatement_Block = new Statement_BlockElements();
this.pStatement_While = new Statement_WhileElements();
this.pStatement_Repeat = new Statement_RepeatElements();
this.pStatement_If_Then_Else = new Statement_If_Then_ElseElements();
this.pStatement_If_Then_Else_ElseIfPart = new Statement_If_Then_Else_ElseIfPartElements();
this.pStatement_For_Numeric = new Statement_For_NumericElements();
this.pStatement_For_Generic = new Statement_For_GenericElements();
this.pStatement_GlobalFunction_Declaration = new Statement_GlobalFunction_DeclarationElements();
this.pStatement_LocalFunction_Declaration = new Statement_LocalFunction_DeclarationElements();
this.pStatement_Local_Variable_Declaration = new Statement_Local_Variable_DeclarationElements();
this.pStatement_FunctioncallOrAssignment = new Statement_FunctioncallOrAssignmentElements();
this.pExpression = new ExpressionElements();
this.pExpression_Or = new Expression_OrElements();
this.pExpression_And = new Expression_AndElements();
this.pExpression_Compare = new Expression_CompareElements();
this.pExpression_Concatenation = new Expression_ConcatenationElements();
this.pExpression_PlusMinus = new Expression_PlusMinusElements();
this.pExpression_MultiplicationDivisionModulo = new Expression_MultiplicationDivisionModuloElements();
this.pExpression_Unary = new Expression_UnaryElements();
this.pExpression_Exponentiation = new Expression_ExponentiationElements();
this.pExpression_Terminal = new Expression_TerminalElements();
this.pExpression_Nil = new Expression_NilElements();
this.pExpression_True = new Expression_TrueElements();
this.pExpression_False = new Expression_FalseElements();
this.pExpression_Number = new Expression_NumberElements();
this.pExpression_VarArgs = new Expression_VarArgsElements();
this.pExpression_String = new Expression_StringElements();
this.pExpression_Function = new Expression_FunctionElements();
this.pExpression_TableConstructor = new Expression_TableConstructorElements();
this.pExpression_Functioncall = new Expression_FunctioncallElements();
this.pExpression_AccessMemberOrArrayElement = new Expression_AccessMemberOrArrayElementElements();
this.pExpression_VariableName = new Expression_VariableNameElements();
this.pFunction = new FunctionElements();
this.pFunctioncall_Arguments = new Functioncall_ArgumentsElements();
this.pField = new FieldElements();
this.pField_AddEntryToTable_Brackets = new Field_AddEntryToTable_BracketsElements();
this.pField_AddEntryToTable = new Field_AddEntryToTableElements();
this.pField_AppendEntryToTable = new Field_AppendEntryToTableElements();
this.pActivity = new ActivityElements();
this.pActivityNode = new ActivityNodeElements();
this.pActivityEdge = new ActivityEdgeElements();
this.pVariable = new VariableElements();
this.pValue = new ValueElements();
this.pOpaqueAction = new OpaqueActionElements();
this.pActivityExpression = new ActivityExpressionElements();
this.unknownRuleIntegerCalculationOperator = new IntegerCalculationOperatorElements();
this.unknownRuleIntegerComparisonOperator = new IntegerComparisonOperatorElements();
this.unknownRuleBooleanUnaryOperator = new BooleanUnaryOperatorElements();
this.unknownRuleBooleanBinaryOperator = new BooleanBinaryOperatorElements();
this.pIntegerCalculationExpression = new IntegerCalculationExpressionElements();
this.pIntegerComparisonExpression = new IntegerComparisonExpressionElements();
this.pBooleanUnaryExpression = new BooleanUnaryExpressionElements();
this.pBooleanBinaryExpression = new BooleanBinaryExpressionElements();
this.pInitialNode = new InitialNodeElements();
this.pActivityFinalNode = new ActivityFinalNodeElements();
this.pForkNode = new ForkNodeElements();
this.pJoinNode = new JoinNodeElements();
this.pMergeNode = new MergeNodeElements();
this.pDecisionNode = new DecisionNodeElements();
this.pIntegerVariable = new IntegerVariableElements();
this.pBooleanVariable = new BooleanVariableElements();
this.pBooleanValue = new BooleanValueElements();
this.pIntegerValue = new IntegerValueElements();
this.pControlFlow = new ControlFlowElements();
this.pDouble = new DoubleElements();
}
protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
Grammar grammar = grammarProvider.getGrammar(this);
while (grammar != null) {
if ("fr.inria.diverse.iot2.IoT2".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;
}
public TerminalsGrammarAccess getTerminalsGrammarAccess() {
return gaTerminals;
}
//System:
// "system" name=ID "{" (components+=HWComponent components+=HWComponent*)? (boards+=Board boards+=Board*)?
// sketch=Sketch? "}";
public SystemElements getSystemAccess() {
return pSystem;
}
public ParserRule getSystemRule() {
return getSystemAccess().getRule();
}
//Contained:
// OperationDef;
public ContainedElements getContainedAccess() {
return pContained;
}
public ParserRule getContainedRule() {
return getContainedAccess().getRule();
}
//HWComponent:
// Sensor | Actuator;
public HWComponentElements getHWComponentAccess() {
return pHWComponent;
}
public ParserRule getHWComponentRule() {
return getHWComponentAccess().getRule();
}
//Sensor:
// "sensor" name=ID ("{" ("provides" services+=OperationDef)* "}")?;
public SensorElements getSensorAccess() {
return pSensor;
}
public ParserRule getSensorRule() {
return getSensorAccess().getRule();
}
//Actuator:
// "actuator" name=ID ("{" ("provides" services+=OperationDef)* "}")?;
public ActuatorElements getActuatorAccess() {
return pActuator;
}
public ParserRule getActuatorRule() {
return getActuatorAccess().getRule();
}
//Board:
// {Board} "board" name=ID "[" type=BoardType "]" ("{" ("provides" components+=[HWComponent])* "}")?;
public BoardElements getBoardAccess() {
return pBoard;
}
public ParserRule getBoardRule() {
return getBoardAccess().getRule();
}
//enum BoardType:
// RaspberryPi | Arduino | BeagleBoard;
public BoardTypeElements getBoardTypeAccess() {
return unknownRuleBoardType;
}
public EnumRule getBoardTypeRule() {
return getBoardTypeAccess().getRule();
}
//Sketch:
// {Sketch} "sketch" "{" activity=Activity "}";
public SketchElements getSketchAccess() {
return pSketch;
}
public ParserRule getSketchRule() {
return getSketchAccess().getRule();
}
//EBoolean returns ecore::EBoolean:
// "true" | "false";
public EBooleanElements getEBooleanAccess() {
return pEBoolean;
}
public ParserRule getEBooleanRule() {
return getEBooleanAccess().getRule();
}
//OperationDef:
// {OperationDef} "operation" name=ID "(" (parameters+=ParameterDef ("," parameters+=ParameterDef)*)? ")" "{" lua=Block
// "}";
public OperationDefElements getOperationDefAccess() {
return pOperationDef;
}
public ParserRule getOperationDefRule() {
return getOperationDefAccess().getRule();
}
//ParameterDef:
// direction=param_attribute containedType=PrimitiveDef identifier=ID;
public ParameterDefElements getParameterDefAccess() {
return pParameterDef;
}
public ParserRule getParameterDefRule() {
return getParameterDefAccess().getRule();
}
//enum param_attribute returns ParameterMode:
// PARAM_IN="in" | PARAM_OUT="out" | PARAM_INOUT="inout";
public Param_attributeElements getParam_attributeAccess() {
return unknownRuleParam_attribute;
}
public EnumRule getParam_attributeRule() {
return getParam_attributeAccess().getRule();
}
//PrimitiveDef:
// integer_type | floating_pt_type | charstr_type | other_type;
public PrimitiveDefElements getPrimitiveDefAccess() {
return pPrimitiveDef;
}
public ParserRule getPrimitiveDefRule() {
return getPrimitiveDefAccess().getRule();
}
////---------------------------
//// BASE TYPES
////---------------------------
//floating_pt_type returns PrimitiveDef:
// kind=float_type | kind=double_type | kind=longdouble_type;
public Floating_pt_typeElements getFloating_pt_typeAccess() {
return pFloating_pt_type;
}
public ParserRule getFloating_pt_typeRule() {
return getFloating_pt_typeAccess().getRule();
}
//enum float_type returns PrimitiveKind:
// PK_FLOAT="float";
public Float_typeElements getFloat_typeAccess() {
return unknownRuleFloat_type;
}
public EnumRule getFloat_typeRule() {
return getFloat_typeAccess().getRule();
}
//enum double_type returns PrimitiveKind:
// PK_DOUBLE="double";
public Double_typeElements getDouble_typeAccess() {
return unknownRuleDouble_type;
}
public EnumRule getDouble_typeRule() {
return getDouble_typeAccess().getRule();
}
//longdouble_type returns PrimitiveKind:
// "long" "double";
public Longdouble_typeElements getLongdouble_typeAccess() {
return pLongdouble_type;
}
public ParserRule getLongdouble_typeRule() {
return getLongdouble_typeAccess().getRule();
}
//integer_type returns PrimitiveDef:
// kind=short_type | kind=long_type | kind=longlong_type | kind=ushort_type | kind=ulong_type | kind=ulonglong_type;
public Integer_typeElements getInteger_typeAccess() {
return pInteger_type;
}
public ParserRule getInteger_typeRule() {
return getInteger_typeAccess().getRule();
}
//enum short_type returns PrimitiveKind:
// PK_SHORT="short";
public Short_typeElements getShort_typeAccess() {
return unknownRuleShort_type;
}
public EnumRule getShort_typeRule() {
return getShort_typeAccess().getRule();
}
//enum long_type returns PrimitiveKind:
// PK_LONG="long";
public Long_typeElements getLong_typeAccess() {
return unknownRuleLong_type;
}
public EnumRule getLong_typeRule() {
return getLong_typeAccess().getRule();
}
//longlong_type returns PrimitiveKind:
// "long" "long";
public Longlong_typeElements getLonglong_typeAccess() {
return pLonglong_type;
}
public ParserRule getLonglong_typeRule() {
return getLonglong_typeAccess().getRule();
}
//ushort_type returns PrimitiveKind:
// "unsigned" "short";
public Ushort_typeElements getUshort_typeAccess() {
return pUshort_type;
}
public ParserRule getUshort_typeRule() {
return getUshort_typeAccess().getRule();
}
//ulong_type returns PrimitiveKind:
// "unsigned" "long";
public Ulong_typeElements getUlong_typeAccess() {
return pUlong_type;
}
public ParserRule getUlong_typeRule() {
return getUlong_typeAccess().getRule();
}
//ulonglong_type returns PrimitiveKind:
// "unsigned" "long" "long";
public Ulonglong_typeElements getUlonglong_typeAccess() {
return pUlonglong_type;
}
public ParserRule getUlonglong_typeRule() {
return getUlonglong_typeAccess().getRule();
}
//charstr_type returns PrimitiveDef:
// kind=char_type | kind=wide_char_type | kind=string_type | kind=wide_string_type;
public Charstr_typeElements getCharstr_typeAccess() {
return pCharstr_type;
}
public ParserRule getCharstr_typeRule() {
return getCharstr_typeAccess().getRule();
}
//enum char_type returns PrimitiveKind:
// PK_CHAR="char";
public Char_typeElements getChar_typeAccess() {
return unknownRuleChar_type;
}
public EnumRule getChar_typeRule() {
return getChar_typeAccess().getRule();
}
//enum wide_char_type returns PrimitiveKind:
// PK_WCHAR="wchar";
public Wide_char_typeElements getWide_char_typeAccess() {
return unknownRuleWide_char_type;
}
public EnumRule getWide_char_typeRule() {
return getWide_char_typeAccess().getRule();
}
//enum string_type returns PrimitiveKind:
// PK_STRING="string";
public String_typeElements getString_typeAccess() {
return unknownRuleString_type;
}
public EnumRule getString_typeRule() {
return getString_typeAccess().getRule();
}
//enum wide_string_type returns PrimitiveKind:
// PK_WSTRING="wstring";
public Wide_string_typeElements getWide_string_typeAccess() {
return unknownRuleWide_string_type;
}
public EnumRule getWide_string_typeRule() {
return getWide_string_typeAccess().getRule();
}
//other_type returns PrimitiveDef:
// kind=boolean_type | kind=octet_type | kind=any_type;
public Other_typeElements getOther_typeAccess() {
return pOther_type;
}
public ParserRule getOther_typeRule() {
return getOther_typeAccess().getRule();
}
//enum boolean_type returns PrimitiveKind:
// PK_BOOLEAN="boolean";
public Boolean_typeElements getBoolean_typeAccess() {
return unknownRuleBoolean_type;
}
public EnumRule getBoolean_typeRule() {
return getBoolean_typeAccess().getRule();
}
//enum octet_type returns PrimitiveKind:
// PK_OCTET="octet";
public Octet_typeElements getOctet_typeAccess() {
return unknownRuleOctet_type;
}
public EnumRule getOctet_typeRule() {
return getOctet_typeAccess().getRule();
}
//enum any_type returns PrimitiveKind:
// PK_ANY="any";
public Any_typeElements getAny_typeAccess() {
return unknownRuleAny_type;
}
public EnumRule getAny_typeRule() {
return getAny_typeAccess().getRule();
}
//enum object_type returns PrimitiveKind:
// PK_OBJREF="Object";
public Object_typeElements getObject_typeAccess() {
return unknownRuleObject_type;
}
public EnumRule getObject_typeRule() {
return getObject_typeAccess().getRule();
}
//enum void_type returns PrimitiveKind:
// PK_VOID="void";
public Void_typeElements getVoid_typeAccess() {
return unknownRuleVoid_type;
}
public EnumRule getVoid_typeRule() {
return getVoid_typeAccess().getRule();
}
//Chunk:
// Block;
public ChunkElements getChunkAccess() {
return pChunk;
}
public ParserRule getChunkRule() {
return getChunkAccess().getRule();
}
//Block:
// {Block} (statements+=Statement ";"?)* (returnValue=LastStatement ";"?)?;
public BlockElements getBlockAccess() {
return pBlock;
}
public ParserRule getBlockRule() {
return getBlockAccess().getRule();
}
//// ****************************************************
//// LAST STATEMENT
//// ****************************************************
//LastStatement:
// LastStatement_Return | LastStatement_Break;
public LastStatementElements getLastStatementAccess() {
return pLastStatement;
}
public ParserRule getLastStatementRule() {
return getLastStatementAccess().getRule();
}
//// The return statement is used to return values from a function or a chunk
//LastStatement_Return:
// "return" {LastStatement_ReturnWithValue} (returnValues+=Expression ("," returnValues+=Expression)*)?;
public LastStatement_ReturnElements getLastStatement_ReturnAccess() {
return pLastStatement_Return;
}
public ParserRule getLastStatement_ReturnRule() {
return getLastStatement_ReturnAccess().getRule();
}
//// The break statement is used to terminate the execution of a while, repeat, or for loop, skipping to the next statement after the loop
//LastStatement_Break:
// "break" {LastStatement_Break};
public LastStatement_BreakElements getLastStatement_BreakAccess() {
return pLastStatement_Break;
}
public ParserRule getLastStatement_BreakRule() {
return getLastStatement_BreakAccess().getRule();
}
//// ****************************************************
//// STATEMENT
//// ****************************************************
//Statement:
// Statement_Block | Statement_While | Statement_Repeat | Statement_If_Then_Else | Statement_For_Numeric |
// Statement_For_Generic | Statement_GlobalFunction_Declaration | Statement_LocalFunction_Declaration |
// Statement_Local_Variable_Declaration | Statement_FunctioncallOrAssignment;
public StatementElements getStatementAccess() {
return pStatement;
}
public ParserRule getStatementRule() {
return getStatementAccess().getRule();
}
//// A block can be explicitly delimited to produce a single statement. "do ... end"
//Statement_Block:
// "do" block=Block "end";
public Statement_BlockElements getStatement_BlockAccess() {
return pStatement_Block;
}
public ParserRule getStatement_BlockRule() {
return getStatement_BlockAccess().getRule();
}
//// Control structure. "while ... do ... end"
//Statement_While:
// "while" expression=Expression "do" block=Block "end";
public Statement_WhileElements getStatement_WhileAccess() {
return pStatement_While;
}
public ParserRule getStatement_WhileRule() {
return getStatement_WhileAccess().getRule();
}
//// Control structure. "repeat ... until ..."
//Statement_Repeat:
// "repeat" block=Block "until" expression=Expression;
public Statement_RepeatElements getStatement_RepeatAccess() {
return pStatement_Repeat;
}
public ParserRule getStatement_RepeatRule() {
return getStatement_RepeatAccess().getRule();
}
//// Control structure. "if ... then ... elseif ... elseif ... else ... end"
//Statement_If_Then_Else:
// "if" ifExpression=Expression "then" ifBlock=Block elseIf+=Statement_If_Then_Else_ElseIfPart* ("else" elseBlock=Block)?
// "end";
public Statement_If_Then_ElseElements getStatement_If_Then_ElseAccess() {
return pStatement_If_Then_Else;
}
public ParserRule getStatement_If_Then_ElseRule() {
return getStatement_If_Then_ElseAccess().getRule();
}
//Statement_If_Then_Else_ElseIfPart:
// "elseif" elseifExpression=Expression "then" elseifBlock=Block;
public Statement_If_Then_Else_ElseIfPartElements getStatement_If_Then_Else_ElseIfPartAccess() {
return pStatement_If_Then_Else_ElseIfPart;
}
public ParserRule getStatement_If_Then_Else_ElseIfPartRule() {
return getStatement_If_Then_Else_ElseIfPartAccess().getRule();
}
//// The numeric for loop repeats a block of code while a control variable runs through an arithmetic progression "for ...=..., ... [,...] do ... end"
//Statement_For_Numeric:
// "for" iteratorName=ID "=" startExpr=Expression "," untilExpr=Expression ("," stepExpr=Expression)? "do" block=Block
// "end";
public Statement_For_NumericElements getStatement_For_NumericAccess() {
return pStatement_For_Numeric;
}
public ParserRule getStatement_For_NumericRule() {
return getStatement_For_NumericAccess().getRule();
}
//// The generic for statement works over functions, called iterators. On each iteration, the iterator function is called to produce a new value, stopping when this new value is nil "for ... in ... do ... end"
//Statement_For_Generic:
// "for" names+=ID ("," names+=ID)* "in" expressions+=Expression ("," expressions+=Expression)* "do" block=Block "end";
public Statement_For_GenericElements getStatement_For_GenericAccess() {
return pStatement_For_Generic;
}
public ParserRule getStatement_For_GenericRule() {
return getStatement_For_GenericAccess().getRule();
}
//Statement_GlobalFunction_Declaration:
// "function" prefix+=ID ("." prefix+=ID)* (":" functionName=ID)? function=Function "end";
public Statement_GlobalFunction_DeclarationElements getStatement_GlobalFunction_DeclarationAccess() {
return pStatement_GlobalFunction_Declaration;
}
public ParserRule getStatement_GlobalFunction_DeclarationRule() {
return getStatement_GlobalFunction_DeclarationAccess().getRule();
}
//Statement_LocalFunction_Declaration:
// "local" "function" functionName=ID function=Function "end";
public Statement_LocalFunction_DeclarationElements getStatement_LocalFunction_DeclarationAccess() {
return pStatement_LocalFunction_Declaration;
}
public ParserRule getStatement_LocalFunction_DeclarationRule() {
return getStatement_LocalFunction_DeclarationAccess().getRule();
}
//// Local variables can be declared anywhere inside a block. The declaration can include an initial assignment "local ... [= ...]"
//Statement_Local_Variable_Declaration:
// "local" variableNames+=ID ("," variableNames+=ID)* ("=" initialValue+=Expression ("," initialValue+=Expression)*)?;
public Statement_Local_Variable_DeclarationElements getStatement_Local_Variable_DeclarationAccess() {
return pStatement_Local_Variable_Declaration;
}
public ParserRule getStatement_Local_Variable_DeclarationRule() {
return getStatement_Local_Variable_DeclarationAccess().getRule();
}
//Statement_FunctioncallOrAssignment:
// Expression_AccessMemberOrArrayElement ({Statement_Assignment.variable+=current} (","
// variable+=Expression_AccessMemberOrArrayElement)* "=" values+=Expression ("," values+=Expression)* // Assignment
// // Call of a member function
// // Call of a function pointer
// | ":" {Statement_CallMemberFunction.object=current} memberFunctionName=ID arguments=Functioncall_Arguments |
// {Statement_CallFunction.object=current} arguments=Functioncall_Arguments);
public Statement_FunctioncallOrAssignmentElements getStatement_FunctioncallOrAssignmentAccess() {
return pStatement_FunctioncallOrAssignment;
}
public ParserRule getStatement_FunctioncallOrAssignmentRule() {
return getStatement_FunctioncallOrAssignmentAccess().getRule();
}
//// ****************************************************
//// EXPRESSIONS
//// ****************************************************
//// Delegate to the priority chain of operators by calling the rule for the lowest priority operator
//Expression:
// Expression_Or;
public ExpressionElements getExpressionAccess() {
return pExpression;
}
public ParserRule getExpressionRule() {
return getExpressionAccess().getRule();
}
//// Or: left associative, priority 0
//Expression_Or returns Expression:
// Expression_And ("or" {Expression_Or.left=current} right=Expression_And)*;
public Expression_OrElements getExpression_OrAccess() {
return pExpression_Or;
}
public ParserRule getExpression_OrRule() {
return getExpression_OrAccess().getRule();
}
//// And: left associative, priority 1
//Expression_And returns Expression:
// Expression_Compare ("and" {Expression_And.left=current} right=Expression_Compare)*;
public Expression_AndElements getExpression_AndAccess() {
return pExpression_And;
}
public ParserRule getExpression_AndRule() {
return getExpression_AndAccess().getRule();
}
//// Comparisons: left associative, priority 2
//Expression_Compare returns Expression:
// Expression_Concatenation (">" {Expression_Larger.left=current} right=Expression_Concatenation | ">="
// {Expression_Larger_Equal.left=current} right=Expression_Concatenation | "<" {Expression_Smaller.left=current}
// right=Expression_Concatenation | "<=" {Expression_Smaller_Equal.left=current} right=Expression_Concatenation | "=="
// {Expression_Equal.left=current} right=Expression_Concatenation | "~=" {Expression_Not_Equal.left=current}
// right=Expression_Concatenation)*;
public Expression_CompareElements getExpression_CompareAccess() {
return pExpression_Compare;
}
public ParserRule getExpression_CompareRule() {
return getExpression_CompareAccess().getRule();
}
//// Concatenation: right associative, priority 3
//Expression_Concatenation returns Expression:
// Expression_PlusMinus (".." {Expression_Concatenation.left=current} right=Expression_Concatenation)?;
public Expression_ConcatenationElements getExpression_ConcatenationAccess() {
return pExpression_Concatenation;
}
public ParserRule getExpression_ConcatenationRule() {
return getExpression_ConcatenationAccess().getRule();
}
//// addition/subtraction: left associative, priority 4
//Expression_PlusMinus returns Expression:
// Expression_MultiplicationDivisionModulo ("+" {Expression_Plus.left=current}
// right=Expression_MultiplicationDivisionModulo | "-" {Expression_Minus.left=current}
// right=Expression_MultiplicationDivisionModulo)*;
public Expression_PlusMinusElements getExpression_PlusMinusAccess() {
return pExpression_PlusMinus;
}
public ParserRule getExpression_PlusMinusRule() {
return getExpression_PlusMinusAccess().getRule();
}
//// multiplication/division, left associative, priority 5
//Expression_MultiplicationDivisionModulo returns Expression:
// Expression_Unary ("*" {Expression_Multiplication.left=current} right=Expression_Unary | "/"
// {Expression_Division.left=current} right=Expression_Unary | "%" {Expression_Modulo.left=current}
// right=Expression_Unary)*;
public Expression_MultiplicationDivisionModuloElements getExpression_MultiplicationDivisionModuloAccess() {
return pExpression_MultiplicationDivisionModulo;
}
public ParserRule getExpression_MultiplicationDivisionModuloRule() {
return getExpression_MultiplicationDivisionModuloAccess().getRule();
}
//// Unary operators: right associative, priority 6
//Expression_Unary returns Expression:
// Expression_Exponentiation | "not" {Expression_Negate} exp=Expression_Unary | "#" {Expression_Length}
// exp=Expression_Unary | "-" {Expression_Invert} exp=Expression_Unary;
public Expression_UnaryElements getExpression_UnaryAccess() {
return pExpression_Unary;
}
public ParserRule getExpression_UnaryRule() {
return getExpression_UnaryAccess().getRule();
}
//// exponentiation: right associative, priority 7
//Expression_Exponentiation returns Expression:
// Expression_Terminal ("^" {Expression_Exponentiation.left=current} right=Expression_Exponentiation)?;
public Expression_ExponentiationElements getExpression_ExponentiationAccess() {
return pExpression_Exponentiation;
}
public ParserRule getExpression_ExponentiationRule() {
return getExpression_ExponentiationAccess().getRule();
}
//Expression_Terminal returns Expression:
// Expression_Nil | Expression_True | Expression_False | Expression_Number | Expression_VarArgs | Expression_String |
// Expression_Function | Expression_TableConstructor | Expression_Functioncall;
public Expression_TerminalElements getExpression_TerminalAccess() {
return pExpression_Terminal;
}
public ParserRule getExpression_TerminalRule() {
return getExpression_TerminalAccess().getRule();
}
//Expression_Nil:
// "nil" {Expression_Nil};
public Expression_NilElements getExpression_NilAccess() {
return pExpression_Nil;
}
public ParserRule getExpression_NilRule() {
return getExpression_NilAccess().getRule();
}
//Expression_True:
// "true" {Expression_True};
public Expression_TrueElements getExpression_TrueAccess() {
return pExpression_True;
}
public ParserRule getExpression_TrueRule() {
return getExpression_TrueAccess().getRule();
}
//Expression_False:
// "false" {Expression_False};
public Expression_FalseElements getExpression_FalseAccess() {
return pExpression_False;
}
public ParserRule getExpression_FalseRule() {
return getExpression_FalseAccess().getRule();
}
//Expression_Number:
// value=Double;
public Expression_NumberElements getExpression_NumberAccess() {
return pExpression_Number;
}
public ParserRule getExpression_NumberRule() {
return getExpression_NumberAccess().getRule();
}
//Expression_VarArgs:
// "..." {Expression_VarArgs};
public Expression_VarArgsElements getExpression_VarArgsAccess() {
return pExpression_VarArgs;
}
public ParserRule getExpression_VarArgsRule() {
return getExpression_VarArgsAccess().getRule();
}
//Expression_String:
// value=STRING;
public Expression_StringElements getExpression_StringAccess() {
return pExpression_String;
}
public ParserRule getExpression_StringRule() {
return getExpression_StringAccess().getRule();
}
//Expression_Function:
// "function" function=Function "end";
public Expression_FunctionElements getExpression_FunctionAccess() {
return pExpression_Function;
}
public ParserRule getExpression_FunctionRule() {
return getExpression_FunctionAccess().getRule();
}
//Expression_TableConstructor:
// "{" {Expression_TableConstructor} (fields+=Field (("," | ";") fields+=Field)* ("," | ";")?)? "}";
public Expression_TableConstructorElements getExpression_TableConstructorAccess() {
return pExpression_TableConstructor;
}
public ParserRule getExpression_TableConstructorRule() {
return getExpression_TableConstructorAccess().getRule();
}
//// Function calls, left associative, single call only, priority 9
//Expression_Functioncall returns Expression:
// Expression_AccessMemberOrArrayElement (":" {Expression_CallMemberFunction.object=current} memberFunctionName=ID
// arguments=Functioncall_Arguments // Member-Funktionsaufruf
// // Aufruf eines Funktionspointer:
// | {Expression_CallFunction.object=current} arguments=Functioncall_Arguments)?;
public Expression_FunctioncallElements getExpression_FunctioncallAccess() {
return pExpression_Functioncall;
}
public ParserRule getExpression_FunctioncallRule() {
return getExpression_FunctioncallAccess().getRule();
}
//// Access a member or array element, left associative, chaining possible, priority 10
//Expression_AccessMemberOrArrayElement returns Expression:
// Expression_VariableName ("[" {Expression_AccessArray.array=current} index=Expression "]" // An expression accessing an element in a variable array
// // Access a member variable using multiple parts separated by "."
// | "." {Expression_AccessMember.object=current} memberName=ID)*;
public Expression_AccessMemberOrArrayElementElements getExpression_AccessMemberOrArrayElementAccess() {
return pExpression_AccessMemberOrArrayElement;
}
public ParserRule getExpression_AccessMemberOrArrayElementRule() {
return getExpression_AccessMemberOrArrayElementAccess().getRule();
}
//// access a variable, terminal expression, priority 11
//// Delegate to top of expression rule chain for bracketed expressions
//Expression_VariableName returns Expression:
// "(" Expression ")" | {Expression_VariableName} variable=ID;
public Expression_VariableNameElements getExpression_VariableNameAccess() {
return pExpression_VariableName;
}
public ParserRule getExpression_VariableNameRule() {
return getExpression_VariableNameAccess().getRule();
}
//// ****************************************************
//// FUNCTIONS
//// ****************************************************
//Function:
// "(" (parameters+=ID ("," parameters+=ID)* ","?)? varArgs?="..."? ")" body=Block;
public FunctionElements getFunctionAccess() {
return pFunction;
}
public ParserRule getFunctionRule() {
return getFunctionAccess().getRule();
}
//// Some syntactic sugar: strings and field can be passed as parameters without bracket
//Functioncall_Arguments:
// {Functioncall_Arguments} ("(" (arguments+=Expression ("," arguments+=Expression)*)? ")" |
// arguments+=Expression_TableConstructor | arguments+=Expression_String);
public Functioncall_ArgumentsElements getFunctioncall_ArgumentsAccess() {
return pFunctioncall_Arguments;
}
public ParserRule getFunctioncall_ArgumentsRule() {
return getFunctioncall_ArgumentsAccess().getRule();
}
//// ****************************************************
//// TABLES/FIELDS
//// ****************************************************
//Field:
// Field_AddEntryToTable_Brackets | Field_AddEntryToTable | Field_AppendEntryToTable;
public FieldElements getFieldAccess() {
return pField;
}
public ParserRule getFieldRule() {
return getFieldAccess().getRule();
}
//// Each field of the form "[exp1] = exp2" adds to the new table an entry with key exp1 and value exp2
//Field_AddEntryToTable_Brackets:
// "[" indexExpression=Expression "]" "=" value=Expression;
public Field_AddEntryToTable_BracketsElements getField_AddEntryToTable_BracketsAccess() {
return pField_AddEntryToTable_Brackets;
}
public ParserRule getField_AddEntryToTable_BracketsRule() {
return getField_AddEntryToTable_BracketsAccess().getRule();
}
//// A field of the form "name = exp" is equivalent to ["name"] = exp
//Field_AddEntryToTable:
// key=ID "=" value=Expression;
public Field_AddEntryToTableElements getField_AddEntryToTableAccess() {
return pField_AddEntryToTable;
}
public ParserRule getField_AddEntryToTableRule() {
return getField_AddEntryToTableAccess().getRule();
}
//// fields of the form "exp" are equivalent to [i] = exp
//Field_AppendEntryToTable:
// value=Expression;
public Field_AppendEntryToTableElements getField_AppendEntryToTableAccess() {
return pField_AppendEntryToTable;
}
public ParserRule getField_AppendEntryToTableRule() {
return getField_AppendEntryToTableAccess().getRule();
}
//// ****************************************************
//// TERMINALS
//// ****************************************************
//// Identifiers can be any string of letters, digits, and underscores, but mustn't begin with a digit.
//Activity:
// {Activity} "activity" name=ID ("(" inputs+=Variable ("," inputs+=Variable)* ")")? "{" (locals+=Variable (","
// locals+=Variable)*)? ("nodes" "{" nodes+=ActivityNode ("," nodes+=ActivityNode)* "}")? ("edges" "{"
// edges+=ActivityEdge ("," edges+=ActivityEdge)* "}")? "}";
public ActivityElements getActivityAccess() {
return pActivity;
}
public ParserRule getActivityRule() {
return getActivityAccess().getRule();
}
//ActivityNode:
// OpaqueAction | InitialNode | ActivityFinalNode | ForkNode | JoinNode | MergeNode | DecisionNode;
public ActivityNodeElements getActivityNodeAccess() {
return pActivityNode;
}
public ParserRule getActivityNodeRule() {
return getActivityNodeAccess().getRule();
}
//ActivityEdge:
// ControlFlow;
public ActivityEdgeElements getActivityEdgeAccess() {
return pActivityEdge;
}
public ParserRule getActivityEdgeRule() {
return getActivityEdgeAccess().getRule();
}
//Variable:
// IntegerVariable | BooleanVariable;
public VariableElements getVariableAccess() {
return pVariable;
}
public ParserRule getVariableRule() {
return getVariableAccess().getRule();
}
//Value:
// BooleanValue | IntegerValue;
public ValueElements getValueAccess() {
return pValue;
}
public ParserRule getValueRule() {
return getValueAccess().getRule();
}
//OpaqueAction:
// {OpaqueAction} "action" name=ID ("comp" "{" expressions+=ActivityExpression ("," expressions+=ActivityExpression)*
// "}")? ("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")? ("out" "(" outgoing+=[ActivityEdge]
// ("," outgoing+=[ActivityEdge])* ")")? ("service" service=[OperationDef])?;
public OpaqueActionElements getOpaqueActionAccess() {
return pOpaqueAction;
}
public ParserRule getOpaqueActionRule() {
return getOpaqueActionAccess().getRule();
}
//ActivityExpression returns Expression:
// IntegerCalculationExpression | IntegerComparisonExpression | BooleanUnaryExpression | BooleanBinaryExpression;
public ActivityExpressionElements getActivityExpressionAccess() {
return pActivityExpression;
}
public ParserRule getActivityExpressionRule() {
return getActivityExpressionAccess().getRule();
}
//enum IntegerCalculationOperator:
// ADD="+" | SUBRACT="-";
public IntegerCalculationOperatorElements getIntegerCalculationOperatorAccess() {
return unknownRuleIntegerCalculationOperator;
}
public EnumRule getIntegerCalculationOperatorRule() {
return getIntegerCalculationOperatorAccess().getRule();
}
//enum IntegerComparisonOperator:
// SMALLER="<" | SMALLER_EQUALS="<=" | EQUALS="==" | GREATER_EQUALS=">=" | GREATER=">";
public IntegerComparisonOperatorElements getIntegerComparisonOperatorAccess() {
return unknownRuleIntegerComparisonOperator;
}
public EnumRule getIntegerComparisonOperatorRule() {
return getIntegerComparisonOperatorAccess().getRule();
}
//enum BooleanUnaryOperator:
// NOT="!";
public BooleanUnaryOperatorElements getBooleanUnaryOperatorAccess() {
return unknownRuleBooleanUnaryOperator;
}
public EnumRule getBooleanUnaryOperatorRule() {
return getBooleanUnaryOperatorAccess().getRule();
}
//enum BooleanBinaryOperator:
// AND="&" | OR="|";
public BooleanBinaryOperatorElements getBooleanBinaryOperatorAccess() {
return unknownRuleBooleanBinaryOperator;
}
public EnumRule getBooleanBinaryOperatorRule() {
return getBooleanBinaryOperatorAccess().getRule();
}
//IntegerCalculationExpression:
// assignee=[IntegerVariable] "=" operand1=[IntegerVariable] operator=IntegerCalculationOperator
// operand2=[IntegerVariable];
public IntegerCalculationExpressionElements getIntegerCalculationExpressionAccess() {
return pIntegerCalculationExpression;
}
public ParserRule getIntegerCalculationExpressionRule() {
return getIntegerCalculationExpressionAccess().getRule();
}
//IntegerComparisonExpression:
// assignee=[BooleanVariable] "=" operand1=[IntegerVariable] operator=IntegerComparisonOperator
// operand2=[IntegerVariable];
public IntegerComparisonExpressionElements getIntegerComparisonExpressionAccess() {
return pIntegerComparisonExpression;
}
public ParserRule getIntegerComparisonExpressionRule() {
return getIntegerComparisonExpressionAccess().getRule();
}
//BooleanUnaryExpression:
// assignee=[BooleanVariable] "=" operator=BooleanUnaryOperator operand=[BooleanVariable];
public BooleanUnaryExpressionElements getBooleanUnaryExpressionAccess() {
return pBooleanUnaryExpression;
}
public ParserRule getBooleanUnaryExpressionRule() {
return getBooleanUnaryExpressionAccess().getRule();
}
//BooleanBinaryExpression:
// assignee=[BooleanVariable] "=" operand1=[BooleanVariable] operator=BooleanBinaryOperator operand2=[BooleanVariable];
public BooleanBinaryExpressionElements getBooleanBinaryExpressionAccess() {
return pBooleanBinaryExpression;
}
public ParserRule getBooleanBinaryExpressionRule() {
return getBooleanBinaryExpressionAccess().getRule();
}
//InitialNode:
// {InitialNode} "initial" name=ID ("out" "(" outgoing+=[ActivityEdge] ("," outgoing+=[ActivityEdge])* ")");
public InitialNodeElements getInitialNodeAccess() {
return pInitialNode;
}
public ParserRule getInitialNodeRule() {
return getInitialNodeAccess().getRule();
}
//ActivityFinalNode:
// {ActivityFinalNode} "final" name=ID ("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")");
public ActivityFinalNodeElements getActivityFinalNodeAccess() {
return pActivityFinalNode;
}
public ParserRule getActivityFinalNodeRule() {
return getActivityFinalNodeAccess().getRule();
}
//ForkNode:
// {ForkNode} "fork" name=ID ("in" "(" incoming+=[ActivityEdge] ")") ("out" "(" outgoing+=[ActivityEdge] (","
// outgoing+=[ActivityEdge])* ")")?;
public ForkNodeElements getForkNodeAccess() {
return pForkNode;
}
public ParserRule getForkNodeRule() {
return getForkNodeAccess().getRule();
}
//JoinNode:
// {JoinNode} "join" name=ID ("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")? ("out" "("
// outgoing+=[ActivityEdge] ")");
public JoinNodeElements getJoinNodeAccess() {
return pJoinNode;
}
public ParserRule getJoinNodeRule() {
return getJoinNodeAccess().getRule();
}
//MergeNode:
// {MergeNode} "merge" name=ID ("in" "(" incoming+=[ActivityEdge] ("," incoming+=[ActivityEdge])* ")")? ("out" "("
// outgoing+=[ActivityEdge] ")");
public MergeNodeElements getMergeNodeAccess() {
return pMergeNode;
}
public ParserRule getMergeNodeRule() {
return getMergeNodeAccess().getRule();
}
//DecisionNode:
// {DecisionNode} "decision" name=ID ("in" "(" incoming+=[ActivityEdge] ")") ("out" "(" outgoing+=[ActivityEdge] (","
// outgoing+=[ActivityEdge])* ")")?;
public DecisionNodeElements getDecisionNodeAccess() {
return pDecisionNode;
}
public ParserRule getDecisionNodeRule() {
return getDecisionNodeAccess().getRule();
}
//IntegerVariable:
// {IntegerVariable} "int" name=ID ("=" initialValue=IntegerValue)?;
public IntegerVariableElements getIntegerVariableAccess() {
return pIntegerVariable;
}
public ParserRule getIntegerVariableRule() {
return getIntegerVariableAccess().getRule();
}
//BooleanVariable:
// {BooleanVariable} "bool" name=ID ("=" initialValue=BooleanValue)?;
public BooleanVariableElements getBooleanVariableAccess() {
return pBooleanVariable;
}
public ParserRule getBooleanVariableRule() {
return getBooleanVariableAccess().getRule();
}
//BooleanValue:
// value=EBoolean;
public BooleanValueElements getBooleanValueAccess() {
return pBooleanValue;
}
public ParserRule getBooleanValueRule() {
return getBooleanValueAccess().getRule();
}
//IntegerValue:
// value=INT;
public IntegerValueElements getIntegerValueAccess() {
return pIntegerValue;
}
public ParserRule getIntegerValueRule() {
return getIntegerValueAccess().getRule();
}
//ControlFlow:
// "flow" name=ID "from" source=[ActivityNode] "to" target=[ActivityNode] ("[" guard=[BooleanVariable] "]")?;
public ControlFlowElements getControlFlowAccess() {
return pControlFlow;
}
public ParserRule getControlFlowRule() {
return getControlFlowAccess().getRule();
}
//Double returns ecore::EDouble:
// INT ("." INT)?;
public DoubleElements getDoubleAccess() {
return pDouble;
}
public ParserRule getDoubleRule() {
return getDoubleAccess().getRule();
}
//terminal ID:
// "^"? ("a".."z" | "A".."Z" | "_") ("a".."z" | "A".."Z" | "_" | "0".."9")*;
public TerminalRule getIDRule() {
return gaTerminals.getIDRule();
}
//terminal INT returns ecore::EInt:
// "0".."9"+;
public TerminalRule getINTRule() {
return gaTerminals.getINTRule();
}
//terminal STRING:
// "\"" ("\\" . / * 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' * / | !("\\" | "\""))* "\"" | "\'" ("\\" .
// / * 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' * / | !("\\" | "\'"))* "\'";
public TerminalRule getSTRINGRule() {
return gaTerminals.getSTRINGRule();
}
//terminal ML_COMMENT:
// "/ *"->"* /";
public TerminalRule getML_COMMENTRule() {
return gaTerminals.getML_COMMENTRule();
}
//terminal SL_COMMENT:
// "//" !("\n" | "\r")* ("\r"? "\n")?;
public TerminalRule getSL_COMMENTRule() {
return gaTerminals.getSL_COMMENTRule();
}
//terminal WS:
// (" " | "\t" | "\r" | "\n")+;
public TerminalRule getWSRule() {
return gaTerminals.getWSRule();
}
//terminal ANY_OTHER:
// .;
public TerminalRule getANY_OTHERRule() {
return gaTerminals.getANY_OTHERRule();
}
}