/* * generated by Xtext */ package org.eclipse.papyrus.uml.textedit.transition.xtext.ui.contentassist.antlr; import java.util.Collection; import java.util.Map; import java.util.HashMap; import org.antlr.runtime.RecognitionException; import org.eclipse.xtext.AbstractElement; import org.eclipse.xtext.ui.editor.contentassist.antlr.AbstractContentAssistParser; import org.eclipse.xtext.ui.editor.contentassist.antlr.FollowElement; import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser; import com.google.inject.Inject; import org.eclipse.papyrus.uml.textedit.transition.xtext.services.UmlTransitionGrammarAccess; public class UmlTransitionParser extends AbstractContentAssistParser { @Inject private UmlTransitionGrammarAccess grammarAccess; private Map<AbstractElement, String> nameMappings; @Override protected org.eclipse.papyrus.uml.textedit.transition.xtext.ui.contentassist.antlr.internal.InternalUmlTransitionParser createParser() { org.eclipse.papyrus.uml.textedit.transition.xtext.ui.contentassist.antlr.internal.InternalUmlTransitionParser result = new org.eclipse.papyrus.uml.textedit.transition.xtext.ui.contentassist.antlr.internal.InternalUmlTransitionParser(null); result.setGrammarAccess(grammarAccess); return result; } @Override protected String getRuleName(AbstractElement element) { if (nameMappings == null) { nameMappings = new HashMap<AbstractElement, String>() { private static final long serialVersionUID = 1L; { put(grammarAccess.getEventRuleAccess().getAlternatives(), "rule__EventRule__Alternatives"); put(grammarAccess.getTimeEventRuleAccess().getAlternatives(), "rule__TimeEventRule__Alternatives"); put(grammarAccess.getBehaviorKindAccess().getAlternatives(), "rule__BehaviorKind__Alternatives"); put(grammarAccess.getTransitionRuleAccess().getGroup(), "rule__TransitionRule__Group__0"); put(grammarAccess.getTransitionRuleAccess().getGroup_0(), "rule__TransitionRule__Group_0__0"); put(grammarAccess.getTransitionRuleAccess().getGroup_0_1(), "rule__TransitionRule__Group_0_1__0"); put(grammarAccess.getRelativeTimeEventRuleAccess().getGroup(), "rule__RelativeTimeEventRule__Group__0"); put(grammarAccess.getAbsoluteTimeEventRuleAccess().getGroup(), "rule__AbsoluteTimeEventRule__Group__0"); put(grammarAccess.getChangeEventRuleAccess().getGroup(), "rule__ChangeEventRule__Group__0"); put(grammarAccess.getGuardRuleAccess().getGroup(), "rule__GuardRule__Group__0"); put(grammarAccess.getEffectRuleAccess().getGroup(), "rule__EffectRule__Group__0"); put(grammarAccess.getTransitionRuleAccess().getTriggersAssignment_0_0(), "rule__TransitionRule__TriggersAssignment_0_0"); put(grammarAccess.getTransitionRuleAccess().getTriggersAssignment_0_1_1(), "rule__TransitionRule__TriggersAssignment_0_1_1"); put(grammarAccess.getTransitionRuleAccess().getGuardAssignment_1(), "rule__TransitionRule__GuardAssignment_1"); put(grammarAccess.getTransitionRuleAccess().getEffectAssignment_2(), "rule__TransitionRule__EffectAssignment_2"); put(grammarAccess.getCallOrSignalEventRuleAccess().getOperationOrSignalAssignment(), "rule__CallOrSignalEventRule__OperationOrSignalAssignment"); put(grammarAccess.getAnyReceiveEventRuleAccess().getIsAReceiveEventAssignment(), "rule__AnyReceiveEventRule__IsAReceiveEventAssignment"); put(grammarAccess.getRelativeTimeEventRuleAccess().getExprAssignment_1(), "rule__RelativeTimeEventRule__ExprAssignment_1"); put(grammarAccess.getAbsoluteTimeEventRuleAccess().getExprAssignment_1(), "rule__AbsoluteTimeEventRule__ExprAssignment_1"); put(grammarAccess.getChangeEventRuleAccess().getExpAssignment_1(), "rule__ChangeEventRule__ExpAssignment_1"); put(grammarAccess.getGuardRuleAccess().getConstraintAssignment_1(), "rule__GuardRule__ConstraintAssignment_1"); put(grammarAccess.getEffectRuleAccess().getKindAssignment_1(), "rule__EffectRule__KindAssignment_1"); put(grammarAccess.getEffectRuleAccess().getBehaviorNameAssignment_2(), "rule__EffectRule__BehaviorNameAssignment_2"); } }; } return nameMappings.get(element); } @Override protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) { try { org.eclipse.papyrus.uml.textedit.transition.xtext.ui.contentassist.antlr.internal.InternalUmlTransitionParser typedParser = (org.eclipse.papyrus.uml.textedit.transition.xtext.ui.contentassist.antlr.internal.InternalUmlTransitionParser) parser; typedParser.entryRuleTransitionRule(); return typedParser.getFollowElements(); } catch(RecognitionException ex) { throw new RuntimeException(ex); } } @Override protected String[] getInitialHiddenTokens() { return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" }; } public UmlTransitionGrammarAccess getGrammarAccess() { return this.grammarAccess; } public void setGrammarAccess(UmlTransitionGrammarAccess grammarAccess) { this.grammarAccess = grammarAccess; } }