/* * generated by Xtext */ package org.eclipse.papyrus.uml.textedit.message.xtext.services; import com.google.inject.Singleton; import com.google.inject.Inject; 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 UmlMessageGrammarAccess extends AbstractGrammarElementFinder { public class MessageRuleElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "MessageRule"); private final Group cGroup = (Group)rule.eContents().get(1); private final Assignment cSequenceTermAssignment_0 = (Assignment)cGroup.eContents().get(0); private final RuleCall cSequenceTermSequenceTermRuleParserRuleCall_0_0 = (RuleCall)cSequenceTermAssignment_0.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 Assignment cSequenceTermAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1); private final RuleCall cSequenceTermSequenceTermRuleParserRuleCall_1_1_0 = (RuleCall)cSequenceTermAssignment_1_1.eContents().get(0); private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2); private final Assignment cNameAssignment_3 = (Assignment)cGroup.eContents().get(3); private final RuleCall cNameNameRuleTerminalRuleCall_3_0 = (RuleCall)cNameAssignment_3.eContents().get(0); //MessageRule: // sequenceTerm+=SequenceTermRule ("." sequenceTerm+=SequenceTermRule)* ":" name=nameRule; public ParserRule getRule() { return rule; } //sequenceTerm+=SequenceTermRule ("." sequenceTerm+=SequenceTermRule)* ":" name=nameRule public Group getGroup() { return cGroup; } //sequenceTerm+=SequenceTermRule public Assignment getSequenceTermAssignment_0() { return cSequenceTermAssignment_0; } //SequenceTermRule public RuleCall getSequenceTermSequenceTermRuleParserRuleCall_0_0() { return cSequenceTermSequenceTermRuleParserRuleCall_0_0; } //("." sequenceTerm+=SequenceTermRule)* public Group getGroup_1() { return cGroup_1; } //"." public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; } //sequenceTerm+=SequenceTermRule public Assignment getSequenceTermAssignment_1_1() { return cSequenceTermAssignment_1_1; } //SequenceTermRule public RuleCall getSequenceTermSequenceTermRuleParserRuleCall_1_1_0() { return cSequenceTermSequenceTermRuleParserRuleCall_1_1_0; } //":" public Keyword getColonKeyword_2() { return cColonKeyword_2; } //name=nameRule public Assignment getNameAssignment_3() { return cNameAssignment_3; } //nameRule public RuleCall getNameNameRuleTerminalRuleCall_3_0() { return cNameNameRuleTerminalRuleCall_3_0; } } public class SequenceTermRuleElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SequenceTermRule"); private final Group cGroup = (Group)rule.eContents().get(1); private final Assignment cSequencialOrderAssignment_0 = (Assignment)cGroup.eContents().get(0); private final RuleCall cSequencialOrderINTTerminalRuleCall_0_0 = (RuleCall)cSequencialOrderAssignment_0.eContents().get(0); private final Assignment cSequenceNameAssignment_1 = (Assignment)cGroup.eContents().get(1); private final RuleCall cSequenceNameIDTerminalRuleCall_1_0 = (RuleCall)cSequenceNameAssignment_1.eContents().get(0); private final Assignment cRecurrenceAssignment_2 = (Assignment)cGroup.eContents().get(2); private final RuleCall cRecurrenceRecurrenceRuleParserRuleCall_2_0 = (RuleCall)cRecurrenceAssignment_2.eContents().get(0); ////('.' leftTerms += LeftSequenceTermRule)* //SequenceTermRule: // sequencialOrder= //represents the sequential order of the Message within the next higher level of procedural calling // INT sequenceName=ID? // represents a concurrent thread of control. Messages that differ in the final name are concurrent at that level of nesting // recurrence=RecurrenceRule? // The recurrence represents conditional or iterative execution. //; public ParserRule getRule() { return rule; } //sequencialOrder= //represents the sequential order of the Message within the next higher level of procedural calling //INT sequenceName=ID? // represents a concurrent thread of control. Messages that differ in the final name are concurrent at that level of nesting //recurrence=RecurrenceRule? // The recurrence represents conditional or iterative execution. public Group getGroup() { return cGroup; } //sequencialOrder= //represents the sequential order of the Message within the next higher level of procedural calling //INT public Assignment getSequencialOrderAssignment_0() { return cSequencialOrderAssignment_0; } ////represents the sequential order of the Message within the next higher level of procedural calling //INT public RuleCall getSequencialOrderINTTerminalRuleCall_0_0() { return cSequencialOrderINTTerminalRuleCall_0_0; } //sequenceName=ID? public Assignment getSequenceNameAssignment_1() { return cSequenceNameAssignment_1; } //ID public RuleCall getSequenceNameIDTerminalRuleCall_1_0() { return cSequenceNameIDTerminalRuleCall_1_0; } //recurrence=RecurrenceRule? public Assignment getRecurrenceAssignment_2() { return cRecurrenceAssignment_2; } //RecurrenceRule public RuleCall getRecurrenceRecurrenceRuleParserRuleCall_2_0() { return cRecurrenceRecurrenceRuleParserRuleCall_2_0; } } public class RecurrenceRuleElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RecurrenceRule"); private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); private final Group cGroup_0 = (Group)cAlternatives.eContents().get(0); private final Keyword cAsteriskKeyword_0_0 = (Keyword)cGroup_0.eContents().get(0); private final Keyword cLeftSquareBracketKeyword_0_1 = (Keyword)cGroup_0.eContents().get(1); private final RuleCall cSTRINGTerminalRuleCall_0_2 = (RuleCall)cGroup_0.eContents().get(2); private final Keyword cRightSquareBracketKeyword_0_3 = (Keyword)cGroup_0.eContents().get(3); private final Group cGroup_1 = (Group)cAlternatives.eContents().get(1); private final Keyword cLeftSquareBracketKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0); private final RuleCall cSTRINGTerminalRuleCall_1_1 = (RuleCall)cGroup_1.eContents().get(1); private final Keyword cRightSquareBracketKeyword_1_2 = (Keyword)cGroup_1.eContents().get(2); ////terminal STRING : ////( '\\' ('b'|'t'|'n'|'f'|'r'|'"'|"'"|'\\') | !('\\'|'"') )* ; /// * messagename= sequenceterm ('.' sequenceterm)* (':' name); //terminal name: //('a'..'z'|'A'..'Z') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; //terminal sequenceterm: //(INT)(name)?(recurrence)?; //terminal recurrence: //('*''[' STRING ']')|('[' STRING ']'); // //sequenceTerm1 = SequenceTermRule //('.' sequenceTerm2 = SequenceTermRule )* // // * / RecurrenceRule: // "*" "[" STRING "]" | "[" STRING "]"; public ParserRule getRule() { return rule; } //"*" "[" STRING "]" | "[" STRING "]" public Alternatives getAlternatives() { return cAlternatives; } //"*" "[" STRING "]" public Group getGroup_0() { return cGroup_0; } //"*" public Keyword getAsteriskKeyword_0_0() { return cAsteriskKeyword_0_0; } //"[" public Keyword getLeftSquareBracketKeyword_0_1() { return cLeftSquareBracketKeyword_0_1; } //STRING public RuleCall getSTRINGTerminalRuleCall_0_2() { return cSTRINGTerminalRuleCall_0_2; } //"]" public Keyword getRightSquareBracketKeyword_0_3() { return cRightSquareBracketKeyword_0_3; } //"[" STRING "]" public Group getGroup_1() { return cGroup_1; } //"[" public Keyword getLeftSquareBracketKeyword_1_0() { return cLeftSquareBracketKeyword_1_0; } //STRING public RuleCall getSTRINGTerminalRuleCall_1_1() { return cSTRINGTerminalRuleCall_1_1; } //"]" public Keyword getRightSquareBracketKeyword_1_2() { return cRightSquareBracketKeyword_1_2; } } private MessageRuleElements pMessageRule; private SequenceTermRuleElements pSequenceTermRule; private TerminalRule tNameRule; private RecurrenceRuleElements pRecurrenceRule; private final GrammarProvider grammarProvider; private TerminalsGrammarAccess gaTerminals; @Inject public UmlMessageGrammarAccess(GrammarProvider grammarProvider, TerminalsGrammarAccess gaTerminals) { this.grammarProvider = grammarProvider; this.gaTerminals = gaTerminals; } public Grammar getGrammar() { return grammarProvider.getGrammar(this); } public TerminalsGrammarAccess getTerminalsGrammarAccess() { return gaTerminals; } //MessageRule: // sequenceTerm+=SequenceTermRule ("." sequenceTerm+=SequenceTermRule)* ":" name=nameRule; public MessageRuleElements getMessageRuleAccess() { return (pMessageRule != null) ? pMessageRule : (pMessageRule = new MessageRuleElements()); } public ParserRule getMessageRuleRule() { return getMessageRuleAccess().getRule(); } ////('.' leftTerms += LeftSequenceTermRule)* //SequenceTermRule: // sequencialOrder= //represents the sequential order of the Message within the next higher level of procedural calling // INT sequenceName=ID? // represents a concurrent thread of control. Messages that differ in the final name are concurrent at that level of nesting // recurrence=RecurrenceRule? // The recurrence represents conditional or iterative execution. //; public SequenceTermRuleElements getSequenceTermRuleAccess() { return (pSequenceTermRule != null) ? pSequenceTermRule : (pSequenceTermRule = new SequenceTermRuleElements()); } public ParserRule getSequenceTermRuleRule() { return getSequenceTermRuleAccess().getRule(); } //terminal nameRule: // ("a".."z" | "A".."Z") ("a".."z" | "A".."Z" | "_" | "-" | "0".."9" | "(" | ")")*; public TerminalRule getNameRuleRule() { return (tNameRule != null) ? tNameRule : (tNameRule = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "nameRule")); } ////terminal STRING : ////( '\\' ('b'|'t'|'n'|'f'|'r'|'"'|"'"|'\\') | !('\\'|'"') )* ; /// * messagename= sequenceterm ('.' sequenceterm)* (':' name); //terminal name: //('a'..'z'|'A'..'Z') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; //terminal sequenceterm: //(INT)(name)?(recurrence)?; //terminal recurrence: //('*''[' STRING ']')|('[' STRING ']'); // //sequenceTerm1 = SequenceTermRule //('.' sequenceTerm2 = SequenceTermRule )* // // * / RecurrenceRule: // "*" "[" STRING "]" | "[" STRING "]"; public RecurrenceRuleElements getRecurrenceRuleAccess() { return (pRecurrenceRule != null) ? pRecurrenceRule : (pRecurrenceRule = new RecurrenceRuleElements()); } public ParserRule getRecurrenceRuleRule() { return getRecurrenceRuleAccess().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(); } }