Diagnostic (Java SE 13 & JDK 13 )
Description: declaration: module: jdk.scripting.nashorn, package: jdk.nashorn.api.tree, interface: Diagnostic
Keywords: jdk.nashorn.api.tree.Diagnostic interface

Module jdk.scripting.nashorn
Package jdk.nashorn.api.tree

# Interface Diagnostic

    @Deprecated(since="11",
                forRemoval=true)
    public interface Diagnostic

Deprecated, for removal: This API element is subject to removal in a future version.
Nashorn JavaScript script engine and APIs, and the jjs tool are deprecated with the intent to remove them in a future release.
Interface for diagnostics from tools. A diagnostic usually reports a problem at a specific position in a source file. However, not all diagnostics are associated with a position or a file.

A position is a zero-based character offset from the beginning of a file. Negative values (except `NOPOS`) are not valid positions.

Line and column numbers begin at 1. Negative values (except `NOPOS`) and 0 are not valid line or column numbers.

Line terminator is as defined in ECMAScript specification which is one of { \u000A, \u000B, \u2028, \u2029 }.

Since:
  9

- ## Nested Class Summary

  Nested Classes
  Modifier and Type | Interface | Description
  --- | --- | ---
  `static class` | `Diagnostic.Kind` | Deprecated, for removal: This API element is subject to removal in a future version. Nashorn JavaScript script engine and APIs, and the jjs tool are deprecated with the intent to remove them in a future release.

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `static long` | `NOPOS` | Deprecated, for removal: This API element is subject to removal in a future version. Used to signal that no position is available.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `String` | `getCode()` | Deprecated, for removal: This API element is subject to removal in a future version. Gets a diagnostic code indicating the type of diagnostic.
  `long` | `getColumnNumber()` | Deprecated, for removal: This API element is subject to removal in a future version. Gets the column number of the character offset returned by getPosition().
  `String` | `getFileName()` | Deprecated, for removal: This API element is subject to removal in a future version. Gets the source file name.
  `Diagnostic.Kind` | `getKind()` | Deprecated, for removal: This API element is subject to removal in a future version. Gets the kind of this diagnostic, for example, error or warning.
  `long` | `getLineNumber()` | Deprecated, for removal: This API element is subject to removal in a future version. Gets the line number of the character offset returned by getPosition().
  `String` | `getMessage()` | Deprecated, for removal: This API element is subject to removal in a future version. Gets a message for this diagnostic.
  `long` | `getPosition()` | Deprecated, for removal: This API element is subject to removal in a future version. Gets a character offset from the beginning of the source object associated with this diagnostic that indicates the location of the problem.

- ## Field Details

  - ### NOPOS

    static final long NOPOS
    Deprecated, for removal: This API element is subject to removal in a future version.
    Used to signal that no position is available.
    See Also:
      Constant Field Values

- ## Method Details

  - ### getKind

    Diagnostic.Kind getKind()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets the kind of this diagnostic, for example, error or warning.
    Returns:
      the kind of this diagnostic

  - ### getPosition

    long getPosition()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets a character offset from the beginning of the source object associated with this diagnostic that indicates the location of the problem. In addition, the following must be true:

    `getStartPostion() <= getPosition()`

    `getPosition() <= getEndPosition()`

    Returns:
      character offset from beginning of source; `NOPOS` if no location is suitable

  - ### getFileName

    String getFileName()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets the source file name.
    Returns:
      the file name or null if not available

  - ### getLineNumber

    long getLineNumber()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets the line number of the character offset returned by getPosition().
    Returns:
      a line number or `NOPOS` if and only if `getPosition()` returns `NOPOS`

  - ### getColumnNumber

    long getColumnNumber()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets the column number of the character offset returned by getPosition().
    Returns:
      a column number or `NOPOS` if and only if `getPosition()` returns `NOPOS`

  - ### getCode

    String getCode()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets a diagnostic code indicating the type of diagnostic. The code is implementation-dependent and might be `null`.
    Returns:
      a diagnostic code

  - ### getMessage

    String getMessage()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Gets a message for this diagnostic.
    Returns:
      a message