Class AbstractInternalAntlrParser

  • Direct Known Subclasses:
    InternalXtextParser

    public abstract class AbstractInternalAntlrParser
    extends org.antlr.runtime.Parser
    Base class for Xtext's generated parsers. It is reasonable customizable by means of object composition, e.g. error messages can be tailored to specific needs with an ISyntaxErrorMessageProvider, objects construction is subject to an IAstFactory.
    • Constructor Detail

      • AbstractInternalAntlrParser

        protected AbstractInternalAntlrParser​(org.antlr.runtime.TokenStream input)
      • AbstractInternalAntlrParser

        protected AbstractInternalAntlrParser​(org.antlr.runtime.TokenStream input,
                                              org.antlr.runtime.RecognizerSharedState state)
    • Method Detail

      • registerRules

        protected void registerRules​(Grammar grammar)
      • createAllRules

        protected java.util.Map<java.lang.String,​AbstractRule> createAllRules​(Grammar grammar)
        Since:
        2.11
      • getInput

        public org.antlr.runtime.TokenStream getInput()
      • getCurrentNode

        protected ICompositeNode getCurrentNode()
        Since:
        2.10
      • getGrammarAccess

        protected abstract IGrammarAccess getGrammarAccess()
      • associateNodeWithAstElement

        protected void associateNodeWithAstElement​(ICompositeNode node,
                                                   org.eclipse.emf.ecore.EObject astElement)
      • setTokenTypeMap

        public void setTokenTypeMap​(java.util.Map<java.lang.Integer,​java.lang.String> tokenTypeMap)
      • set

        protected void set​(org.eclipse.emf.ecore.EObject _this,
                           java.lang.String feature,
                           java.lang.Object value,
                           java.lang.String lexerRule,
                           INode node)
      • set

        protected void set​(org.eclipse.emf.ecore.EObject _this,
                           java.lang.String feature,
                           java.lang.Object value,
                           java.lang.String lexerRule)
      • set

        protected void set​(org.eclipse.emf.ecore.EObject _this,
                           java.lang.String feature,
                           boolean value,
                           java.lang.String lexerRule)
      • setWithLastConsumed

        protected void setWithLastConsumed​(org.eclipse.emf.ecore.EObject _this,
                                           java.lang.String feature,
                                           java.lang.Object value,
                                           java.lang.String lexerRule)
      • setWithLastConsumed

        protected void setWithLastConsumed​(org.eclipse.emf.ecore.EObject _this,
                                           java.lang.String feature,
                                           boolean value,
                                           java.lang.String lexerRule)
      • add

        protected void add​(org.eclipse.emf.ecore.EObject _this,
                           java.lang.String feature,
                           java.lang.Object value,
                           java.lang.String lexerRule,
                           INode node)
      • add

        protected void add​(org.eclipse.emf.ecore.EObject _this,
                           java.lang.String feature,
                           java.lang.Object value,
                           java.lang.String lexerRule)
      • add

        protected void add​(org.eclipse.emf.ecore.EObject _this,
                           java.lang.String feature,
                           boolean value,
                           java.lang.String lexerRule)
      • addWithLastConsumed

        protected void addWithLastConsumed​(org.eclipse.emf.ecore.EObject _this,
                                           java.lang.String feature,
                                           java.lang.Object value,
                                           java.lang.String lexerRule)
      • addWithLastConsumed

        protected void addWithLastConsumed​(org.eclipse.emf.ecore.EObject _this,
                                           java.lang.String feature,
                                           boolean value,
                                           java.lang.String lexerRule)
      • appendError

        protected void appendError​(INode node)
      • appendAllTokens

        protected void appendAllTokens()
      • getLastLeafNode

        protected INode getLastLeafNode()
      • appendSkippedTokens

        protected java.util.List<ILeafNode> appendSkippedTokens()
      • appendTrailingHiddenTokens

        protected void appendTrailingHiddenTokens()
      • recover

        public void recover​(org.antlr.runtime.IntStream input,
                            org.antlr.runtime.RecognitionException re)
        Overrides:
        recover in class org.antlr.runtime.BaseRecognizer
      • getValueConverterExceptionMessage

        protected java.lang.String getValueConverterExceptionMessage​(ValueConverterException vce)
      • getErrorMessage

        public java.lang.String getErrorMessage​(org.antlr.runtime.RecognitionException e,
                                                java.lang.String[] tokenNames)
        Overrides:
        getErrorMessage in class org.antlr.runtime.BaseRecognizer
      • displayRecognitionError

        public void displayRecognitionError​(java.lang.String[] tokenNames,
                                            org.antlr.runtime.RecognitionException e)
        Overrides:
        displayRecognitionError in class org.antlr.runtime.BaseRecognizer
      • reportError

        public void reportError​(org.antlr.runtime.RecognitionException e)
        Overrides:
        reportError in class org.antlr.runtime.BaseRecognizer
      • recoverFromMismatchedToken

        protected java.lang.Object recoverFromMismatchedToken​(org.antlr.runtime.IntStream input,
                                                              int ttype,
                                                              org.antlr.runtime.BitSet follow)
                                                       throws org.antlr.runtime.RecognitionException
        Overrides:
        recoverFromMismatchedToken in class org.antlr.runtime.BaseRecognizer
        Throws:
        org.antlr.runtime.RecognitionException
      • getSyntaxErrorMessage

        public SyntaxErrorMessage getSyntaxErrorMessage​(org.antlr.runtime.RecognitionException e,
                                                        java.lang.String[] tokenNames)
      • superGetErrorMessage

        protected java.lang.String superGetErrorMessage​(org.antlr.runtime.RecognitionException e,
                                                        java.lang.String[] tokenNames)
      • parse

        public final IParseResult parse()
                                 throws org.antlr.runtime.RecognitionException
        Throws:
        org.antlr.runtime.RecognitionException
      • parse

        public final IParseResult parse​(java.lang.String entryRuleName)
                                 throws org.antlr.runtime.RecognitionException
        Throws:
        org.antlr.runtime.RecognitionException
      • emitErrorMessage

        public void emitErrorMessage​(java.lang.String msg)
        Overrides:
        emitErrorMessage in class org.antlr.runtime.BaseRecognizer
      • getFirstRuleName

        protected abstract java.lang.String getFirstRuleName()
        Returns:
        the name of the entry rule.
      • setUnorderedGroupHelper

        public void setUnorderedGroupHelper​(IUnorderedGroupHelper unorderedGroupHelper)
      • afterParserOrEnumRuleCall

        protected void afterParserOrEnumRuleCall()
      • createModelElementForParent

        protected org.eclipse.emf.ecore.EObject createModelElementForParent​(AbstractRule rule)
      • createModelElement

        protected org.eclipse.emf.ecore.EObject createModelElement​(AbstractRule rule)
      • createModelElementForParent

        protected org.eclipse.emf.ecore.EObject createModelElementForParent​(org.eclipse.emf.ecore.EClassifier classifier)
      • createModelElement

        protected org.eclipse.emf.ecore.EObject createModelElement​(org.eclipse.emf.ecore.EClassifier classifier)
      • createModelElement

        protected org.eclipse.emf.ecore.EObject createModelElement​(org.eclipse.emf.ecore.EClassifier classifier,
                                                                   ICompositeNode compositeNode)
      • forceCreateModelElementAndSet

        protected org.eclipse.emf.ecore.EObject forceCreateModelElementAndSet​(Action action,
                                                                              org.eclipse.emf.ecore.EObject value)
      • forceCreateModelElementAndAdd

        protected org.eclipse.emf.ecore.EObject forceCreateModelElementAndAdd​(Action action,
                                                                              org.eclipse.emf.ecore.EObject value)
      • forceCreateModelElement

        protected org.eclipse.emf.ecore.EObject forceCreateModelElement​(Action action,
                                                                        org.eclipse.emf.ecore.EObject value)
      • insertCompositeNode

        protected void insertCompositeNode​(Action action)
      • enterRule

        protected void enterRule()
      • leaveRule

        protected void leaveRule()
      • newCompositeNode

        protected void newCompositeNode​(org.eclipse.emf.ecore.EObject grammarElement)
      • newLeafNode

        protected void newLeafNode​(org.antlr.runtime.Token token,
                                   org.eclipse.emf.ecore.EObject grammarElement)
      • setNodeModelBuilder

        public void setNodeModelBuilder​(NodeModelBuilder nodeModelBuilder)
      • setSemanticModelBuilder

        public void setSemanticModelBuilder​(IAstFactory semanticModelBuilder)
      • getSemanticModelBuilder

        public IAstFactory getSemanticModelBuilder()
      • unpackEncodedStringArray

        protected static short[][] unpackEncodedStringArray​(java.lang.String[] arr)
        Since:
        2.9