1 | /* |
---|
2 | * generated by Xtext |
---|
3 | */ |
---|
4 | package de.ugoe.cs.swe.bnftools.ui.contentassist.antlr; |
---|
5 | |
---|
6 | import java.util.Collection; |
---|
7 | import java.util.Map; |
---|
8 | import java.util.HashMap; |
---|
9 | |
---|
10 | import org.antlr.runtime.RecognitionException; |
---|
11 | import org.eclipse.xtext.AbstractElement; |
---|
12 | import org.eclipse.xtext.ui.editor.contentassist.antlr.AbstractContentAssistParser; |
---|
13 | import org.eclipse.xtext.ui.editor.contentassist.antlr.FollowElement; |
---|
14 | import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser; |
---|
15 | |
---|
16 | import com.google.inject.Inject; |
---|
17 | |
---|
18 | import de.ugoe.cs.swe.bnftools.services.EbnfGrammarAccess; |
---|
19 | |
---|
20 | public class EbnfParser extends AbstractContentAssistParser { |
---|
21 | |
---|
22 | @Inject |
---|
23 | private EbnfGrammarAccess grammarAccess; |
---|
24 | |
---|
25 | private Map<AbstractElement, String> nameMappings; |
---|
26 | |
---|
27 | @Override |
---|
28 | protected de.ugoe.cs.swe.bnftools.ui.contentassist.antlr.internal.InternalEbnfParser createParser() { |
---|
29 | de.ugoe.cs.swe.bnftools.ui.contentassist.antlr.internal.InternalEbnfParser result = new de.ugoe.cs.swe.bnftools.ui.contentassist.antlr.internal.InternalEbnfParser(null); |
---|
30 | result.setGrammarAccess(grammarAccess); |
---|
31 | return result; |
---|
32 | } |
---|
33 | |
---|
34 | @Override |
---|
35 | protected String getRuleName(AbstractElement element) { |
---|
36 | if (nameMappings == null) { |
---|
37 | nameMappings = new HashMap<AbstractElement, String>() { |
---|
38 | private static final long serialVersionUID = 1L; |
---|
39 | { |
---|
40 | put(grammarAccess.getEtsiBnfAccess().getAlternatives(), "rule__EtsiBnf__Alternatives"); |
---|
41 | put(grammarAccess.getBnfEntryAccess().getAlternatives(), "rule__BnfEntry__Alternatives"); |
---|
42 | put(grammarAccess.getDeltaEntryAccess().getAlternatives(), "rule__DeltaEntry__Alternatives"); |
---|
43 | put(grammarAccess.getMergeEntryAccess().getAlternatives(), "rule__MergeEntry__Alternatives"); |
---|
44 | put(grammarAccess.getImportAccess().getAlternatives_2_1(), "rule__Import__Alternatives_2_1"); |
---|
45 | put(grammarAccess.getExtRuleAccess().getAlternatives_4(), "rule__ExtRule__Alternatives_4"); |
---|
46 | put(grammarAccess.getMergeRuleAccess().getAlternatives(), "rule__MergeRule__Alternatives"); |
---|
47 | put(grammarAccess.getTermAccess().getAlternatives(), "rule__Term__Alternatives"); |
---|
48 | put(grammarAccess.getAtomAccess().getAlternatives(), "rule__Atom__Alternatives"); |
---|
49 | put(grammarAccess.getStringRuleAccess().getAlternatives(), "rule__StringRule__Alternatives"); |
---|
50 | put(grammarAccess.getEtsiBnfAccess().getGroup_0(), "rule__EtsiBnf__Group_0__0"); |
---|
51 | put(grammarAccess.getEtsiBnfAccess().getGroup_0_2(), "rule__EtsiBnf__Group_0_2__0"); |
---|
52 | put(grammarAccess.getEtsiBnfAccess().getGroup_1(), "rule__EtsiBnf__Group_1__0"); |
---|
53 | put(grammarAccess.getEtsiBnfAccess().getGroup_2(), "rule__EtsiBnf__Group_2__0"); |
---|
54 | put(grammarAccess.getSectionHeadingAccess().getGroup(), "rule__SectionHeading__Group__0"); |
---|
55 | put(grammarAccess.getImportAccess().getGroup(), "rule__Import__Group__0"); |
---|
56 | put(grammarAccess.getImportAccess().getGroup_2(), "rule__Import__Group_2__0"); |
---|
57 | put(grammarAccess.getImportAccess().getGroup_3(), "rule__Import__Group_3__0"); |
---|
58 | put(grammarAccess.getRuleAccess().getGroup(), "rule__Rule__Group__0"); |
---|
59 | put(grammarAccess.getRuleAccess().getGroup_0(), "rule__Rule__Group_0__0"); |
---|
60 | put(grammarAccess.getExtRuleAccess().getGroup(), "rule__ExtRule__Group__0"); |
---|
61 | put(grammarAccess.getExtRuleAccess().getGroup_0(), "rule__ExtRule__Group_0__0"); |
---|
62 | put(grammarAccess.getExtRuleAccess().getGroup_2(), "rule__ExtRule__Group_2__0"); |
---|
63 | put(grammarAccess.getGlobalCombinatorAccess().getGroup(), "rule__GlobalCombinator__Group__0"); |
---|
64 | put(grammarAccess.getGlobalCombinatorAccess().getGroup_0(), "rule__GlobalCombinator__Group_0__0"); |
---|
65 | put(grammarAccess.getRuleCombinatorAccess().getGroup(), "rule__RuleCombinator__Group__0"); |
---|
66 | put(grammarAccess.getRuleCombinatorAccess().getGroup_0(), "rule__RuleCombinator__Group_0__0"); |
---|
67 | put(grammarAccess.getRuleCombinatorAccess().getGroup_2(), "rule__RuleCombinator__Group_2__0"); |
---|
68 | put(grammarAccess.getHookCombinatorAccess().getGroup(), "rule__HookCombinator__Group__0"); |
---|
69 | put(grammarAccess.getHookCombinatorAccess().getGroup_7(), "rule__HookCombinator__Group_7__0"); |
---|
70 | put(grammarAccess.getDefinitionListAccess().getGroup(), "rule__DefinitionList__Group__0"); |
---|
71 | put(grammarAccess.getDefinitionListAccess().getGroup_1(), "rule__DefinitionList__Group_1__0"); |
---|
72 | put(grammarAccess.getGroupedSequenceAccess().getGroup(), "rule__GroupedSequence__Group__0"); |
---|
73 | put(grammarAccess.getOptionalSequenceAccess().getGroup(), "rule__OptionalSequence__Group__0"); |
---|
74 | put(grammarAccess.getRepeatedSequenceAccess().getGroup(), "rule__RepeatedSequence__Group__0"); |
---|
75 | put(grammarAccess.getEtsiBnfAccess().getNameAssignment_0_1(), "rule__EtsiBnf__NameAssignment_0_1"); |
---|
76 | put(grammarAccess.getEtsiBnfAccess().getTypeAssignment_0_2_0(), "rule__EtsiBnf__TypeAssignment_0_2_0"); |
---|
77 | put(grammarAccess.getEtsiBnfAccess().getImportSectionAssignment_0_2_2(), "rule__EtsiBnf__ImportSectionAssignment_0_2_2"); |
---|
78 | put(grammarAccess.getEtsiBnfAccess().getBnfEntryAssignment_0_2_3(), "rule__EtsiBnf__BnfEntryAssignment_0_2_3"); |
---|
79 | put(grammarAccess.getEtsiBnfAccess().getTypeAssignment_1_0(), "rule__EtsiBnf__TypeAssignment_1_0"); |
---|
80 | put(grammarAccess.getEtsiBnfAccess().getImportSectionAssignment_1_2(), "rule__EtsiBnf__ImportSectionAssignment_1_2"); |
---|
81 | put(grammarAccess.getEtsiBnfAccess().getDeltaEntryAssignment_1_3(), "rule__EtsiBnf__DeltaEntryAssignment_1_3"); |
---|
82 | put(grammarAccess.getEtsiBnfAccess().getTypeAssignment_2_0(), "rule__EtsiBnf__TypeAssignment_2_0"); |
---|
83 | put(grammarAccess.getEtsiBnfAccess().getImportSectionAssignment_2_2(), "rule__EtsiBnf__ImportSectionAssignment_2_2"); |
---|
84 | put(grammarAccess.getEtsiBnfAccess().getMergeEntryAssignment_2_3(), "rule__EtsiBnf__MergeEntryAssignment_2_3"); |
---|
85 | put(grammarAccess.getImportSectionAccess().getImportsAssignment(), "rule__ImportSection__ImportsAssignment"); |
---|
86 | put(grammarAccess.getBnfEntryAccess().getSectionheaderAssignment_0(), "rule__BnfEntry__SectionheaderAssignment_0"); |
---|
87 | put(grammarAccess.getBnfEntryAccess().getRuleAssignment_1(), "rule__BnfEntry__RuleAssignment_1"); |
---|
88 | put(grammarAccess.getDeltaEntryAccess().getRuleAssignment_0(), "rule__DeltaEntry__RuleAssignment_0"); |
---|
89 | put(grammarAccess.getDeltaEntryAccess().getSectionheaderAssignment_1(), "rule__DeltaEntry__SectionheaderAssignment_1"); |
---|
90 | put(grammarAccess.getDeltaEntryAccess().getExtRuleAssignment_2(), "rule__DeltaEntry__ExtRuleAssignment_2"); |
---|
91 | put(grammarAccess.getMergeEntryAccess().getSectionheaderAssignment_0(), "rule__MergeEntry__SectionheaderAssignment_0"); |
---|
92 | put(grammarAccess.getMergeEntryAccess().getMergeRuleAssignment_1(), "rule__MergeEntry__MergeRuleAssignment_1"); |
---|
93 | put(grammarAccess.getSectionHeadingAccess().getSectionHeaderAssignment_1(), "rule__SectionHeading__SectionHeaderAssignment_1"); |
---|
94 | put(grammarAccess.getImportAccess().getImportURIAssignment_1(), "rule__Import__ImportURIAssignment_1"); |
---|
95 | put(grammarAccess.getImportAccess().getGrammarTypeAssignment_2_1_0(), "rule__Import__GrammarTypeAssignment_2_1_0"); |
---|
96 | put(grammarAccess.getImportAccess().getGrammarTypeAssignment_2_1_1(), "rule__Import__GrammarTypeAssignment_2_1_1"); |
---|
97 | put(grammarAccess.getImportAccess().getGrammarTypeAssignment_2_1_2(), "rule__Import__GrammarTypeAssignment_2_1_2"); |
---|
98 | put(grammarAccess.getImportAccess().getLabelAssignment_3_1(), "rule__Import__LabelAssignment_3_1"); |
---|
99 | put(grammarAccess.getRuleAccess().getRulenumberAssignment_0_0(), "rule__Rule__RulenumberAssignment_0_0"); |
---|
100 | put(grammarAccess.getRuleAccess().getRulevariantAssignment_0_1(), "rule__Rule__RulevariantAssignment_0_1"); |
---|
101 | put(grammarAccess.getRuleAccess().getNameAssignment_1(), "rule__Rule__NameAssignment_1"); |
---|
102 | put(grammarAccess.getRuleAccess().getDefinitionListAssignment_3(), "rule__Rule__DefinitionListAssignment_3"); |
---|
103 | put(grammarAccess.getExtRuleAccess().getRulenumberAssignment_0_0(), "rule__ExtRule__RulenumberAssignment_0_0"); |
---|
104 | put(grammarAccess.getExtRuleAccess().getRulevariantAssignment_0_1(), "rule__ExtRule__RulevariantAssignment_0_1"); |
---|
105 | put(grammarAccess.getExtRuleAccess().getNameAssignment_1(), "rule__ExtRule__NameAssignment_1"); |
---|
106 | put(grammarAccess.getExtRuleAccess().getRuleextAssignment_2_1(), "rule__ExtRule__RuleextAssignment_2_1"); |
---|
107 | put(grammarAccess.getExtRuleAccess().getElementsAssignment_4_0(), "rule__ExtRule__ElementsAssignment_4_0"); |
---|
108 | put(grammarAccess.getGlobalCombinatorAccess().getLogicAssignment_1(), "rule__GlobalCombinator__LogicAssignment_1"); |
---|
109 | put(grammarAccess.getRuleCombinatorAccess().getNameAssignment_0_2(), "rule__RuleCombinator__NameAssignment_0_2"); |
---|
110 | put(grammarAccess.getRuleCombinatorAccess().getLogicAssignment_1(), "rule__RuleCombinator__LogicAssignment_1"); |
---|
111 | put(grammarAccess.getRuleCombinatorAccess().getLABELAssignment_2_1(), "rule__RuleCombinator__LABELAssignment_2_1"); |
---|
112 | put(grammarAccess.getHookCombinatorAccess().getNameAssignment_2(), "rule__HookCombinator__NameAssignment_2"); |
---|
113 | put(grammarAccess.getHookCombinatorAccess().getRuleextAssignment_4(), "rule__HookCombinator__RuleextAssignment_4"); |
---|
114 | put(grammarAccess.getHookCombinatorAccess().getLogicAssignment_6(), "rule__HookCombinator__LogicAssignment_6"); |
---|
115 | put(grammarAccess.getHookCombinatorAccess().getLABELAssignment_7_1(), "rule__HookCombinator__LABELAssignment_7_1"); |
---|
116 | put(grammarAccess.getDefinitionListAccess().getSingleDefinitionAssignment_0(), "rule__DefinitionList__SingleDefinitionAssignment_0"); |
---|
117 | put(grammarAccess.getDefinitionListAccess().getSingleDefinitionAssignment_1_1(), "rule__DefinitionList__SingleDefinitionAssignment_1_1"); |
---|
118 | put(grammarAccess.getSingleDefinitionAccess().getTermsAssignment(), "rule__SingleDefinition__TermsAssignment"); |
---|
119 | put(grammarAccess.getTermAccess().getTermAtomAssignment_0(), "rule__Term__TermAtomAssignment_0"); |
---|
120 | put(grammarAccess.getTermAccess().getTermGroupedSequenceAssignment_1(), "rule__Term__TermGroupedSequenceAssignment_1"); |
---|
121 | put(grammarAccess.getTermAccess().getTermOptionalSequenceAssignment_2(), "rule__Term__TermOptionalSequenceAssignment_2"); |
---|
122 | put(grammarAccess.getTermAccess().getTermRepeatedSequenceAssignment_3(), "rule__Term__TermRepeatedSequenceAssignment_3"); |
---|
123 | put(grammarAccess.getAtomAccess().getAtomStringRuleAssignment_0(), "rule__Atom__AtomStringRuleAssignment_0"); |
---|
124 | put(grammarAccess.getAtomAccess().getAtomRuleReferenceAssignment_1(), "rule__Atom__AtomRuleReferenceAssignment_1"); |
---|
125 | put(grammarAccess.getRuleReferenceAccess().getRulerefAssignment(), "rule__RuleReference__RulerefAssignment"); |
---|
126 | put(grammarAccess.getStringRuleAccess().getLiteralAssignment_0(), "rule__StringRule__LiteralAssignment_0"); |
---|
127 | put(grammarAccess.getStringRuleAccess().getColonAssignment_1(), "rule__StringRule__ColonAssignment_1"); |
---|
128 | put(grammarAccess.getGroupedSequenceAccess().getDefinitionListAssignment_1(), "rule__GroupedSequence__DefinitionListAssignment_1"); |
---|
129 | put(grammarAccess.getOptionalSequenceAccess().getDefinitionListAssignment_1(), "rule__OptionalSequence__DefinitionListAssignment_1"); |
---|
130 | put(grammarAccess.getRepeatedSequenceAccess().getDefinitionsAssignment_1(), "rule__RepeatedSequence__DefinitionsAssignment_1"); |
---|
131 | put(grammarAccess.getRepeatedSequenceAccess().getMorethanonceAssignment_3(), "rule__RepeatedSequence__MorethanonceAssignment_3"); |
---|
132 | } |
---|
133 | }; |
---|
134 | } |
---|
135 | return nameMappings.get(element); |
---|
136 | } |
---|
137 | |
---|
138 | @Override |
---|
139 | protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) { |
---|
140 | try { |
---|
141 | de.ugoe.cs.swe.bnftools.ui.contentassist.antlr.internal.InternalEbnfParser typedParser = (de.ugoe.cs.swe.bnftools.ui.contentassist.antlr.internal.InternalEbnfParser) parser; |
---|
142 | typedParser.entryRuleEtsiBnf(); |
---|
143 | return typedParser.getFollowElements(); |
---|
144 | } catch(RecognitionException ex) { |
---|
145 | throw new RuntimeException(ex); |
---|
146 | } |
---|
147 | } |
---|
148 | |
---|
149 | @Override |
---|
150 | protected String[] getInitialHiddenTokens() { |
---|
151 | return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" }; |
---|
152 | } |
---|
153 | |
---|
154 | public EbnfGrammarAccess getGrammarAccess() { |
---|
155 | return this.grammarAccess; |
---|
156 | } |
---|
157 | |
---|
158 | public void setGrammarAccess(EbnfGrammarAccess grammarAccess) { |
---|
159 | this.grammarAccess = grammarAccess; |
---|
160 | } |
---|
161 | } |
---|