Class TokenMgrException

  • All Implemented Interfaces:
    java.io.Serializable, JavaccError

    public class TokenMgrException
    extends java.lang.RuntimeException
    implements JavaccError
    Token Manager Error.
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.lang.String after
      Last correct input before error occurs.
      private int column
      Error column.
      private char current
      The current character.
      private boolean eof
      Whether eof was reached whilst expecting more input.
      private int errorCode
      Indicates the reason why the exception is thrown.
      static int INVALID_LEXICAL_STATE
      Tried to change to an invalid lexical state.
      static int LEXICAL_ERROR
      Lexical error occurred.
      private int line
      Error line.
      static int LOOP_DETECTED
      Detected (and bailed out of) an infinite loop in the token manager.
      private static long serialVersionUID
      The version identifier for this Serializable class.
      private int state
      The lexer state.
      static int STATIC_LEXER_ERROR
      An attempt was made to create a second instance of a static token manager.
    • Constructor Summary

      Constructors 
      Constructor Description
      TokenMgrException​(boolean EOFSeen, int lexState, int errorLine, int errorColumn, java.lang.String errorAfter, int curChar, int reason)
      Full Constructor.
      TokenMgrException​(java.lang.String message, int reason)
      Constructor with message and reason.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected static java.lang.String addEscapes​(java.lang.String str)
      Replaces unprintable characters by their espaced (or unicode escaped) equivalents in the given string
      java.lang.String getAfter()
      Gets the last correct input.
      int getColumn()
      Gets the column number.
      int getErrorCode()
      Gets the reason why the exception is thrown.
      int getLine()
      Gets the line number.
      java.lang.String getMessage()
      Returns a detailed message for the Error when it is thrown by the token manager to indicate a lexical error.
      • Methods inherited from class java.lang.Throwable

        addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        The version identifier for this Serializable class. Increment only if the serialized form of the class changes.
        See Also:
        Constant Field Values
      • LEXICAL_ERROR

        public static final int LEXICAL_ERROR
        Lexical error occurred.
        See Also:
        Constant Field Values
      • STATIC_LEXER_ERROR

        public static final int STATIC_LEXER_ERROR
        An attempt was made to create a second instance of a static token manager.
        See Also:
        Constant Field Values
      • INVALID_LEXICAL_STATE

        public static final int INVALID_LEXICAL_STATE
        Tried to change to an invalid lexical state.
        See Also:
        Constant Field Values
      • LOOP_DETECTED

        public static final int LOOP_DETECTED
        Detected (and bailed out of) an infinite loop in the token manager.
        See Also:
        Constant Field Values
      • errorCode

        private final int errorCode
        Indicates the reason why the exception is thrown. It will have one of the above 4 values.
      • state

        private int state
        The lexer state.
      • current

        private char current
        The current character.
      • after

        private java.lang.String after
        Last correct input before error occurs.
      • eof

        private boolean eof
        Whether eof was reached whilst expecting more input.
      • line

        private int line
        Error line.
      • column

        private int column
        Error column.
    • Constructor Detail

      • TokenMgrException

        public TokenMgrException​(boolean EOFSeen,
                                 int lexState,
                                 int errorLine,
                                 int errorColumn,
                                 java.lang.String errorAfter,
                                 int curChar,
                                 int reason)
        Full Constructor.
      • TokenMgrException

        public TokenMgrException​(java.lang.String message,
                                 int reason)
        Constructor with message and reason.
    • Method Detail

      • addEscapes

        protected static java.lang.String addEscapes​(java.lang.String str)
        Replaces unprintable characters by their espaced (or unicode escaped) equivalents in the given string
      • getAfter

        public java.lang.String getAfter()
        Description copied from interface: JavaccError
        Gets the last correct input.
        Specified by:
        getAfter in interface JavaccError
        Returns:
        the string after which the error occurred
      • getColumn

        public int getColumn()
        Description copied from interface: JavaccError
        Gets the column number.
        Specified by:
        getColumn in interface JavaccError
        Returns:
        the column.
      • getErrorCode

        public int getErrorCode()
        Gets the reason why the exception is thrown.
        Returns:
        one of the 4 lexical error codes
      • getLine

        public int getLine()
        Description copied from interface: JavaccError
        Gets the line number.
        Specified by:
        getLine in interface JavaccError
        Returns:
        line number.
      • getMessage

        public java.lang.String getMessage()
        Returns a detailed message for the Error when it is thrown by the token manager to indicate a lexical error.
        Overrides:
        getMessage in class java.lang.Throwable
        Returns:
        the message