/*
* generated by Xtext
*/
package emfviews.dsl.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 VpdlGrammarAccess extends AbstractGrammarElementFinder {
public class ModelElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Model");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cCreateViewKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cViewNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cViewNameIDTerminalRuleCall_1_0 = (RuleCall)cViewNameAssignment_1.eContents().get(0);
private final Keyword cOnKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Assignment cMetamodelAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cMetamodelMetamodelParserRuleCall_3_0 = (RuleCall)cMetamodelAssignment_3.eContents().get(0);
private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
private final Keyword cCommaKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
private final Assignment cMetamodelAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1);
private final RuleCall cMetamodelMetamodelParserRuleCall_4_1_0 = (RuleCall)cMetamodelAssignment_4_1.eContents().get(0);
private final Assignment cExpressionAssignment_5 = (Assignment)cGroup.eContents().get(5);
private final RuleCall cExpressionExpressionParserRuleCall_5_0 = (RuleCall)cExpressionAssignment_5.eContents().get(0);
////Grammar to create model views
//Model:
// "create view" viewName=ID "on" metamodel+=Metamodel ("," metamodel+=Metamodel)* expression+=Expression;
public ParserRule getRule() { return rule; }
//"create view" viewName=ID "on" metamodel+=Metamodel ("," metamodel+=Metamodel)* expression+=Expression
public Group getGroup() { return cGroup; }
//"create view"
public Keyword getCreateViewKeyword_0() { return cCreateViewKeyword_0; }
//viewName=ID
public Assignment getViewNameAssignment_1() { return cViewNameAssignment_1; }
//ID
public RuleCall getViewNameIDTerminalRuleCall_1_0() { return cViewNameIDTerminalRuleCall_1_0; }
//"on"
public Keyword getOnKeyword_2() { return cOnKeyword_2; }
//metamodel+=Metamodel
public Assignment getMetamodelAssignment_3() { return cMetamodelAssignment_3; }
//Metamodel
public RuleCall getMetamodelMetamodelParserRuleCall_3_0() { return cMetamodelMetamodelParserRuleCall_3_0; }
//("," metamodel+=Metamodel)*
public Group getGroup_4() { return cGroup_4; }
//","
public Keyword getCommaKeyword_4_0() { return cCommaKeyword_4_0; }
//metamodel+=Metamodel
public Assignment getMetamodelAssignment_4_1() { return cMetamodelAssignment_4_1; }
//Metamodel
public RuleCall getMetamodelMetamodelParserRuleCall_4_1_0() { return cMetamodelMetamodelParserRuleCall_4_1_0; }
//expression+=Expression
public Assignment getExpressionAssignment_5() { return cExpressionAssignment_5; }
//Expression
public RuleCall getExpressionExpressionParserRuleCall_5_0() { return cExpressionExpressionParserRuleCall_5_0; }
}
public class MetamodelElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Metamodel");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cMetamodelURLAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final RuleCall cMetamodelURLEStringParserRuleCall_0_0 = (RuleCall)cMetamodelURLAssignment_0.eContents().get(0);
private final Keyword cAsKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cMetamodelNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final RuleCall cMetamodelNameMetamodelNameParserRuleCall_2_0 = (RuleCall)cMetamodelNameAssignment_2.eContents().get(0);
//Metamodel:
// metamodelURL+=EString "as" metamodelName+=MetamodelName;
public ParserRule getRule() { return rule; }
//metamodelURL+=EString "as" metamodelName+=MetamodelName
public Group getGroup() { return cGroup; }
//metamodelURL+=EString
public Assignment getMetamodelURLAssignment_0() { return cMetamodelURLAssignment_0; }
//EString
public RuleCall getMetamodelURLEStringParserRuleCall_0_0() { return cMetamodelURLEStringParserRuleCall_0_0; }
//"as"
public Keyword getAsKeyword_1() { return cAsKeyword_1; }
//metamodelName+=MetamodelName
public Assignment getMetamodelNameAssignment_2() { return cMetamodelNameAssignment_2; }
//MetamodelName
public RuleCall getMetamodelNameMetamodelNameParserRuleCall_2_0() { return cMetamodelNameMetamodelNameParserRuleCall_2_0; }
}
public class ExpressionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Expression");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cSelectKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final Assignment cSelectAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cSelectSelectParserRuleCall_1_0 = (RuleCall)cSelectAssignment_1.eContents().get(0);
private final Keyword cFromKeyword_2 = (Keyword)cGroup.eContents().get(2);
private final Assignment cFromAssignment_3 = (Assignment)cGroup.eContents().get(3);
private final RuleCall cFromFromParserRuleCall_3_0 = (RuleCall)cFromAssignment_3.eContents().get(0);
private final Keyword cWhereKeyword_4 = (Keyword)cGroup.eContents().get(4);
private final Assignment cConditionAssignment_5 = (Assignment)cGroup.eContents().get(5);
private final RuleCall cConditionConditionParserRuleCall_5_0 = (RuleCall)cConditionAssignment_5.eContents().get(0);
//Expression:
// "select" select+=Select "from" from+=From "where" condition+=Condition+;
public ParserRule getRule() { return rule; }
//"select" select+=Select "from" from+=From "where" condition+=Condition+
public Group getGroup() { return cGroup; }
//"select"
public Keyword getSelectKeyword_0() { return cSelectKeyword_0; }
//select+=Select
public Assignment getSelectAssignment_1() { return cSelectAssignment_1; }
//Select
public RuleCall getSelectSelectParserRuleCall_1_0() { return cSelectSelectParserRuleCall_1_0; }
//"from"
public Keyword getFromKeyword_2() { return cFromKeyword_2; }
//from+=From
public Assignment getFromAssignment_3() { return cFromAssignment_3; }
//From
public RuleCall getFromFromParserRuleCall_3_0() { return cFromFromParserRuleCall_3_0; }
//"where"
public Keyword getWhereKeyword_4() { return cWhereKeyword_4; }
//condition+=Condition+
public Assignment getConditionAssignment_5() { return cConditionAssignment_5; }
//Condition
public RuleCall getConditionConditionParserRuleCall_5_0() { return cConditionConditionParserRuleCall_5_0; }
}
public class SelectElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Select");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final Assignment cSelectAssignment_0 = (Assignment)cAlternatives.eContents().get(0);
private final Keyword cSelectAsteriskKeyword_0_0 = (Keyword)cSelectAssignment_0.eContents().get(0);
private final Group cGroup_1 = (Group)cAlternatives.eContents().get(1);
private final Assignment cSelectAttributeAssignment_1_0 = (Assignment)cGroup_1.eContents().get(0);
private final RuleCall cSelectAttributeSelectAttributeParserRuleCall_1_0_0 = (RuleCall)cSelectAttributeAssignment_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 cSelectAttributeAssignment_1_1_1 = (Assignment)cGroup_1_1.eContents().get(1);
private final RuleCall cSelectAttributeSelectAttributeParserRuleCall_1_1_1_0 = (RuleCall)cSelectAttributeAssignment_1_1_1.eContents().get(0);
//Select:
// select+="*" | selectAttribute+=SelectAttribute ("," selectAttribute+=SelectAttribute)*;
public ParserRule getRule() { return rule; }
//select+="*" | selectAttribute+=SelectAttribute ("," selectAttribute+=SelectAttribute)*
public Alternatives getAlternatives() { return cAlternatives; }
//select+="*"
public Assignment getSelectAssignment_0() { return cSelectAssignment_0; }
//"*"
public Keyword getSelectAsteriskKeyword_0_0() { return cSelectAsteriskKeyword_0_0; }
//selectAttribute+=SelectAttribute ("," selectAttribute+=SelectAttribute)*
public Group getGroup_1() { return cGroup_1; }
//selectAttribute+=SelectAttribute
public Assignment getSelectAttributeAssignment_1_0() { return cSelectAttributeAssignment_1_0; }
//SelectAttribute
public RuleCall getSelectAttributeSelectAttributeParserRuleCall_1_0_0() { return cSelectAttributeSelectAttributeParserRuleCall_1_0_0; }
//("," selectAttribute+=SelectAttribute)*
public Group getGroup_1_1() { return cGroup_1_1; }
//","
public Keyword getCommaKeyword_1_1_0() { return cCommaKeyword_1_1_0; }
//selectAttribute+=SelectAttribute
public Assignment getSelectAttributeAssignment_1_1_1() { return cSelectAttributeAssignment_1_1_1; }
//SelectAttribute
public RuleCall getSelectAttributeSelectAttributeParserRuleCall_1_1_1_0() { return cSelectAttributeSelectAttributeParserRuleCall_1_1_1_0; }
}
public class SelectAttributeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SelectAttribute");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cMetamodelAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final CrossReference cMetamodelMetamodelNameCrossReference_0_0 = (CrossReference)cMetamodelAssignment_0.eContents().get(0);
private final RuleCall cMetamodelMetamodelNameIDTerminalRuleCall_0_0_1 = (RuleCall)cMetamodelMetamodelNameCrossReference_0_0.eContents().get(1);
private final Keyword cFullStopKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cClassAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final RuleCall cClassClassParserRuleCall_2_0 = (RuleCall)cClassAssignment_2.eContents().get(0);
private final Keyword cFullStopKeyword_3 = (Keyword)cGroup.eContents().get(3);
private final Assignment cAttributeAssignment_4 = (Assignment)cGroup.eContents().get(4);
private final RuleCall cAttributeAttributeParserRuleCall_4_0 = (RuleCall)cAttributeAssignment_4.eContents().get(0);
//SelectAttribute:
// metamodel+=[MetamodelName] "." class+=Class "." attribute+=Attribute;
public ParserRule getRule() { return rule; }
//metamodel+=[MetamodelName] "." class+=Class "." attribute+=Attribute
public Group getGroup() { return cGroup; }
//metamodel+=[MetamodelName]
public Assignment getMetamodelAssignment_0() { return cMetamodelAssignment_0; }
//[MetamodelName]
public CrossReference getMetamodelMetamodelNameCrossReference_0_0() { return cMetamodelMetamodelNameCrossReference_0_0; }
//ID
public RuleCall getMetamodelMetamodelNameIDTerminalRuleCall_0_0_1() { return cMetamodelMetamodelNameIDTerminalRuleCall_0_0_1; }
//"."
public Keyword getFullStopKeyword_1() { return cFullStopKeyword_1; }
//class+=Class
public Assignment getClassAssignment_2() { return cClassAssignment_2; }
//Class
public RuleCall getClassClassParserRuleCall_2_0() { return cClassClassParserRuleCall_2_0; }
//"."
public Keyword getFullStopKeyword_3() { return cFullStopKeyword_3; }
//attribute+=Attribute
public Assignment getAttributeAssignment_4() { return cAttributeAssignment_4; }
//Attribute
public RuleCall getAttributeAttributeParserRuleCall_4_0() { return cAttributeAttributeParserRuleCall_4_0; }
}
public class FromElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "From");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cJoinAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final RuleCall cJoinJoinParserRuleCall_0_0 = (RuleCall)cJoinAssignment_0.eContents().get(0);
private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
private final Keyword cCommaKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
private final Assignment cJoinAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
private final RuleCall cJoinJoinParserRuleCall_1_1_0 = (RuleCall)cJoinAssignment_1_1.eContents().get(0);
//From:
// join+=Join ("," join+=Join)*;
public ParserRule getRule() { return rule; }
//join+=Join ("," join+=Join)*
public Group getGroup() { return cGroup; }
//join+=Join
public Assignment getJoinAssignment_0() { return cJoinAssignment_0; }
//Join
public RuleCall getJoinJoinParserRuleCall_0_0() { return cJoinJoinParserRuleCall_0_0; }
//("," join+=Join)*
public Group getGroup_1() { return cGroup_1; }
//","
public Keyword getCommaKeyword_1_0() { return cCommaKeyword_1_0; }
//join+=Join
public Assignment getJoinAssignment_1_1() { return cJoinAssignment_1_1; }
//Join
public RuleCall getJoinJoinParserRuleCall_1_1_0() { return cJoinJoinParserRuleCall_1_1_0; }
}
public class JoinElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Join");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cJoinLeftAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final RuleCall cJoinLeftJoinLeftParserRuleCall_0_0 = (RuleCall)cJoinLeftAssignment_0.eContents().get(0);
private final Keyword cJoinKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cJoinRightAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final RuleCall cJoinRightJoinRightParserRuleCall_2_0 = (RuleCall)cJoinRightAssignment_2.eContents().get(0);
private final Keyword cAsKeyword_3 = (Keyword)cGroup.eContents().get(3);
private final Assignment cRelationAssignment_4 = (Assignment)cGroup.eContents().get(4);
private final RuleCall cRelationRelationParserRuleCall_4_0 = (RuleCall)cRelationAssignment_4.eContents().get(0);
//Join:
// joinLeft+=JoinLeft "join" joinRight+=JoinRight "as" relation+=Relation;
public ParserRule getRule() { return rule; }
//joinLeft+=JoinLeft "join" joinRight+=JoinRight "as" relation+=Relation
public Group getGroup() { return cGroup; }
//joinLeft+=JoinLeft
public Assignment getJoinLeftAssignment_0() { return cJoinLeftAssignment_0; }
//JoinLeft
public RuleCall getJoinLeftJoinLeftParserRuleCall_0_0() { return cJoinLeftJoinLeftParserRuleCall_0_0; }
//"join"
public Keyword getJoinKeyword_1() { return cJoinKeyword_1; }
//joinRight+=JoinRight
public Assignment getJoinRightAssignment_2() { return cJoinRightAssignment_2; }
//JoinRight
public RuleCall getJoinRightJoinRightParserRuleCall_2_0() { return cJoinRightJoinRightParserRuleCall_2_0; }
//"as"
public Keyword getAsKeyword_3() { return cAsKeyword_3; }
//relation+=Relation
public Assignment getRelationAssignment_4() { return cRelationAssignment_4; }
//Relation
public RuleCall getRelationRelationParserRuleCall_4_0() { return cRelationRelationParserRuleCall_4_0; }
}
public class JoinLeftElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "JoinLeft");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cMetamodelLeftAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final CrossReference cMetamodelLeftMetamodelNameCrossReference_0_0 = (CrossReference)cMetamodelLeftAssignment_0.eContents().get(0);
private final RuleCall cMetamodelLeftMetamodelNameIDTerminalRuleCall_0_0_1 = (RuleCall)cMetamodelLeftMetamodelNameCrossReference_0_0.eContents().get(1);
private final Keyword cFullStopKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cClassLeftAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final RuleCall cClassLeftClassParserRuleCall_2_0 = (RuleCall)cClassLeftAssignment_2.eContents().get(0);
//JoinLeft:
// metamodelLeft+=[MetamodelName] "." classLeft+=Class;
public ParserRule getRule() { return rule; }
//metamodelLeft+=[MetamodelName] "." classLeft+=Class
public Group getGroup() { return cGroup; }
//metamodelLeft+=[MetamodelName]
public Assignment getMetamodelLeftAssignment_0() { return cMetamodelLeftAssignment_0; }
//[MetamodelName]
public CrossReference getMetamodelLeftMetamodelNameCrossReference_0_0() { return cMetamodelLeftMetamodelNameCrossReference_0_0; }
//ID
public RuleCall getMetamodelLeftMetamodelNameIDTerminalRuleCall_0_0_1() { return cMetamodelLeftMetamodelNameIDTerminalRuleCall_0_0_1; }
//"."
public Keyword getFullStopKeyword_1() { return cFullStopKeyword_1; }
//classLeft+=Class
public Assignment getClassLeftAssignment_2() { return cClassLeftAssignment_2; }
//Class
public RuleCall getClassLeftClassParserRuleCall_2_0() { return cClassLeftClassParserRuleCall_2_0; }
}
public class JoinRightElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "JoinRight");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cMetamodelRightAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final CrossReference cMetamodelRightMetamodelNameCrossReference_0_0 = (CrossReference)cMetamodelRightAssignment_0.eContents().get(0);
private final RuleCall cMetamodelRightMetamodelNameIDTerminalRuleCall_0_0_1 = (RuleCall)cMetamodelRightMetamodelNameCrossReference_0_0.eContents().get(1);
private final Keyword cFullStopKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cClassRightAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final RuleCall cClassRightClassParserRuleCall_2_0 = (RuleCall)cClassRightAssignment_2.eContents().get(0);
//JoinRight:
// metamodelRight+=[MetamodelName] "." classRight+=Class;
public ParserRule getRule() { return rule; }
//metamodelRight+=[MetamodelName] "." classRight+=Class
public Group getGroup() { return cGroup; }
//metamodelRight+=[MetamodelName]
public Assignment getMetamodelRightAssignment_0() { return cMetamodelRightAssignment_0; }
//[MetamodelName]
public CrossReference getMetamodelRightMetamodelNameCrossReference_0_0() { return cMetamodelRightMetamodelNameCrossReference_0_0; }
//ID
public RuleCall getMetamodelRightMetamodelNameIDTerminalRuleCall_0_0_1() { return cMetamodelRightMetamodelNameIDTerminalRuleCall_0_0_1; }
//"."
public Keyword getFullStopKeyword_1() { return cFullStopKeyword_1; }
//classRight+=Class
public Assignment getClassRightAssignment_2() { return cClassRightAssignment_2; }
//Class
public RuleCall getClassRightClassParserRuleCall_2_0() { return cClassRightClassParserRuleCall_2_0; }
}
public class AttributeElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Attribute");
private final Assignment cNameAssignment = (Assignment)rule.eContents().get(1);
private final RuleCall cNameIDTerminalRuleCall_0 = (RuleCall)cNameAssignment.eContents().get(0);
//Attribute:
// name=ID;
public ParserRule getRule() { return rule; }
//name=ID
public Assignment getNameAssignment() { return cNameAssignment; }
//ID
public RuleCall getNameIDTerminalRuleCall_0() { return cNameIDTerminalRuleCall_0; }
}
public class ClassElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Class");
private final Assignment cNameAssignment = (Assignment)rule.eContents().get(1);
private final RuleCall cNameIDTerminalRuleCall_0 = (RuleCall)cNameAssignment.eContents().get(0);
//Class:
// name=ID;
public ParserRule getRule() { return rule; }
//name=ID
public Assignment getNameAssignment() { return cNameAssignment; }
//ID
public RuleCall getNameIDTerminalRuleCall_0() { return cNameIDTerminalRuleCall_0; }
}
public class MetamodelNameElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "MetamodelName");
private final Assignment cNameAssignment = (Assignment)rule.eContents().get(1);
private final RuleCall cNameIDTerminalRuleCall_0 = (RuleCall)cNameAssignment.eContents().get(0);
//MetamodelName:
// name=ID;
public ParserRule getRule() { return rule; }
//name=ID
public Assignment getNameAssignment() { return cNameAssignment; }
//ID
public RuleCall getNameIDTerminalRuleCall_0() { return cNameIDTerminalRuleCall_0; }
}
public class RelationElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Relation");
private final Assignment cNameAssignment = (Assignment)rule.eContents().get(1);
private final RuleCall cNameIDTerminalRuleCall_0 = (RuleCall)cNameAssignment.eContents().get(0);
//Relation:
// name=ID;
public ParserRule getRule() { return rule; }
//name=ID
public Assignment getNameAssignment() { return cNameAssignment; }
//ID
public RuleCall getNameIDTerminalRuleCall_0() { return cNameIDTerminalRuleCall_0; }
}
public class ConditionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Condition");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
private final Assignment cValueAssignment_0_0 = (Assignment)cAlternatives_0.eContents().get(0);
private final RuleCall cValueComparisonParserRuleCall_0_0_0 = (RuleCall)cValueAssignment_0_0.eContents().get(0);
private final Assignment cValueAssignment_0_1 = (Assignment)cAlternatives_0.eContents().get(1);
private final RuleCall cValueEclExpressionParserRuleCall_0_1_0 = (RuleCall)cValueAssignment_0_1.eContents().get(0);
private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
private final Alternatives cAlternatives_1_0 = (Alternatives)cGroup_1.eContents().get(0);
private final Keyword cAndKeyword_1_0_0 = (Keyword)cAlternatives_1_0.eContents().get(0);
private final Keyword cOrKeyword_1_0_1 = (Keyword)cAlternatives_1_0.eContents().get(1);
private final Alternatives cAlternatives_1_1 = (Alternatives)cGroup_1.eContents().get(1);
private final Assignment cValueAssignment_1_1_0 = (Assignment)cAlternatives_1_1.eContents().get(0);
private final RuleCall cValueComparisonParserRuleCall_1_1_0_0 = (RuleCall)cValueAssignment_1_1_0.eContents().get(0);
private final Assignment cValueAssignment_1_1_1 = (Assignment)cAlternatives_1_1.eContents().get(1);
private final RuleCall cValueEclExpressionParserRuleCall_1_1_1_0 = (RuleCall)cValueAssignment_1_1_1.eContents().get(0);
//Condition:
// (value+=Comparison | value+=EclExpression) (("and" | "or") (value+=Comparison | value+=EclExpression))*;
public ParserRule getRule() { return rule; }
//(value+=Comparison | value+=EclExpression) (("and" | "or") (value+=Comparison | value+=EclExpression))*
public Group getGroup() { return cGroup; }
//value+=Comparison | value+=EclExpression
public Alternatives getAlternatives_0() { return cAlternatives_0; }
//value+=Comparison
public Assignment getValueAssignment_0_0() { return cValueAssignment_0_0; }
//Comparison
public RuleCall getValueComparisonParserRuleCall_0_0_0() { return cValueComparisonParserRuleCall_0_0_0; }
//value+=EclExpression
public Assignment getValueAssignment_0_1() { return cValueAssignment_0_1; }
//EclExpression
public RuleCall getValueEclExpressionParserRuleCall_0_1_0() { return cValueEclExpressionParserRuleCall_0_1_0; }
//(("and" | "or") (value+=Comparison | value+=EclExpression))*
public Group getGroup_1() { return cGroup_1; }
//"and" | "or"
public Alternatives getAlternatives_1_0() { return cAlternatives_1_0; }
//"and"
public Keyword getAndKeyword_1_0_0() { return cAndKeyword_1_0_0; }
//"or"
public Keyword getOrKeyword_1_0_1() { return cOrKeyword_1_0_1; }
//value+=Comparison | value+=EclExpression
public Alternatives getAlternatives_1_1() { return cAlternatives_1_1; }
//value+=Comparison
public Assignment getValueAssignment_1_1_0() { return cValueAssignment_1_1_0; }
//Comparison
public RuleCall getValueComparisonParserRuleCall_1_1_0_0() { return cValueComparisonParserRuleCall_1_1_0_0; }
//value+=EclExpression
public Assignment getValueAssignment_1_1_1() { return cValueAssignment_1_1_1; }
//EclExpression
public RuleCall getValueEclExpressionParserRuleCall_1_1_1_0() { return cValueEclExpressionParserRuleCall_1_1_1_0; }
}
public class EclExpressionElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "EclExpression");
private final Assignment cValueAssignment = (Assignment)rule.eContents().get(1);
private final RuleCall cValueEStringParserRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0);
//EclExpression:
// value=EString;
public ParserRule getRule() { return rule; }
//value=EString
public Assignment getValueAssignment() { return cValueAssignment; }
//EString
public RuleCall getValueEStringParserRuleCall_0() { return cValueEStringParserRuleCall_0; }
}
public class ComparisonElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Comparison");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cLeftAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final RuleCall cLeftLeftParserRuleCall_0_0 = (RuleCall)cLeftAssignment_0.eContents().get(0);
private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
private final Keyword cEqualsSignKeyword_1_0 = (Keyword)cAlternatives_1.eContents().get(0);
private final Keyword cLessThanSignEqualsSignKeyword_1_1 = (Keyword)cAlternatives_1.eContents().get(1);
private final Keyword cGreaterThanSignEqualsSignKeyword_1_2 = (Keyword)cAlternatives_1.eContents().get(2);
private final Keyword cLessThanSignKeyword_1_3 = (Keyword)cAlternatives_1.eContents().get(3);
private final Keyword cGreaterThanSignKeyword_1_4 = (Keyword)cAlternatives_1.eContents().get(4);
private final Keyword cLessThanSignGreaterThanSignKeyword_1_5 = (Keyword)cAlternatives_1.eContents().get(5);
private final Assignment cRightAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final RuleCall cRightRightParserRuleCall_2_0 = (RuleCall)cRightAssignment_2.eContents().get(0);
//Comparison:
// left+=Left ("=" | "<=" | ">=" | "<" | ">" | "<>") right+=Right;
public ParserRule getRule() { return rule; }
//left+=Left ("=" | "<=" | ">=" | "<" | ">" | "<>") right+=Right
public Group getGroup() { return cGroup; }
//left+=Left
public Assignment getLeftAssignment_0() { return cLeftAssignment_0; }
//Left
public RuleCall getLeftLeftParserRuleCall_0_0() { return cLeftLeftParserRuleCall_0_0; }
//"=" | "<=" | ">=" | "<" | ">" | "<>"
public Alternatives getAlternatives_1() { return cAlternatives_1; }
//"="
public Keyword getEqualsSignKeyword_1_0() { return cEqualsSignKeyword_1_0; }
//"<="
public Keyword getLessThanSignEqualsSignKeyword_1_1() { return cLessThanSignEqualsSignKeyword_1_1; }
//">="
public Keyword getGreaterThanSignEqualsSignKeyword_1_2() { return cGreaterThanSignEqualsSignKeyword_1_2; }
//"<"
public Keyword getLessThanSignKeyword_1_3() { return cLessThanSignKeyword_1_3; }
//">"
public Keyword getGreaterThanSignKeyword_1_4() { return cGreaterThanSignKeyword_1_4; }
//"<>"
public Keyword getLessThanSignGreaterThanSignKeyword_1_5() { return cLessThanSignGreaterThanSignKeyword_1_5; }
//right+=Right
public Assignment getRightAssignment_2() { return cRightAssignment_2; }
//Right
public RuleCall getRightRightParserRuleCall_2_0() { return cRightRightParserRuleCall_2_0; }
}
public class LeftElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Left");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cMetamodelAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final CrossReference cMetamodelMetamodelNameCrossReference_0_0 = (CrossReference)cMetamodelAssignment_0.eContents().get(0);
private final RuleCall cMetamodelMetamodelNameIDTerminalRuleCall_0_0_1 = (RuleCall)cMetamodelMetamodelNameCrossReference_0_0.eContents().get(1);
private final Keyword cFullStopKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cClassAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final CrossReference cClassClassCrossReference_2_0 = (CrossReference)cClassAssignment_2.eContents().get(0);
private final RuleCall cClassClassIDTerminalRuleCall_2_0_1 = (RuleCall)cClassClassCrossReference_2_0.eContents().get(1);
private final Keyword cFullStopKeyword_3 = (Keyword)cGroup.eContents().get(3);
private final Assignment cAttributeWhereLeftAssignment_4 = (Assignment)cGroup.eContents().get(4);
private final RuleCall cAttributeWhereLeftAttributeParserRuleCall_4_0 = (RuleCall)cAttributeWhereLeftAssignment_4.eContents().get(0);
//Left:
// metamodel+=[MetamodelName] "." class+=[Class] "." attributeWhereLeft=Attribute;
public ParserRule getRule() { return rule; }
//metamodel+=[MetamodelName] "." class+=[Class] "." attributeWhereLeft=Attribute
public Group getGroup() { return cGroup; }
//metamodel+=[MetamodelName]
public Assignment getMetamodelAssignment_0() { return cMetamodelAssignment_0; }
//[MetamodelName]
public CrossReference getMetamodelMetamodelNameCrossReference_0_0() { return cMetamodelMetamodelNameCrossReference_0_0; }
//ID
public RuleCall getMetamodelMetamodelNameIDTerminalRuleCall_0_0_1() { return cMetamodelMetamodelNameIDTerminalRuleCall_0_0_1; }
//"."
public Keyword getFullStopKeyword_1() { return cFullStopKeyword_1; }
//class+=[Class]
public Assignment getClassAssignment_2() { return cClassAssignment_2; }
//[Class]
public CrossReference getClassClassCrossReference_2_0() { return cClassClassCrossReference_2_0; }
//ID
public RuleCall getClassClassIDTerminalRuleCall_2_0_1() { return cClassClassIDTerminalRuleCall_2_0_1; }
//"."
public Keyword getFullStopKeyword_3() { return cFullStopKeyword_3; }
//attributeWhereLeft=Attribute
public Assignment getAttributeWhereLeftAssignment_4() { return cAttributeWhereLeftAssignment_4; }
//Attribute
public RuleCall getAttributeWhereLeftAttributeParserRuleCall_4_0() { return cAttributeWhereLeftAttributeParserRuleCall_4_0; }
}
public class RightElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Right");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final Group cGroup_0 = (Group)cAlternatives.eContents().get(0);
private final Assignment cMetamodelAssignment_0_0 = (Assignment)cGroup_0.eContents().get(0);
private final CrossReference cMetamodelMetamodelNameCrossReference_0_0_0 = (CrossReference)cMetamodelAssignment_0_0.eContents().get(0);
private final RuleCall cMetamodelMetamodelNameIDTerminalRuleCall_0_0_0_1 = (RuleCall)cMetamodelMetamodelNameCrossReference_0_0_0.eContents().get(1);
private final Keyword cFullStopKeyword_0_1 = (Keyword)cGroup_0.eContents().get(1);
private final Assignment cClassAssignment_0_2 = (Assignment)cGroup_0.eContents().get(2);
private final CrossReference cClassClassCrossReference_0_2_0 = (CrossReference)cClassAssignment_0_2.eContents().get(0);
private final RuleCall cClassClassIDTerminalRuleCall_0_2_0_1 = (RuleCall)cClassClassCrossReference_0_2_0.eContents().get(1);
private final Keyword cFullStopKeyword_0_3 = (Keyword)cGroup_0.eContents().get(3);
private final Assignment cAttributeWhereRightAssignment_0_4 = (Assignment)cGroup_0.eContents().get(4);
private final RuleCall cAttributeWhereRightAttributeParserRuleCall_0_4_0 = (RuleCall)cAttributeWhereRightAssignment_0_4.eContents().get(0);
private final Assignment cValueAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
private final RuleCall cValueEStringParserRuleCall_1_0 = (RuleCall)cValueAssignment_1.eContents().get(0);
//Right:
// metamodel+=[MetamodelName] "." class+=[Class] "." attributeWhereRight=Attribute | value=EString;
public ParserRule getRule() { return rule; }
//metamodel+=[MetamodelName] "." class+=[Class] "." attributeWhereRight=Attribute | value=EString
public Alternatives getAlternatives() { return cAlternatives; }
//metamodel+=[MetamodelName] "." class+=[Class] "." attributeWhereRight=Attribute
public Group getGroup_0() { return cGroup_0; }
//metamodel+=[MetamodelName]
public Assignment getMetamodelAssignment_0_0() { return cMetamodelAssignment_0_0; }
//[MetamodelName]
public CrossReference getMetamodelMetamodelNameCrossReference_0_0_0() { return cMetamodelMetamodelNameCrossReference_0_0_0; }
//ID
public RuleCall getMetamodelMetamodelNameIDTerminalRuleCall_0_0_0_1() { return cMetamodelMetamodelNameIDTerminalRuleCall_0_0_0_1; }
//"."
public Keyword getFullStopKeyword_0_1() { return cFullStopKeyword_0_1; }
//class+=[Class]
public Assignment getClassAssignment_0_2() { return cClassAssignment_0_2; }
//[Class]
public CrossReference getClassClassCrossReference_0_2_0() { return cClassClassCrossReference_0_2_0; }
//ID
public RuleCall getClassClassIDTerminalRuleCall_0_2_0_1() { return cClassClassIDTerminalRuleCall_0_2_0_1; }
//"."
public Keyword getFullStopKeyword_0_3() { return cFullStopKeyword_0_3; }
//attributeWhereRight=Attribute
public Assignment getAttributeWhereRightAssignment_0_4() { return cAttributeWhereRightAssignment_0_4; }
//Attribute
public RuleCall getAttributeWhereRightAttributeParserRuleCall_0_4_0() { return cAttributeWhereRightAttributeParserRuleCall_0_4_0; }
//value=EString
public Assignment getValueAssignment_1() { return cValueAssignment_1; }
//EString
public RuleCall getValueEStringParserRuleCall_1_0() { return cValueEStringParserRuleCall_1_0; }
}
public class EStringElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "EString");
private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
private final RuleCall cSTRINGTerminalRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
private final RuleCall cIDTerminalRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
//EString returns ecore::EString:
// STRING | ID;
public ParserRule getRule() { return rule; }
//STRING | ID
public Alternatives getAlternatives() { return cAlternatives; }
//STRING
public RuleCall getSTRINGTerminalRuleCall_0() { return cSTRINGTerminalRuleCall_0; }
//ID
public RuleCall getIDTerminalRuleCall_1() { return cIDTerminalRuleCall_1; }
}
private final ModelElements pModel;
private final MetamodelElements pMetamodel;
private final ExpressionElements pExpression;
private final SelectElements pSelect;
private final SelectAttributeElements pSelectAttribute;
private final FromElements pFrom;
private final JoinElements pJoin;
private final JoinLeftElements pJoinLeft;
private final JoinRightElements pJoinRight;
private final AttributeElements pAttribute;
private final ClassElements pClass;
private final MetamodelNameElements pMetamodelName;
private final RelationElements pRelation;
private final ConditionElements pCondition;
private final EclExpressionElements pEclExpression;
private final ComparisonElements pComparison;
private final LeftElements pLeft;
private final RightElements pRight;
private final EStringElements pEString;
private final Grammar grammar;
private final TerminalsGrammarAccess gaTerminals;
@Inject
public VpdlGrammarAccess(GrammarProvider grammarProvider,
TerminalsGrammarAccess gaTerminals) {
this.grammar = internalFindGrammar(grammarProvider);
this.gaTerminals = gaTerminals;
this.pModel = new ModelElements();
this.pMetamodel = new MetamodelElements();
this.pExpression = new ExpressionElements();
this.pSelect = new SelectElements();
this.pSelectAttribute = new SelectAttributeElements();
this.pFrom = new FromElements();
this.pJoin = new JoinElements();
this.pJoinLeft = new JoinLeftElements();
this.pJoinRight = new JoinRightElements();
this.pAttribute = new AttributeElements();
this.pClass = new ClassElements();
this.pMetamodelName = new MetamodelNameElements();
this.pRelation = new RelationElements();
this.pCondition = new ConditionElements();
this.pEclExpression = new EclExpressionElements();
this.pComparison = new ComparisonElements();
this.pLeft = new LeftElements();
this.pRight = new RightElements();
this.pEString = new EStringElements();
}
protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
Grammar grammar = grammarProvider.getGrammar(this);
while (grammar != null) {
if ("emfviews.dsl.Vpdl".equals(grammar.getName())) {
return grammar;
}
List<Grammar> grammars = grammar.getUsedGrammars();
if (!grammars.isEmpty()) {
grammar = grammars.iterator().next();
} else {
return null;
}
}
return grammar;
}
public Grammar getGrammar() {
return grammar;
}
public TerminalsGrammarAccess getTerminalsGrammarAccess() {
return gaTerminals;
}
////Grammar to create model views
//Model:
// "create view" viewName=ID "on" metamodel+=Metamodel ("," metamodel+=Metamodel)* expression+=Expression;
public ModelElements getModelAccess() {
return pModel;
}
public ParserRule getModelRule() {
return getModelAccess().getRule();
}
//Metamodel:
// metamodelURL+=EString "as" metamodelName+=MetamodelName;
public MetamodelElements getMetamodelAccess() {
return pMetamodel;
}
public ParserRule getMetamodelRule() {
return getMetamodelAccess().getRule();
}
//Expression:
// "select" select+=Select "from" from+=From "where" condition+=Condition+;
public ExpressionElements getExpressionAccess() {
return pExpression;
}
public ParserRule getExpressionRule() {
return getExpressionAccess().getRule();
}
//Select:
// select+="*" | selectAttribute+=SelectAttribute ("," selectAttribute+=SelectAttribute)*;
public SelectElements getSelectAccess() {
return pSelect;
}
public ParserRule getSelectRule() {
return getSelectAccess().getRule();
}
//SelectAttribute:
// metamodel+=[MetamodelName] "." class+=Class "." attribute+=Attribute;
public SelectAttributeElements getSelectAttributeAccess() {
return pSelectAttribute;
}
public ParserRule getSelectAttributeRule() {
return getSelectAttributeAccess().getRule();
}
//From:
// join+=Join ("," join+=Join)*;
public FromElements getFromAccess() {
return pFrom;
}
public ParserRule getFromRule() {
return getFromAccess().getRule();
}
//Join:
// joinLeft+=JoinLeft "join" joinRight+=JoinRight "as" relation+=Relation;
public JoinElements getJoinAccess() {
return pJoin;
}
public ParserRule getJoinRule() {
return getJoinAccess().getRule();
}
//JoinLeft:
// metamodelLeft+=[MetamodelName] "." classLeft+=Class;
public JoinLeftElements getJoinLeftAccess() {
return pJoinLeft;
}
public ParserRule getJoinLeftRule() {
return getJoinLeftAccess().getRule();
}
//JoinRight:
// metamodelRight+=[MetamodelName] "." classRight+=Class;
public JoinRightElements getJoinRightAccess() {
return pJoinRight;
}
public ParserRule getJoinRightRule() {
return getJoinRightAccess().getRule();
}
//Attribute:
// name=ID;
public AttributeElements getAttributeAccess() {
return pAttribute;
}
public ParserRule getAttributeRule() {
return getAttributeAccess().getRule();
}
//Class:
// name=ID;
public ClassElements getClassAccess() {
return pClass;
}
public ParserRule getClassRule() {
return getClassAccess().getRule();
}
//MetamodelName:
// name=ID;
public MetamodelNameElements getMetamodelNameAccess() {
return pMetamodelName;
}
public ParserRule getMetamodelNameRule() {
return getMetamodelNameAccess().getRule();
}
//Relation:
// name=ID;
public RelationElements getRelationAccess() {
return pRelation;
}
public ParserRule getRelationRule() {
return getRelationAccess().getRule();
}
//Condition:
// (value+=Comparison | value+=EclExpression) (("and" | "or") (value+=Comparison | value+=EclExpression))*;
public ConditionElements getConditionAccess() {
return pCondition;
}
public ParserRule getConditionRule() {
return getConditionAccess().getRule();
}
//EclExpression:
// value=EString;
public EclExpressionElements getEclExpressionAccess() {
return pEclExpression;
}
public ParserRule getEclExpressionRule() {
return getEclExpressionAccess().getRule();
}
//Comparison:
// left+=Left ("=" | "<=" | ">=" | "<" | ">" | "<>") right+=Right;
public ComparisonElements getComparisonAccess() {
return pComparison;
}
public ParserRule getComparisonRule() {
return getComparisonAccess().getRule();
}
//Left:
// metamodel+=[MetamodelName] "." class+=[Class] "." attributeWhereLeft=Attribute;
public LeftElements getLeftAccess() {
return pLeft;
}
public ParserRule getLeftRule() {
return getLeftAccess().getRule();
}
//Right:
// metamodel+=[MetamodelName] "." class+=[Class] "." attributeWhereRight=Attribute | value=EString;
public RightElements getRightAccess() {
return pRight;
}
public ParserRule getRightRule() {
return getRightAccess().getRule();
}
//EString returns ecore::EString:
// STRING | ID;
public EStringElements getEStringAccess() {
return pEString;
}
public ParserRule getEStringRule() {
return getEStringAccess().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();
}
}