/*
* generated by Xtext
*/
package org.xtext.activitydiagram.input.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 ActivityDiagramInputGrammarAccess extends AbstractGrammarElementFinder {
public class InputElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Input");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Action cInputAction_0 = (Action)cGroup.eContents().get(0);
private final Assignment cInputValuesAssignment_1 = (Assignment)cGroup.eContents().get(1);
private final RuleCall cInputValuesInputValueParserRuleCall_1_0 = (RuleCall)cInputValuesAssignment_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 cInputValuesAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
private final RuleCall cInputValuesInputValueParserRuleCall_2_1_0 = (RuleCall)cInputValuesAssignment_2_1.eContents().get(0);
//// '}'
//Input:
// {Input} // 'Input'
// // '{'
// // ('inputValues' '{' inputValues+=InputValue ( "," inputValues+=InputValue)* '}' )?
// inputValues+=InputValue ("," inputValues+=InputValue)*;
@Override public ParserRule getRule() { return rule; }
//{Input} // 'Input'
//// '{'
//// ('inputValues' '{' inputValues+=InputValue ( "," inputValues+=InputValue)* '}' )?
//inputValues+=InputValue ("," inputValues+=InputValue)*
public Group getGroup() { return cGroup; }
//{Input}
public Action getInputAction_0() { return cInputAction_0; }
//// 'Input'
//// '{'
//// ('inputValues' '{' inputValues+=InputValue ( "," inputValues+=InputValue)* '}' )?
//inputValues+=InputValue
public Assignment getInputValuesAssignment_1() { return cInputValuesAssignment_1; }
//InputValue
public RuleCall getInputValuesInputValueParserRuleCall_1_0() { return cInputValuesInputValueParserRuleCall_1_0; }
//("," inputValues+=InputValue)*
public Group getGroup_2() { return cGroup_2; }
//","
public Keyword getCommaKeyword_2_0() { return cCommaKeyword_2_0; }
//inputValues+=InputValue
public Assignment getInputValuesAssignment_2_1() { return cInputValuesAssignment_2_1; }
//InputValue
public RuleCall getInputValuesInputValueParserRuleCall_2_1_0() { return cInputValuesInputValueParserRuleCall_2_1_0; }
}
public class InputValueElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "InputValue");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Assignment cVariableAssignment_0 = (Assignment)cGroup.eContents().get(0);
private final CrossReference cVariableVariableCrossReference_0_0 = (CrossReference)cVariableAssignment_0.eContents().get(0);
private final RuleCall cVariableVariableEStringParserRuleCall_0_0_1 = (RuleCall)cVariableVariableCrossReference_0_0.eContents().get(1);
private final Keyword cEqualsSignKeyword_1 = (Keyword)cGroup.eContents().get(1);
private final Assignment cValueAssignment_2 = (Assignment)cGroup.eContents().get(2);
private final RuleCall cValueValueParserRuleCall_2_0 = (RuleCall)cValueAssignment_2.eContents().get(0);
//// 'InputValue'
//// '{'
//// 'variable' variable=[Variable|EString]
//// 'value' value=Value
//// '}'
//InputValue:
// variable=[Variable|EString] "=" value=Value;
@Override public ParserRule getRule() { return rule; }
//variable=[Variable|EString] "=" value=Value
public Group getGroup() { return cGroup; }
//variable=[Variable|EString]
public Assignment getVariableAssignment_0() { return cVariableAssignment_0; }
//[Variable|EString]
public CrossReference getVariableVariableCrossReference_0_0() { return cVariableVariableCrossReference_0_0; }
//EString
public RuleCall getVariableVariableEStringParserRuleCall_0_0_1() { return cVariableVariableEStringParserRuleCall_0_0_1; }
//"="
public Keyword getEqualsSignKeyword_1() { return cEqualsSignKeyword_1; }
//value=Value
public Assignment getValueAssignment_2() { return cValueAssignment_2; }
//Value
public RuleCall getValueValueParserRuleCall_2_0() { return cValueValueParserRuleCall_2_0; }
}
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 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 cValueEIntParserRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0);
//IntegerValue:
// value=EInt;
@Override public ParserRule getRule() { return rule; }
//value=EInt
public Assignment getValueAssignment() { return cValueAssignment; }
//EInt
public RuleCall getValueEIntParserRuleCall_0() { return cValueEIntParserRuleCall_0; }
}
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 EIntElements extends AbstractParserRuleElementFinder {
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "EInt");
private final Group cGroup = (Group)rule.eContents().get(1);
private final Keyword cHyphenMinusKeyword_0 = (Keyword)cGroup.eContents().get(0);
private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
//EInt returns ecore::EInt:
// "-"? INT;
@Override public ParserRule getRule() { return rule; }
//"-"? INT
public Group getGroup() { return cGroup; }
//"-"?
public Keyword getHyphenMinusKeyword_0() { return cHyphenMinusKeyword_0; }
//INT
public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
}
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;
@Override 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 InputElements pInput;
private final InputValueElements pInputValue;
private final ValueElements pValue;
private final BooleanValueElements pBooleanValue;
private final IntegerValueElements pIntegerValue;
private final EBooleanElements pEBoolean;
private final EIntElements pEInt;
private final EStringElements pEString;
private final Grammar grammar;
private final TerminalsGrammarAccess gaTerminals;
@Inject
public ActivityDiagramInputGrammarAccess(GrammarProvider grammarProvider,
TerminalsGrammarAccess gaTerminals) {
this.grammar = internalFindGrammar(grammarProvider);
this.gaTerminals = gaTerminals;
this.pInput = new InputElements();
this.pInputValue = new InputValueElements();
this.pValue = new ValueElements();
this.pBooleanValue = new BooleanValueElements();
this.pIntegerValue = new IntegerValueElements();
this.pEBoolean = new EBooleanElements();
this.pEInt = new EIntElements();
this.pEString = new EStringElements();
}
protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
Grammar grammar = grammarProvider.getGrammar(this);
while (grammar != null) {
if ("org.xtext.activitydiagram.input.ActivityDiagramInput".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;
}
//// '}'
//Input:
// {Input} // 'Input'
// // '{'
// // ('inputValues' '{' inputValues+=InputValue ( "," inputValues+=InputValue)* '}' )?
// inputValues+=InputValue ("," inputValues+=InputValue)*;
public InputElements getInputAccess() {
return pInput;
}
public ParserRule getInputRule() {
return getInputAccess().getRule();
}
//// 'InputValue'
//// '{'
//// 'variable' variable=[Variable|EString]
//// 'value' value=Value
//// '}'
//InputValue:
// variable=[Variable|EString] "=" value=Value;
public InputValueElements getInputValueAccess() {
return pInputValue;
}
public ParserRule getInputValueRule() {
return getInputValueAccess().getRule();
}
//Value:
// BooleanValue | IntegerValue;
public ValueElements getValueAccess() {
return pValue;
}
public ParserRule getValueRule() {
return getValueAccess().getRule();
}
//BooleanValue:
// value=EBoolean;
public BooleanValueElements getBooleanValueAccess() {
return pBooleanValue;
}
public ParserRule getBooleanValueRule() {
return getBooleanValueAccess().getRule();
}
//IntegerValue:
// value=EInt;
public IntegerValueElements getIntegerValueAccess() {
return pIntegerValue;
}
public ParserRule getIntegerValueRule() {
return getIntegerValueAccess().getRule();
}
//EBoolean returns ecore::EBoolean:
// "true" | "false";
public EBooleanElements getEBooleanAccess() {
return pEBoolean;
}
public ParserRule getEBooleanRule() {
return getEBooleanAccess().getRule();
}
//EInt returns ecore::EInt:
// "-"? INT;
public EIntElements getEIntAccess() {
return pEInt;
}
public ParserRule getEIntRule() {
return getEIntAccess().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();
}
}