/*
* generated by Xtext
*/
package com.perforce.example.p4dsl.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 com.perforce.example.p4dsl.services.P4DslGrammarAccess;
public class P4DslParser extends AbstractContentAssistParser {
@Inject
private P4DslGrammarAccess grammarAccess;
private Map<AbstractElement, String> nameMappings;
@Override
protected com.perforce.example.p4dsl.ui.contentassist.antlr.internal.InternalP4DslParser createParser() {
com.perforce.example.p4dsl.ui.contentassist.antlr.internal.InternalP4DslParser result = new com.perforce.example.p4dsl.ui.contentassist.antlr.internal.InternalP4DslParser(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.getP4CommandAccess().getAlternatives(), "rule__P4Command__Alternatives");
put(grammarAccess.getPUCFlagAccess().getAlternatives(), "rule__PUCFlag__Alternatives");
put(grammarAccess.getFileBasedCommandAccess().getAlternatives(), "rule__FileBasedCommand__Alternatives");
put(grammarAccess.getFILEAccess().getAlternatives(), "rule__FILE__Alternatives");
put(grammarAccess.getCommandAccess().getGroup(), "rule__Command__Group__0");
put(grammarAccess.getPortAccess().getGroup(), "rule__Port__Group__0");
put(grammarAccess.getUserAccess().getGroup(), "rule__User__Group__0");
put(grammarAccess.getClientAccess().getGroup(), "rule__Client__Group__0");
put(grammarAccess.getAddAccess().getGroup(), "rule__Add__Group__0");
put(grammarAccess.getEditAccess().getGroup(), "rule__Edit__Group__0");
put(grammarAccess.getDeleteAccess().getGroup(), "rule__Delete__Group__0");
put(grammarAccess.getP4PORTAccess().getGroup(), "rule__P4PORT__Group__0");
put(grammarAccess.getFILEAccess().getGroup_1(), "rule__FILE__Group_1__0");
put(grammarAccess.getModelAccess().getCommandAssignment(), "rule__Model__CommandAssignment");
put(grammarAccess.getPortAccess().getNameAssignment_1(), "rule__Port__NameAssignment_1");
put(grammarAccess.getPortAccess().getP4commandAssignment_2(), "rule__Port__P4commandAssignment_2");
put(grammarAccess.getUserAccess().getNameAssignment_1(), "rule__User__NameAssignment_1");
put(grammarAccess.getUserAccess().getP4commandAssignment_2(), "rule__User__P4commandAssignment_2");
put(grammarAccess.getClientAccess().getNameAssignment_1(), "rule__Client__NameAssignment_1");
put(grammarAccess.getClientAccess().getP4commandAssignment_2(), "rule__Client__P4commandAssignment_2");
put(grammarAccess.getAddAccess().getNameAssignment_1(), "rule__Add__NameAssignment_1");
put(grammarAccess.getEditAccess().getNameAssignment_1(), "rule__Edit__NameAssignment_1");
put(grammarAccess.getDeleteAccess().getNameAssignment_1(), "rule__Delete__NameAssignment_1");
}
};
}
return nameMappings.get(element);
}
@Override
protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
try {
com.perforce.example.p4dsl.ui.contentassist.antlr.internal.InternalP4DslParser typedParser = (com.perforce.example.p4dsl.ui.contentassist.antlr.internal.InternalP4DslParser) 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 P4DslGrammarAccess getGrammarAccess() {
return this.grammarAccess;
}
public void setGrammarAccess(P4DslGrammarAccess grammarAccess) {
this.grammarAccess = grammarAccess;
}
}
# |
Change |
User |
Description |
Committed |
|
#1
|
8258 |
Liz Lam |
Initial add of p4dsl - an exploration of Xtext using the p4 command line as an example. |
|
|