/*******************************************************************************
* Copyright (c) 2010-2015 Henshin developers. All rights reserved.
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* TU Berlin, University of Luxembourg, SES S.A.
*******************************************************************************/
/*
* generated by Xtext
*/
package lu.uni.snt.secan.ttc_java.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 lu.uni.snt.secan.ttc_java.services.TTC_JavaGrammarAccess;
public class TTC_JavaParser extends AbstractContentAssistParser {
@Inject
private TTC_JavaGrammarAccess grammarAccess;
private Map<AbstractElement, String> nameMappings;
@Override
protected lu.uni.snt.secan.ttc_java.ui.contentassist.antlr.internal.InternalTTC_JavaParser createParser() {
lu.uni.snt.secan.ttc_java.ui.contentassist.antlr.internal.InternalTTC_JavaParser result = new lu.uni.snt.secan.ttc_java.ui.contentassist.antlr.internal.InternalTTC_JavaParser(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.getFeatureAccess().getAlternatives(), "rule__Feature__Alternatives");
put(grammarAccess.getStmtAccess().getAlternatives_0(), "rule__Stmt__Alternatives_0");
put(grammarAccess.getExpAccess().getAlternatives(), "rule__Exp__Alternatives");
put(grammarAccess.getAtomAccess().getAlternatives(), "rule__Atom__Alternatives");
put(grammarAccess.getModelAccess().getGroup(), "rule__Model__Group__0");
put(grammarAccess.getImport_Access().getGroup(), "rule__Import___Group__0");
put(grammarAccess.getClass_defAccess().getGroup(), "rule__Class_def__Group__0");
put(grammarAccess.getStmtAccess().getGroup(), "rule__Stmt__Group__0");
put(grammarAccess.getDeclarationAccess().getGroup(), "rule__Declaration__Group__0");
put(grammarAccess.getTypeParameterAccess().getGroup(), "rule__TypeParameter__Group__0");
put(grammarAccess.getAssignmentAccess().getGroup(), "rule__Assignment__Group__0");
put(grammarAccess.getFully_qualified_nameAccess().getGroup(), "rule__Fully_qualified_name__Group__0");
put(grammarAccess.getFully_qualified_nameAccess().getGroup_1(), "rule__Fully_qualified_name__Group_1__0");
put(grammarAccess.getConstructor_callAccess().getGroup(), "rule__Constructor_call__Group__0");
put(grammarAccess.getMethodCallAccess().getGroup(), "rule__MethodCall__Group__0");
put(grammarAccess.getMethod_defAccess().getGroup(), "rule__Method_def__Group__0");
put(grammarAccess.getMethod_defAccess().getGroup_2(), "rule__Method_def__Group_2__0");
put(grammarAccess.getMethod_defAccess().getGroup_2_1(), "rule__Method_def__Group_2_1__0");
put(grammarAccess.getBodyAccess().getGroup(), "rule__Body__Group__0");
put(grammarAccess.getArgumentAccess().getGroup(), "rule__Argument__Group__0");
put(grammarAccess.getModelAccess().getImportsAssignment_0(), "rule__Model__ImportsAssignment_0");
put(grammarAccess.getModelAccess().getClassesAssignment_1(), "rule__Model__ClassesAssignment_1");
put(grammarAccess.getImport_Access().getEntryAssignment_1(), "rule__Import___EntryAssignment_1");
put(grammarAccess.getClass_defAccess().getNameAssignment_1(), "rule__Class_def__NameAssignment_1");
put(grammarAccess.getClass_defAccess().getInitialDeclarationsAssignment_3(), "rule__Class_def__InitialDeclarationsAssignment_3");
put(grammarAccess.getClass_defAccess().getFeatureAssignment_4(), "rule__Class_def__FeatureAssignment_4");
put(grammarAccess.getDeclarationAccess().getTypeAssignment_0(), "rule__Declaration__TypeAssignment_0");
put(grammarAccess.getDeclarationAccess().getTypeParameterAssignment_1(), "rule__Declaration__TypeParameterAssignment_1");
put(grammarAccess.getDeclarationAccess().getNameAssignment_2(), "rule__Declaration__NameAssignment_2");
put(grammarAccess.getDeclarationAccess().getDefaultValueAssignment_4(), "rule__Declaration__DefaultValueAssignment_4");
put(grammarAccess.getTypeParameterAccess().getTypePAssignment_1(), "rule__TypeParameter__TypePAssignment_1");
put(grammarAccess.getAssignmentAccess().getVarAssignment_0(), "rule__Assignment__VarAssignment_0");
put(grammarAccess.getAssignmentAccess().getExpAssignment_2(), "rule__Assignment__ExpAssignment_2");
put(grammarAccess.getConstructor_callAccess().getMethodAssignment_1(), "rule__Constructor_call__MethodAssignment_1");
put(grammarAccess.getMethodCallAccess().getNameAssignment_0(), "rule__MethodCall__NameAssignment_0");
put(grammarAccess.getMethodCallAccess().getTypePAssignment_1(), "rule__MethodCall__TypePAssignment_1");
put(grammarAccess.getMethod_defAccess().getNameAssignment_0(), "rule__Method_def__NameAssignment_0");
put(grammarAccess.getMethod_defAccess().getArgsAssignment_2_0(), "rule__Method_def__ArgsAssignment_2_0");
put(grammarAccess.getMethod_defAccess().getArgsAssignment_2_1_1(), "rule__Method_def__ArgsAssignment_2_1_1");
put(grammarAccess.getMethod_defAccess().getBodyAssignment_5(), "rule__Method_def__BodyAssignment_5");
put(grammarAccess.getBodyAccess().getStmtsAssignment_1(), "rule__Body__StmtsAssignment_1");
put(grammarAccess.getArgumentAccess().getTypeAssignment_0(), "rule__Argument__TypeAssignment_0");
put(grammarAccess.getArgumentAccess().getTypePAssignment_1(), "rule__Argument__TypePAssignment_1");
put(grammarAccess.getArgumentAccess().getNameAssignment_2(), "rule__Argument__NameAssignment_2");
put(grammarAccess.getVariable_nameAccess().getNameAssignment(), "rule__Variable_name__NameAssignment");
put(grammarAccess.getString_valAccess().getValueAssignment(), "rule__String_val__ValueAssignment");
put(grammarAccess.getInt_valAccess().getValueAssignment(), "rule__Int_val__ValueAssignment");
}
};
}
return nameMappings.get(element);
}
@Override
protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
try {
lu.uni.snt.secan.ttc_java.ui.contentassist.antlr.internal.InternalTTC_JavaParser typedParser = (lu.uni.snt.secan.ttc_java.ui.contentassist.antlr.internal.InternalTTC_JavaParser) 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 TTC_JavaGrammarAccess getGrammarAccess() {
return this.grammarAccess;
}
public void setGrammarAccess(TTC_JavaGrammarAccess grammarAccess) {
this.grammarAccess = grammarAccess;
}
}