/*
* generated by Xtext
*/
package fr.istic.m2.idm.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 fr.istic.m2.idm.xtext.services.TopanlGrammarAccess;
public class TopanlParser extends AbstractContentAssistParser {
@Inject
private TopanlGrammarAccess grammarAccess;
private Map<AbstractElement, String> nameMappings;
@Override
protected fr.istic.m2.idm.xtext.ui.contentassist.antlr.internal.InternalTopanlParser createParser() {
fr.istic.m2.idm.xtext.ui.contentassist.antlr.internal.InternalTopanlParser result = new fr.istic.m2.idm.xtext.ui.contentassist.antlr.internal.InternalTopanlParser(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.getGeometryAccess().getGroup(), "rule__Geometry__Group__0");
put(grammarAccess.getGeometryAccess().getGroup_2(), "rule__Geometry__Group_2__0");
put(grammarAccess.getGeometryAccess().getGroup_3(), "rule__Geometry__Group_3__0");
put(grammarAccess.getGeometryAccess().getGroup_8(), "rule__Geometry__Group_8__0");
put(grammarAccess.getGeometryAccess().getGroup_10(), "rule__Geometry__Group_10__0");
put(grammarAccess.getGeometryAccess().getGroup_10_4(), "rule__Geometry__Group_10_4__0");
put(grammarAccess.getDimensionAccess().getGroup(), "rule__Dimension__Group__0");
put(grammarAccess.getDimensionAccess().getGroup_3(), "rule__Dimension__Group_3__0");
put(grammarAccess.getNeighborAccess().getGroup(), "rule__Neighbor__Group__0");
put(grammarAccess.getNeighborAccess().getGroup_3(), "rule__Neighbor__Group_3__0");
put(grammarAccess.getNeighborAccess().getGroup_3_4(), "rule__Neighbor__Group_3_4__0");
put(grammarAccess.getGeometryAccess().getNDimAssignment_2_2(), "rule__Geometry__NDimAssignment_2_2");
put(grammarAccess.getGeometryAccess().getIsCircularAssignment_3_2(), "rule__Geometry__IsCircularAssignment_3_2");
put(grammarAccess.getGeometryAccess().getDimensionsAssignment_7(), "rule__Geometry__DimensionsAssignment_7");
put(grammarAccess.getGeometryAccess().getDimensionsAssignment_8_1(), "rule__Geometry__DimensionsAssignment_8_1");
put(grammarAccess.getGeometryAccess().getNeighborsAssignment_10_3(), "rule__Geometry__NeighborsAssignment_10_3");
put(grammarAccess.getGeometryAccess().getNeighborsAssignment_10_4_1(), "rule__Geometry__NeighborsAssignment_10_4_1");
put(grammarAccess.getDimensionAccess().getSizeAssignment_3_2(), "rule__Dimension__SizeAssignment_3_2");
put(grammarAccess.getNeighborAccess().getCoordAssignment_3_3(), "rule__Neighbor__CoordAssignment_3_3");
put(grammarAccess.getNeighborAccess().getCoordAssignment_3_4_1(), "rule__Neighbor__CoordAssignment_3_4_1");
}
};
}
return nameMappings.get(element);
}
@Override
protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
try {
fr.istic.m2.idm.xtext.ui.contentassist.antlr.internal.InternalTopanlParser typedParser = (fr.istic.m2.idm.xtext.ui.contentassist.antlr.internal.InternalTopanlParser) parser;
typedParser.entryRuleGeometry();
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 TopanlGrammarAccess getGrammarAccess() {
return this.grammarAccess;
}
public void setGrammarAccess(TopanlGrammarAccess grammarAccess) {
this.grammarAccess = grammarAccess;
}
}