Package org.apache.cayenne.exp.parser

# Class TokenMgrError

java.lang.Object
java.lang.Throwable
java.lang.Error
org.apache.cayenne.exp.parser.TokenMgrError

All Implemented Interfaces:
  `Serializable`

public class TokenMgrError extends Error
Token Manager Error.

See Also:
  - Serialized Form

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final int`
  `INVALID_LEXICAL_STATE`
  Tried to change to an invalid lexical state.
  `static final int`
  `LEXICAL_ERROR`
  Lexical error occurred.
  `static final int`
  `LOOP_DETECTED`
  Detected (and bailed out of) an infinite loop in the token manager.
  `static final int`
  `STATIC_LEXER_ERROR`
  An attempt was made to create a second instance of a static token manager.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `TokenMgrError()`
  No arg constructor.
  `TokenMgrError(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, int curChar, int reason)`
  Full Constructor.
  `TokenMgrError(String message, int reason)`
  Constructor with message and reason.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected static final String`
  `addEscapes(String str)`
  Replaces unprintable characters by their escaped (or unicode escaped) equivalents in the given string
  `String`
  `getMessage()`
  You can also modify the body of this method to customize your error messages.
  `protected static String`
  `LexicalErr(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, int curChar)`
  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 Details

  - ### 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

- ## Constructor Details

  - ### TokenMgrError

    public TokenMgrError()
    No arg constructor.

  - ### TokenMgrError

    public TokenMgrError(String message, int reason)
    Constructor with message and reason.

  - ### TokenMgrError

    public TokenMgrError(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, int curChar, int reason)
    Full Constructor.

- ## Method Details

  - ### addEscapes

    protected static final String addEscapes(String str)
    Replaces unprintable characters by their escaped (or unicode escaped) equivalents in the given string

  - ### LexicalErr

    protected static String LexicalErr(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, int curChar)
    Returns a detailed message for the Error when it is thrown by the token manager to indicate a lexical error. Parameters : EOFSeen : indicates if EOF caused the lexical error lexState : lexical state in which this error occurred errorLine : line number when the error occurred errorColumn : column number when the error occurred errorAfter : prefix that was seen before this error occurred curchar : the offending character Note: You can customize the lexical error message by modifying this method.

  - ### getMessage

    public String getMessage()
    You can also modify the body of this method to customize your error messages. For example, cases like LOOP_DETECTED and INVALID_LEXICAL_STATE are not of end-users concern, so you can return something like : "Internal Error : Please file a bug report .... " from this method for such cases in the release version of your parser.
    Overrides:
      `getMessage` in class `Throwable`