Record Class SyntaxProbe.SyntaxError

java.lang.Object
java.lang.Record
org.ek9lang.compiler.repair.SyntaxProbe.SyntaxError
Record Components:
line - 1-based line
column - 0-based column
code - the parser's classification (E01084, E01086, E01093 ...), empty when it has none
message - the parser's reason ("mismatched input ',' expecting newline")
symbol - the offending token as the parser shows it
Enclosing class:
SyntaxProbe

public static record SyntaxProbe.SyntaxError(int line, int column, String code, String message, String symbol) extends Record
One syntax error.
  • Constructor Details

    • SyntaxError

      public SyntaxError(int line, int column, String code, String message, String symbol)
      Creates an instance of a SyntaxError record class.
      Parameters:
      line - the value for the line record component
      column - the value for the column record component
      code - the value for the code record component
      message - the value for the message record component
      symbol - the value for the symbol record component
  • Method Details

    • asDiagnostic

      public Map<String,Object> asDiagnostic()
      The diagnostic map the repairs read: line, column, errorCode, message.
    • isBefore

      public boolean isBefore(SyntaxProbe.SyntaxError other)
      True when this error sits strictly before other in the text.
    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared with Objects::equals(Object,Object); primitive components are compared with the compare method from their corresponding wrapper classes.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • line

      public int line()
      Returns the value of the line record component.
      Returns:
      the value of the line record component
    • column

      public int column()
      Returns the value of the column record component.
      Returns:
      the value of the column record component
    • code

      public String code()
      Returns the value of the code record component.
      Returns:
      the value of the code record component
    • message

      public String message()
      Returns the value of the message record component.
      Returns:
      the value of the message record component
    • symbol

      public String symbol()
      Returns the value of the symbol record component.
      Returns:
      the value of the symbol record component