- Type Parameters:
S- the type of source object used by this diagnostic
public interfaceDiagnostic<S>
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 (exceptNOPOS) are not valid positions.
Line and column numbers begin at 1. Negative values (exceptNOPOS) and 0 are not valid line or column numbers.
- Since:
- 1.6
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classKinds of diagnostics, for example, error or warning.Field Summary
FieldsMethod Summary
Modifier and TypeMethodDescriptiongetCode()Returns a diagnostic code indicating the type of diagnostic.longReturns the column number of the character offset returned bygetPosition().longReturns the character offset from the beginning of the file associated with this diagnostic that indicates the end of the problem.getKind()Returns the kind of this diagnostic, for example, error or warning.longReturns the line number of the character offset returned bygetPosition().getMessage(Locale locale)Returns a localized message for the given locale.longReturns a character offset from the beginning of the source object associated with this diagnostic that indicates the location of the problem.Returns the source object associated with this diagnostic.longReturns the character offset from the beginning of the file associated with this diagnostic that indicates the start of the problem.
Field Details
NOPOS
static final long NOPOSUsed to signal that no position is available.- See Also:
- Constant Field Values
Method Details
getKind
Diagnostic.Kind getKind()Returns the kind of this diagnostic, for example, error or warning.- Returns:
- the kind of this diagnostic
getSource
S getSource()Returns the source object associated with this diagnostic.- Returns:
- the source object associated with this diagnostic.
nullif no source object is associated with the diagnostic.
getPosition
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:getStartPosition() <= getPosition()getPosition() <= getEndPosition()- Returns:
- character offset from beginning of source;
NOPOSifgetSource()would returnnullor if no location is suitable
getStartPosition
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;
NOPOSif and only ifgetPosition()returnsNOPOS
getEndPosition
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;
NOPOSif and only ifgetPosition()returnsNOPOS
getLineNumber
long getLineNumber()Returns the line number of the character offset returned bygetPosition().- Returns:
- a line number or
NOPOSif and only ifgetPosition()returnsNOPOS
getColumnNumber
long getColumnNumber()Returns the column number of the character offset returned bygetPosition().- Returns:
- a column number or
NOPOSif and only ifgetPosition()returnsNOPOS
getCode
String getCode()Returns a diagnostic code indicating the type of diagnostic. The code is implementation-dependent and might benull.- Returns:
- a diagnostic code
getMessage
Returns a localized message for the given locale. The actual message is implementation-dependent. If the locale isnulluse the default locale.- Parameters:
locale- a locale; might benull- Returns:
- a localized message