com.flagstone.translate
Class ParseException

java.lang.Object
  extended by java.lang.Throwable
      extended by java.lang.Exception
          extended by com.flagstone.translate.ParseException
All Implemented Interfaces:
java.io.Serializable

public class ParseException
extends java.lang.Exception

This exception is thrown when parse errors are encountered. ParseExceptions contain information about the sequence of tokens that generated the error however the information is sometimes cryptic. The ASParser generates detailed information in a more user friendly format, reporting the name of the file if the script was #include'd, the line and number in the script along with an error key which can be used to generate a localised error message.

See Also:
Serialized Form

Field Summary
 Token currentToken
          This is the last token that has been consumed successfully.
protected  java.lang.String eol
           
 int[][] expectedTokenSequences
          Each entry in this array is an array of integers.
protected  boolean specialConstructor
           
 java.lang.String[] tokenImage
          This is a reference to the "tokenImage" array of the generated parser within which the parse error occurred.
 
Constructor Summary
ParseException()
          Generates an ParseException.
ParseException(java.lang.String message)
          Generates an ParseException with the specified message.
ParseException(Token currentTokenVal, int[][] expectedTokenSequencesVal, java.lang.String[] tokenImageVal)
           
 
Method Summary
protected  java.lang.String add_escapes(java.lang.String str)
           
 java.lang.String getMessage()
          This method has the standard behaviour when this object has been created using the standard constructors.
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, 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

specialConstructor

protected boolean specialConstructor

currentToken

public Token currentToken
This is the last token that has been consumed successfully. If this object has been created due to a parse error, the token following this token will (therefore) be the first error token.


expectedTokenSequences

public int[][] expectedTokenSequences
Each entry in this array is an array of integers. Each array of integers represents a sequence of tokens (by their ordinal values) that is expected at this point of the parse.


tokenImage

public java.lang.String[] tokenImage
This is a reference to the "tokenImage" array of the generated parser within which the parse error occurred. This array is defined in the generated ...Constants interface.


eol

protected java.lang.String eol
Constructor Detail

ParseException

public ParseException(Token currentTokenVal,
                      int[][] expectedTokenSequencesVal,
                      java.lang.String[] tokenImageVal)

ParseException

public ParseException()
Generates an ParseException.


ParseException

public ParseException(java.lang.String message)
Generates an ParseException with the specified message.

Method Detail

getMessage

public java.lang.String getMessage()
This method has the standard behaviour when this object has been created using the standard constructors. Otherwise, it uses "currentToken" and "expectedTokenSequences" to generate a parse error message and returns it. If this object has been created due to a parse error, and you do not catch it (it gets thrown from the parser), then this method is called during the printing of the final stack trace, and hence the correct error message gets displayed.

Overrides:
getMessage in class java.lang.Throwable

add_escapes

protected java.lang.String add_escapes(java.lang.String str)