Package gnu.text

Class SourceMessages

  • All Implemented Interfaces:
    SourceLocator, SourceLocator, Locator

    public class SourceMessages
    extends SourceLocator.Simple
    A collection of (zero or more) SourceErrors. Has a "current line number" which clients can use as the default line number, or clients can explicitly provide a line number. Does not handle localization of messages. Similar functionality as JAVA6's javax.tools.DiagnosticCollector.
    • Field Detail

      • stripDirectoriesDefault

        public static boolean stripDirectoriesDefault
      • stripDirectories

        public boolean stripDirectories
      • debugStackTraceOnWarning

        public static boolean debugStackTraceOnWarning
        If true, print out stack trace with any warning.
      • debugStackTraceOnError

        public static boolean debugStackTraceOnError
        If true, print out stack trace with any error.
      • sortMessages

        public boolean sortMessages
        True if we should sort messages by line number.
    • Constructor Detail

      • SourceMessages

        public SourceMessages()
    • Method Detail

      • seenErrors

        public boolean seenErrors()
        Return true iff errors (not warnings) have been seen.
      • seenErrorsOrWarnings

        public boolean seenErrorsOrWarnings()
      • getErrorCount

        public int getErrorCount()
        Get the number of errors (not counting warnings).
      • getCount

        public int getCount​(String severities)
        Get number of diagnostics whose severity is one of the characters in the argument.
      • clearErrors

        public void clearErrors()
        Clear the error count (only).
      • clear

        public void clear()
        Clear the contained errors and warnings.
      • error

        public void error​(SourceError error)
        Link in an error.
      • error

        public void error​(char severity,
                          String filename,
                          int line,
                          int column,
                          String message)
        Record a new error.
        Parameters:
        severity - is the seriousness of the error - one of 'w' (for warning), 'e' (for error), or 'f' (for fatal error)
        filename - the name or URL of the file containing the error
        line - the (1-origin) line number or 0 if unknown
        column - the (1-origin) column number or 0 if unknown
        message - the error message
      • error

        public void error​(char severity,
                          String filename,
                          int line,
                          int column,
                          String message,
                          String code)
      • error

        public void error​(char severity,
                          String message)
        Record a new error at the current default source file location.
        Parameters:
        severity - is the seriousness of the error - one of 'w' (for warning), 'e' (for error), or 'f' (for fatal error)
        message - the error message
      • error

        public void error​(char severity,
                          String message,
                          Throwable exception)
      • error

        public void error​(char severity,
                          String message,
                          String code)
      • printAll

        public void printAll​(Appendable out,
                             int max)
        Print all the error messages to an Appendable.
      • toString

        public String toString​(int max)
        Convert this to a String containing the recorded errors.
        Parameters:
        max - the maximum number of error error to list
        Returns:
        a String with one '\n'-terminated line per recorded error
      • checkErrors

        public boolean checkErrors​(Appendable out,
                                   int max)
        Checks if an error was seen; if so, prints and clears the messages.
        Parameters:
        out - where to write the error message to
        max - maximum number of messages to print (can be 0)
      • setSourceLocator

        public final void setSourceLocator​(SourceLocator locator)
        Links our location to the one give.
      • setColumn

        public void setColumn​(int column)
        Set the default column number to use for a new error.