/*
* generated by Xtext
*/
package net.certware.argument.sfp.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 net.certware.argument.sfp.services.SemiFormalProofGrammarAccess;
public class SemiFormalProofParser extends AbstractContentAssistParser {
@Inject
private SemiFormalProofGrammarAccess grammarAccess;
private Map<AbstractElement, String> nameMappings;
@Override
protected net.certware.argument.sfp.ui.contentassist.antlr.internal.InternalSemiFormalProofParser createParser() {
net.certware.argument.sfp.ui.contentassist.antlr.internal.InternalSemiFormalProofParser result = new net.certware.argument.sfp.ui.contentassist.antlr.internal.InternalSemiFormalProofParser(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.getJustificationAccess().getAlternatives(), "rule__Justification__Alternatives");
put(grammarAccess.getConjunctionAccess().getAlternatives(), "rule__Conjunction__Alternatives");
put(grammarAccess.getProofStepsAccess().getAlternatives(), "rule__ProofSteps__Alternatives");
put(grammarAccess.getValidationKindAccess().getAlternatives(), "rule__ValidationKind__Alternatives");
put(grammarAccess.getProofAccess().getGroup(), "rule__Proof__Group__0");
put(grammarAccess.getJustificationsAccess().getGroup(), "rule__Justifications__Group__0");
put(grammarAccess.getJustificationsAccess().getGroup_1(), "rule__Justifications__Group_1__0");
put(grammarAccess.getJustificationsAccess().getGroup_1_1(), "rule__Justifications__Group_1_1__0");
put(grammarAccess.getJustificationAccess().getGroup_0(), "rule__Justification__Group_0__0");
put(grammarAccess.getQuotedAssertionAccess().getGroup(), "rule__QuotedAssertion__Group__0");
put(grammarAccess.getEntailmentAccess().getGroup(), "rule__Entailment__Group__0");
put(grammarAccess.getConjunctionAccess().getGroup_0(), "rule__Conjunction__Group_0__0");
put(grammarAccess.getProofStepsAccess().getGroup_0(), "rule__ProofSteps__Group_0__0");
put(grammarAccess.getProofStepsAccess().getGroup_0_1(), "rule__ProofSteps__Group_0_1__0");
put(grammarAccess.getStatementAccess().getGroup(), "rule__Statement__Group__0");
put(grammarAccess.getStatementAccess().getGroup_7(), "rule__Statement__Group_7__0");
put(grammarAccess.getValidationAccess().getGroup(), "rule__Validation__Group__0");
put(grammarAccess.getProofAccess().getTitleAssignment_2(), "rule__Proof__TitleAssignment_2");
put(grammarAccess.getProofAccess().getJustificationsAssignment_4(), "rule__Proof__JustificationsAssignment_4");
put(grammarAccess.getProofAccess().getProofStepsAssignment_6(), "rule__Proof__ProofStepsAssignment_6");
put(grammarAccess.getJustificationsAccess().getJustificationsAssignment_1_0(), "rule__Justifications__JustificationsAssignment_1_0");
put(grammarAccess.getJustificationsAccess().getJustificationsAssignment_1_1_1(), "rule__Justifications__JustificationsAssignment_1_1_1");
put(grammarAccess.getJustificationAccess().getHypothesisAssignment_0_1(), "rule__Justification__HypothesisAssignment_0_1");
put(grammarAccess.getJustificationAccess().getEpsilonAssignment_1(), "rule__Justification__EpsilonAssignment_1");
put(grammarAccess.getJustificationAccess().getNumeralAssignment_2(), "rule__Justification__NumeralAssignment_2");
put(grammarAccess.getJustificationAccess().getAssertionAssignment_3(), "rule__Justification__AssertionAssignment_3");
put(grammarAccess.getJustificationAccess().getEntailmentAssignment_4(), "rule__Justification__EntailmentAssignment_4");
put(grammarAccess.getQuotedAssertionAccess().getTextAssignment_1(), "rule__QuotedAssertion__TextAssignment_1");
put(grammarAccess.getEntailmentAccess().getHeadAssignment_1(), "rule__Entailment__HeadAssignment_1");
put(grammarAccess.getEntailmentAccess().getTailAssignment_3(), "rule__Entailment__TailAssignment_3");
put(grammarAccess.getConjunctionAccess().getLhsAssignment_0_1(), "rule__Conjunction__LhsAssignment_0_1");
put(grammarAccess.getConjunctionAccess().getRhsAssignment_0_3(), "rule__Conjunction__RhsAssignment_0_3");
put(grammarAccess.getConjunctionAccess().getLhsAssignment_1(), "rule__Conjunction__LhsAssignment_1");
put(grammarAccess.getProofStepsAccess().getStatementsAssignment_0_1_0(), "rule__ProofSteps__StatementsAssignment_0_1_0");
put(grammarAccess.getProofStepsAccess().getStatementsAssignment_0_1_1(), "rule__ProofSteps__StatementsAssignment_0_1_1");
put(grammarAccess.getProofStepsAccess().getEpsilonAssignment_1(), "rule__ProofSteps__EpsilonAssignment_1");
put(grammarAccess.getStatementAccess().getIdAssignment_1(), "rule__Statement__IdAssignment_1");
put(grammarAccess.getStatementAccess().getStatementAssignment_3(), "rule__Statement__StatementAssignment_3");
put(grammarAccess.getStatementAccess().getJustificationAssignment_5(), "rule__Statement__JustificationAssignment_5");
put(grammarAccess.getStatementAccess().getValidationAssignment_7_1(), "rule__Statement__ValidationAssignment_7_1");
put(grammarAccess.getValidationAccess().getAuthorAssignment_1(), "rule__Validation__AuthorAssignment_1");
put(grammarAccess.getValidationAccess().getTimeStampAssignment_2(), "rule__Validation__TimeStampAssignment_2");
put(grammarAccess.getValidationAccess().getStateAssignment_3(), "rule__Validation__StateAssignment_3");
}
};
}
return nameMappings.get(element);
}
@Override
protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
try {
net.certware.argument.sfp.ui.contentassist.antlr.internal.InternalSemiFormalProofParser typedParser = (net.certware.argument.sfp.ui.contentassist.antlr.internal.InternalSemiFormalProofParser) parser;
typedParser.entryRuleProof();
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 SemiFormalProofGrammarAccess getGrammarAccess() {
return this.grammarAccess;
}
public void setGrammarAccess(SemiFormalProofGrammarAccess grammarAccess) {
this.grammarAccess = grammarAccess;
}
}