Class SMFParseError

    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static SMFParseError.Builder builder()
      Creates a builder for SMFParseError.
      static SMFParseError copyOf​(SMFParseErrorType instance)
      Creates an immutable copy of a SMFParseErrorType value.
      boolean equals​(java.lang.Object another)
      This instance is equal to all instances of SMFParseError that have equal attribute values.
      java.util.Optional<java.lang.Exception> exception()  
      java.lang.String fullMessage()
      int hashCode()
      Computes a hash code from attributes: lexical, message, exception.
      com.io7m.jlexing.core.LexicalPosition<java.net.URI> lexical()  
      java.lang.String message()  
      static SMFParseError of​(com.io7m.jlexing.core.LexicalPosition<java.net.URI> lexical, java.lang.String message, java.util.Optional<? extends java.lang.Exception> exception)
      Construct a new immutable SMFParseError instance.
      java.lang.String toString()
      Prints the immutable value SMFParseError with attribute values.
      SMFParseError withException​(java.lang.Exception value)
      Copy the current immutable object by setting a present value for the optional exception attribute.
      SMFParseError withException​(java.util.Optional<? extends java.lang.Exception> optional)
      Copy the current immutable object by setting an optional value for the exception attribute.
      SMFParseError withLexical​(com.io7m.jlexing.core.LexicalPosition<java.net.URI> value)
      Copy the current immutable object by setting a value for the lexical attribute.
      SMFParseError withMessage​(java.lang.String value)
      Copy the current immutable object by setting a value for the message attribute.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Method Detail

      • lexical

        public com.io7m.jlexing.core.LexicalPosition<java.net.URI> lexical()
        Specified by:
        lexical in interface SMFParseErrorType
        Returns:
        Lexical information
      • withLexical

        public final SMFParseError withLexical​(com.io7m.jlexing.core.LexicalPosition<java.net.URI> value)
        Copy the current immutable object by setting a value for the lexical attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        value - A new value for lexical
        Returns:
        A modified copy of the this object
      • withMessage

        public final SMFParseError withMessage​(java.lang.String value)
        Copy the current immutable object by setting a value for the message attribute. An equals check used to prevent copying of the same value by returning this.
        Parameters:
        value - A new value for message
        Returns:
        A modified copy of the this object
      • withException

        public final SMFParseError withException​(java.lang.Exception value)
        Copy the current immutable object by setting a present value for the optional exception attribute.
        Parameters:
        value - The value for exception
        Returns:
        A modified copy of this object
      • withException

        public final SMFParseError withException​(java.util.Optional<? extends java.lang.Exception> optional)
        Copy the current immutable object by setting an optional value for the exception attribute. A shallow reference equality check is used on unboxed optional value to prevent copying of the same value by returning this.
        Parameters:
        optional - A value for exception
        Returns:
        A modified copy of this object
      • equals

        public boolean equals​(java.lang.Object another)
        This instance is equal to all instances of SMFParseError that have equal attribute values.
        Overrides:
        equals in class java.lang.Object
        Returns:
        true if this is equal to another instance
      • hashCode

        public int hashCode()
        Computes a hash code from attributes: lexical, message, exception.
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        hashCode value
      • toString

        public java.lang.String toString()
        Prints the immutable value SMFParseError with attribute values.
        Overrides:
        toString in class java.lang.Object
        Returns:
        A string representation of the value
      • fullMessage

        public java.lang.String fullMessage()

        Returns a lazily initialized value of the fullMessage attribute. Initialized once and only once and stored for subsequent access with proper synchronization. In case of any exception or error thrown by the lazy value initializer, the result will not be memoised (i.e. remembered) and on next call computation will be attempted again.

        Specified by:
        fullMessage in interface SMFErrorType
        Specified by:
        fullMessage in interface SMFParseErrorType
        Returns:
        A lazily initialized value of the fullMessage attribute
      • of

        public static SMFParseError of​(com.io7m.jlexing.core.LexicalPosition<java.net.URI> lexical,
                                       java.lang.String message,
                                       java.util.Optional<? extends java.lang.Exception> exception)
        Construct a new immutable SMFParseError instance.
        Parameters:
        lexical - The value for the lexical attribute
        message - The value for the message attribute
        exception - The value for the exception attribute
        Returns:
        An immutable SMFParseError instance
      • copyOf

        public static SMFParseError copyOf​(SMFParseErrorType instance)
        Creates an immutable copy of a SMFParseErrorType value. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.
        Parameters:
        instance - The instance to copy
        Returns:
        A copied immutable SMFParseError instance
      • builder

        public static SMFParseError.Builder builder()
        Creates a builder for SMFParseError.
         SMFParseError.builder()
            .setLexical(com.io7m.jlexing.core.LexicalPosition&lt;java.net.URI&gt;) // required lexical
            .setMessage(String) // required message
            .setException(Exception) // optional exception
            .build();
         
        Returns:
        A new SMFParseError builder