/*
* generated by Xtext
*/
package org.example.entities.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.example.entities.services.EntitiesGrammarAccess;
public class EntitiesParser extends AbstractContentAssistParser {
@Inject
private EntitiesGrammarAccess grammarAccess;
private Map<AbstractElement, String> nameMappings;
@Override
protected org.example.entities.ui.contentassist.antlr.internal.InternalEntitiesParser createParser() {
org.example.entities.ui.contentassist.antlr.internal.InternalEntitiesParser result = new org.example.entities.ui.contentassist.antlr.internal.InternalEntitiesParser(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.getElementTypeAccess().getAlternatives(), "rule__ElementType__Alternatives");
put(grammarAccess.getBasicTypeAccess().getTypeNameAlternatives_0(), "rule__BasicType__TypeNameAlternatives_0");
put(grammarAccess.getEntityAccess().getGroup(), "rule__Entity__Group__0");
put(grammarAccess.getEntityAccess().getGroup_2(), "rule__Entity__Group_2__0");
put(grammarAccess.getAttributeAccess().getGroup(), "rule__Attribute__Group__0");
put(grammarAccess.getAttributeTypeAccess().getGroup(), "rule__AttributeType__Group__0");
put(grammarAccess.getAttributeTypeAccess().getGroup_1(), "rule__AttributeType__Group_1__0");
put(grammarAccess.getModelAccess().getEntitiesAssignment(), "rule__Model__EntitiesAssignment");
put(grammarAccess.getEntityAccess().getNameAssignment_1(), "rule__Entity__NameAssignment_1");
put(grammarAccess.getEntityAccess().getSuperTypeAssignment_2_1(), "rule__Entity__SuperTypeAssignment_2_1");
put(grammarAccess.getEntityAccess().getAttributesAssignment_4(), "rule__Entity__AttributesAssignment_4");
put(grammarAccess.getAttributeAccess().getTypeAssignment_0(), "rule__Attribute__TypeAssignment_0");
put(grammarAccess.getAttributeAccess().getNameAssignment_1(), "rule__Attribute__NameAssignment_1");
put(grammarAccess.getAttributeTypeAccess().getElementTypeAssignment_0(), "rule__AttributeType__ElementTypeAssignment_0");
put(grammarAccess.getAttributeTypeAccess().getArrayAssignment_1_0(), "rule__AttributeType__ArrayAssignment_1_0");
put(grammarAccess.getAttributeTypeAccess().getLengthAssignment_1_1(), "rule__AttributeType__LengthAssignment_1_1");
put(grammarAccess.getBasicTypeAccess().getTypeNameAssignment(), "rule__BasicType__TypeNameAssignment");
put(grammarAccess.getEntityTypeAccess().getEntityAssignment(), "rule__EntityType__EntityAssignment");
}
};
}
return nameMappings.get(element);
}
@Override
protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
try {
org.example.entities.ui.contentassist.antlr.internal.InternalEntitiesParser typedParser = (org.example.entities.ui.contentassist.antlr.internal.InternalEntitiesParser) parser;
typedParser.entryRuleModel();
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 EntitiesGrammarAccess getGrammarAccess() {
return this.grammarAccess;
}
public void setGrammarAccess(EntitiesGrammarAccess grammarAccess) {
this.grammarAccess = grammarAccess;
}
}