net.sourceforge.pmd.lang.ast

## Class TokenMgrError

- java.lang.Object
- - java.lang.Throwable
  - - java.lang.Exception
    - - java.lang.RuntimeException
      - - net.sourceforge.pmd.lang.ast.TokenMgrError

All Implemented Interfaces:
  Serializable

    public class TokenMgrError
    extends RuntimeException

Token Manager Error.

See Also:
  Serialized Form

### Field Summary

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

### Constructor Summary

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

### Method Summary

Methods
`protected static 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` `LexicalError(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, char 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 Detail

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

#### 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,
                 char curChar,
                 int reason)

Full Constructor.

### Method Detail

#### addEscapes

    protected static final String addEscapes(String str)

Replaces unprintable characters by their escaped (or unicode escaped) equivalents in the given string

#### LexicalError

    protected static String LexicalError(boolean EOFSeen,
                      int lexState,
                      int errorLine,
                      int errorColumn,
                      String errorAfter,
                      char 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 curLexState : 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`