## org.mozilla.javascript.ast
Class ErrorCollector

    java.lang.Object
      org.mozilla.javascript.ast.ErrorCollector

All Implemented Interfaces:
  IdeErrorReporter, ErrorReporter

    public class ErrorCollector

extends java.lang.Object
implements IdeErrorReporter

An error reporter that gathers the errors and warnings for later display. This a useful `ErrorReporter` when the `CompilerEnvirons` is set to ide-mode (for IDEs).

Author:
  Steve Yegge

Constructor Summary
`ErrorCollector()`

Method Summary
`void` `error(java.lang.String message, java.lang.String sourceName, int fileOffset, int length)` Report an error.
`void` `error(java.lang.String message, java.lang.String sourceName, int line, java.lang.String lineSource, int lineOffset)` This is not called during AST generation.
`java.util.List<ParseProblem>` `getErrors()` Returns the list of errors and warnings produced during parsing.
`EvaluatorException` `runtimeError(java.lang.String message, java.lang.String sourceName, int line, java.lang.String lineSource, int lineOffset)` Creates an EvaluatorException that may be thrown.
`java.lang.String` `toString()`
`void` `warning(java.lang.String message, java.lang.String sourceName, int offset, int length)` Report a warning.
`void` `warning(java.lang.String message, java.lang.String sourceName, int line, java.lang.String lineSource, int lineOffset)` This is not called during AST generation.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### ErrorCollector

    public ErrorCollector()

Method Detail

### warning

    public void warning(java.lang.String message,
                        java.lang.String sourceName,
                        int line,
                        java.lang.String lineSource,
                        int lineOffset)

  This is not called during AST generation. `warning(String,String,int,int)` is used instead.

  Specified by:
    `warning` in interface `ErrorReporter`
  Parameters:
    `message` - a String describing the warning
    `sourceName` - a String describing the JavaScript source where the warning occured; typically a filename or URL
    `line` - the line number associated with the warning
    `lineSource` - the text of the line (may be null)
    `lineOffset` - the offset into lineSource where problem was detected
  Throws:
    `java.lang.UnsupportedOperationException`

### warning

    public void warning(java.lang.String message,
                        java.lang.String sourceName,
                        int offset,
                        int length)

  Description copied from interface: `IdeErrorReporter`
  Report a warning.

  The implementing class may choose to ignore the warning if it desires.

  Specified by:
    `warning` in interface `IdeErrorReporter`
  Parameters:
    `message` - a `String` describing the warning
    `sourceName` - a `String` describing the JavaScript source where the warning occured; typically a filename or URL
    `offset` - the warning's 0-indexed char position in the input stream
    `length` - the length of the region contributing to the warning

### error

    public void error(java.lang.String message,
                      java.lang.String sourceName,
                      int line,
                      java.lang.String lineSource,
                      int lineOffset)

  This is not called during AST generation. `warning(String,String,int,int)` is used instead.

  Specified by:
    `error` in interface `ErrorReporter`
  Parameters:
    `message` - a String describing the error
    `sourceName` - a String describing the JavaScript source where the error occured; typically a filename or URL
    `line` - the line number associated with the error
    `lineSource` - the text of the line (may be null)
    `lineOffset` - the offset into lineSource where problem was detected
  Throws:
    `java.lang.UnsupportedOperationException`

### error

    public void error(java.lang.String message,
                      java.lang.String sourceName,
                      int fileOffset,
                      int length)

  Description copied from interface: `IdeErrorReporter`
  Report an error.

  The implementing class is free to throw an exception if it desires.

  If execution has not yet begun, the JavaScript engine is free to find additional errors rather than terminating the translation. It will not execute a script that had errors, however.

  Specified by:
    `error` in interface `IdeErrorReporter`
  Parameters:
    `message` - a String describing the error
    `sourceName` - a String describing the JavaScript source where the error occured; typically a filename or URL
    `fileOffset` - 0-indexed char position of the error in the input stream
    `length` - the length of the region contributing to the error

### runtimeError

    public EvaluatorException runtimeError(java.lang.String message,
                                           java.lang.String sourceName,
                                           int line,
                                           java.lang.String lineSource,
                                           int lineOffset)

  Description copied from interface: `ErrorReporter`
  Creates an EvaluatorException that may be thrown. runtimeErrors, unlike errors, will always terminate the current script.

  Specified by:
    `runtimeError` in interface `ErrorReporter`
  Parameters:
    `message` - a String describing the error
    `sourceName` - a String describing the JavaScript source where the error occured; typically a filename or URL
    `line` - the line number associated with the error
    `lineSource` - the text of the line (may be null)
    `lineOffset` - the offset into lineSource where problem was detected
  Returns:
    an EvaluatorException that will be thrown.

### getErrors

    public java.util.List<ParseProblem> getErrors()

  Returns the list of errors and warnings produced during parsing.

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`