Diag (Java SE 13 & JDK 13 )
Description: declaration: module: jdk.jshell, package: jdk.jshell, class: Diag
Keywords: jdk.jshell.Diag class

Module jdk.jshell
Package jdk.jshell

# Class Diag

java.lang.Object
jdk.jshell.Diag

    public abstract class Diag
    extends Object

Diagnostic information for a Snippet.

Since:
  9
See Also:
  `JShell.diagnostics(jdk.jshell.Snippet)`

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `static long` | `NOPOS` | Used to signal that no position is available.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `abstract String` | `getCode()` | Returns a diagnostic code indicating the type of diagnostic.
  `abstract long` | `getEndPosition()` | Returns the character offset from the beginning of the file associated with this diagnostic that indicates the end of the problem.
  `abstract String` | `getMessage​(Locale locale)` | Returns a localized message for the given locale.
  `abstract long` | `getPosition()` | Returns a character offset from the beginning of the source object associated with this diagnostic that indicates the location of the problem.
  `abstract long` | `getStartPosition()` | Returns the character offset from the beginning of the file associated with this diagnostic that indicates the start of the problem.
  `abstract boolean` | `isError()` | Indicates whether this diagnostic is an error (as opposed to a warning or note).

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### NOPOS

    public static final long NOPOS
    Used to signal that no position is available.
    See Also:
      Constant Field Values

- ## Method Details

  - ### isError

    public abstract boolean isError()
    Indicates whether this diagnostic is an error (as opposed to a warning or note).
    Returns:
      `true` if this diagnostic is an error; otherwise `false`

  - ### getPosition

    public abstract long getPosition()
    Returns 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 the position is not available.

  - ### getStartPosition

    public abstract long getStartPosition()
    Returns the character offset from the beginning of the file associated with this diagnostic that indicates the start of the problem.
    Returns:
      offset from beginning of file; `NOPOS` if and only if `getPosition()` returns `NOPOS`

  - ### getEndPosition

    public abstract long getEndPosition()
    Returns the character offset from the beginning of the file associated with this diagnostic that indicates the end of the problem.
    Returns:
      offset from beginning of file; `NOPOS` if and only if `getPosition()` returns `NOPOS`

  - ### getCode

    public abstract String getCode()
    Returns a diagnostic code indicating the type of diagnostic. The code is implementation-dependent and might be `null`.
    Returns:
      a diagnostic code

  - ### getMessage

    public abstract String getMessage​(Locale locale)
    Returns a localized message for the given locale. The actual message is implementation-dependent. If the locale is `null` use the default locale.
    Parameters:
      `locale` - a locale; might be `null`
    Returns:
      a localized message