/*
* generated by Xtext
*/
package gr.upatras.ece.wcl.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 gr.upatras.ece.wcl.services.SDLGrammarAccess;
public class SDLParser extends AbstractContentAssistParser {
@Inject
private SDLGrammarAccess grammarAccess;
private Map<AbstractElement, String> nameMappings;
@Override
protected gr.upatras.ece.wcl.ui.contentassist.antlr.internal.InternalSDLParser createParser() {
gr.upatras.ece.wcl.ui.contentassist.antlr.internal.InternalSDLParser result = new gr.upatras.ece.wcl.ui.contentassist.antlr.internal.InternalSDLParser(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.getSettingTypeAccess().getAlternatives(), "rule__SettingType__Alternatives");
put(grammarAccess.getEBooleanAccess().getAlternatives(), "rule__EBoolean__Alternatives");
put(grammarAccess.getServiceRuleAccess().getGroup(), "rule__ServiceRule__Group__0");
put(grammarAccess.getImportAccess().getGroup(), "rule__Import__Group__0");
put(grammarAccess.getService_ImplAccess().getGroup(), "rule__Service_Impl__Group__0");
put(grammarAccess.getService_ImplAccess().getGroup_4(), "rule__Service_Impl__Group_4__0");
put(grammarAccess.getService_ImplAccess().getGroup_4_3(), "rule__Service_Impl__Group_4_3__0");
put(grammarAccess.getServiceSettingAccess().getGroup(), "rule__ServiceSetting__Group__0");
put(grammarAccess.getServiceSettingAccess().getGroup_7(), "rule__ServiceSetting__Group_7__0");
put(grammarAccess.getServiceSettingAccess().getGroup_8(), "rule__ServiceSetting__Group_8__0");
put(grammarAccess.getServiceSettingAccess().getGroup_9(), "rule__ServiceSetting__Group_9__0");
put(grammarAccess.getServiceSettingAccess().getGroup_10(), "rule__ServiceSetting__Group_10__0");
put(grammarAccess.getServiceSettingAccess().getGroup_11(), "rule__ServiceSetting__Group_11__0");
put(grammarAccess.getServiceSettingAccess().getGroup_11_3(), "rule__ServiceSetting__Group_11_3__0");
put(grammarAccess.getServiceSettingAccess().getGroup_12(), "rule__ServiceSetting__Group_12__0");
put(grammarAccess.getOfferedServiceAccess().getGroup(), "rule__OfferedService__Group__0");
put(grammarAccess.getOfferedServiceAccess().getGroup_4(), "rule__OfferedService__Group_4__0");
put(grammarAccess.getOfferedServiceAccess().getGroup_4_3(), "rule__OfferedService__Group_4_3__0");
put(grammarAccess.getTideTypeSTRINGAccess().getGroup(), "rule__TideTypeSTRING__Group__0");
put(grammarAccess.getTideTypeSTRINGAccess().getGroup_3(), "rule__TideTypeSTRING__Group_3__0");
put(grammarAccess.getTideTypeEnumAccess().getGroup(), "rule__TideTypeEnum__Group__0");
put(grammarAccess.getTideTypeEnumAccess().getGroup_4(), "rule__TideTypeEnum__Group_4__0");
put(grammarAccess.getTideTypeEnumAccess().getGroup_5(), "rule__TideTypeEnum__Group_5__0");
put(grammarAccess.getTideTypeEnumAccess().getGroup_5_3(), "rule__TideTypeEnum__Group_5_3__0");
put(grammarAccess.getTideTypeEnumItemAccess().getGroup(), "rule__TideTypeEnumItem__Group__0");
put(grammarAccess.getTideTypeEnumItemAccess().getGroup_3(), "rule__TideTypeEnumItem__Group_3__0");
put(grammarAccess.getServiceRuleAccess().getImportsAssignment_1(), "rule__ServiceRule__ImportsAssignment_1");
put(grammarAccess.getServiceRuleAccess().getOfferedServiceAssignment_2(), "rule__ServiceRule__OfferedServiceAssignment_2");
put(grammarAccess.getImportAccess().getImportURIAssignment_1(), "rule__Import__ImportURIAssignment_1");
put(grammarAccess.getService_ImplAccess().getNameAssignment_2(), "rule__Service_Impl__NameAssignment_2");
put(grammarAccess.getService_ImplAccess().getServiceSettingsAssignment_4_2(), "rule__Service_Impl__ServiceSettingsAssignment_4_2");
put(grammarAccess.getService_ImplAccess().getServiceSettingsAssignment_4_3_1(), "rule__Service_Impl__ServiceSettingsAssignment_4_3_1");
put(grammarAccess.getServiceSettingAccess().getUserExposedAssignment_1(), "rule__ServiceSetting__UserExposedAssignment_1");
put(grammarAccess.getServiceSettingAccess().getUserEditableAssignment_2(), "rule__ServiceSetting__UserEditableAssignment_2");
put(grammarAccess.getServiceSettingAccess().getCanBePublishedAssignment_3(), "rule__ServiceSetting__CanBePublishedAssignment_3");
put(grammarAccess.getServiceSettingAccess().getNameAssignment_5(), "rule__ServiceSetting__NameAssignment_5");
put(grammarAccess.getServiceSettingAccess().getIdAssignment_7_1(), "rule__ServiceSetting__IdAssignment_7_1");
put(grammarAccess.getServiceSettingAccess().getDescriptionAssignment_8_1(), "rule__ServiceSetting__DescriptionAssignment_8_1");
put(grammarAccess.getServiceSettingAccess().getReadableAssignment_9_1(), "rule__ServiceSetting__ReadableAssignment_9_1");
put(grammarAccess.getServiceSettingAccess().getWritableAssignment_10_1(), "rule__ServiceSetting__WritableAssignment_10_1");
put(grammarAccess.getServiceSettingAccess().getRequiresParamsAssignment_11_2(), "rule__ServiceSetting__RequiresParamsAssignment_11_2");
put(grammarAccess.getServiceSettingAccess().getRequiresParamsAssignment_11_3_1(), "rule__ServiceSetting__RequiresParamsAssignment_11_3_1");
put(grammarAccess.getServiceSettingAccess().getSettingTypeAssignment_12_1(), "rule__ServiceSetting__SettingTypeAssignment_12_1");
put(grammarAccess.getOfferedServiceAccess().getNameAssignment_2(), "rule__OfferedService__NameAssignment_2");
put(grammarAccess.getOfferedServiceAccess().getServiceSettingsAssignment_4_2(), "rule__OfferedService__ServiceSettingsAssignment_4_2");
put(grammarAccess.getOfferedServiceAccess().getServiceSettingsAssignment_4_3_1(), "rule__OfferedService__ServiceSettingsAssignment_4_3_1");
put(grammarAccess.getTideTypeSTRINGAccess().getDefaultValueAssignment_3_1(), "rule__TideTypeSTRING__DefaultValueAssignment_3_1");
put(grammarAccess.getTideTypeEnumAccess().getNameAssignment_2(), "rule__TideTypeEnum__NameAssignment_2");
put(grammarAccess.getTideTypeEnumAccess().getDefaultValueAssignment_4_1(), "rule__TideTypeEnum__DefaultValueAssignment_4_1");
put(grammarAccess.getTideTypeEnumAccess().getTideEnumlistAssignment_5_2(), "rule__TideTypeEnum__TideEnumlistAssignment_5_2");
put(grammarAccess.getTideTypeEnumAccess().getTideEnumlistAssignment_5_3_1(), "rule__TideTypeEnum__TideEnumlistAssignment_5_3_1");
put(grammarAccess.getTideTypeEnumItemAccess().getValueAssignment_3_1(), "rule__TideTypeEnumItem__ValueAssignment_3_1");
}
};
}
return nameMappings.get(element);
}
@Override
protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
try {
gr.upatras.ece.wcl.ui.contentassist.antlr.internal.InternalSDLParser typedParser = (gr.upatras.ece.wcl.ui.contentassist.antlr.internal.InternalSDLParser) parser;
typedParser.entryRuleServiceRule();
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 SDLGrammarAccess getGrammarAccess() {
return this.grammarAccess;
}
public void setGrammarAccess(SDLGrammarAccess grammarAccess) {
this.grammarAccess = grammarAccess;
}
}