Package antlr

Class Parser

  • Direct Known Subclasses:
    LLkParser

    public abstract class Parser
    extends java.lang.Object
    • Field Detail

      • tokenNames

        protected java.lang.String[] tokenNames
        Table of token type to token names
      • returnAST

        protected AST returnAST
        AST return value for a rule is squirreled away here
      • astFactory

        protected ASTFactory astFactory
        AST support code; parser delegates to this object. This is set during parser construction by default to either "new ASTFactory()" or a ctor that has a token type to class map for hetero nodes.
      • tokenTypeToASTClassMap

        protected java.util.Hashtable tokenTypeToASTClassMap
        Constructed if any AST types specified in tokens{..}. Maps an Integer->Class object.
      • traceDepth

        protected int traceDepth
        Used to keep track of indentdepth for traceIn/Out
    • Method Detail

      • getTokenTypeToASTClassMap

        public java.util.Hashtable getTokenTypeToASTClassMap()
        If the user specifies a tokens{} section with heterogeneous AST node types, then ANTLR generates code to fill this mapping.
      • addMessageListener

        public void addMessageListener​(MessageListener l)
      • addParserListener

        public void addParserListener​(ParserListener l)
      • addTraceListener

        public void addTraceListener​(TraceListener l)
      • getAST

        public AST getAST()
        Get the AST return value squirreled away in the parser
      • getASTFactory

        public ASTFactory getASTFactory()
      • getFilename

        public java.lang.String getFilename()
      • getTokenName

        public java.lang.String getTokenName​(int num)
      • getTokenNames

        public java.lang.String[] getTokenNames()
      • isDebugMode

        public boolean isDebugMode()
      • LA

        public abstract int LA​(int i)
                        throws TokenStreamException
        Return the token type of the ith token of lookahead where i=1 is the current token being examined by the parser (i.e., it has not been matched yet).
        Throws:
        TokenStreamException
      • mark

        public int mark()
      • panic

        public static void panic()
        Deprecated.
        as of 2.7.2. This method calls System.exit() and writes directly to stderr, which is usually not appropriate when a parser is embedded into a larger application. Since the method is static, it cannot be overridden to avoid these problems. ANTLR no longer uses this method internally or in generated code.
      • removeMessageListener

        public void removeMessageListener​(MessageListener l)
      • removeParserListener

        public void removeParserListener​(ParserListener l)
      • removeTraceListener

        public void removeTraceListener​(TraceListener l)
      • reportError

        public void reportError​(RecognitionException ex)
        Parser error-reporting function can be overridden in subclass
      • reportError

        public void reportError​(java.lang.String s)
        Parser error-reporting function can be overridden in subclass
      • reportWarning

        public void reportWarning​(java.lang.String s)
        Parser warning-reporting function can be overridden in subclass
      • rewind

        public void rewind​(int pos)
      • setASTFactory

        public void setASTFactory​(ASTFactory f)
        Specify an object with support code (shared by Parser and TreeParser. Normally, the programmer does not play with this, using setASTNodeType instead.
      • setASTNodeClass

        public void setASTNodeClass​(java.lang.String cl)
      • setASTNodeType

        public void setASTNodeType​(java.lang.String nodeType)
        Deprecated.
        since 2.7.1
        Specify the type of node to create during tree building; use setASTNodeClass now to be consistent with Token Object Type accessor.
      • setDebugMode

        public void setDebugMode​(boolean debugMode)
      • setFilename

        public void setFilename​(java.lang.String f)
      • setIgnoreInvalidDebugCalls

        public void setIgnoreInvalidDebugCalls​(boolean value)
      • setTokenBuffer

        public void setTokenBuffer​(TokenBuffer t)
        Set or change the input token buffer
      • traceIndent

        public void traceIndent()