com.io7m.r2.meshes

## Class R2MeshTriangle

- java.lang.Object
- - com.io7m.r2.meshes.R2MeshTriangle

- All Implemented Interfaces:
    R2MeshTriangleType

      @Generated(value={"Immutables.generator","R2MeshTriangleType"})
      public final class R2MeshTriangle
      extends Object
      implements R2MeshTriangleType

  The type of triangles.

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static R2MeshTriangle` | `copyOf(R2MeshTriangleType instance)` Creates an immutable copy of a `R2MeshTriangleType` value.
    `boolean` | `equals(Object another)` This instance is equal to all instances of `R2MeshTriangle` that have equal attribute values.
    `int` | `hashCode()` Returns a precomputed-on-construction hash code from attributes: `v0`, `v1`, `v2`.
    `static R2MeshTriangle` | `of(long v0, long v1, long v2)` Construct a new immutable `R2MeshTriangle` instance.
    `String` | `toString()` Prints the immutable value `R2MeshTriangle` with attribute values.
    `long` | `v0()`
    `long` | `v1()`
    `long` | `v2()`
    `R2MeshTriangle` | `withV0(long value)` Copy the current immutable object by setting a value for the `v0` attribute.
    `R2MeshTriangle` | `withV1(long value)` Copy the current immutable object by setting a value for the `v1` attribute.
    `R2MeshTriangle` | `withV2(long value)` Copy the current immutable object by setting a value for the `v2` attribute.

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Method Detail

    - #### v0

          public long v0()

      Specified by:
        `v0` in interface `R2MeshTriangleType`
      Returns:
        The index of the first vertex

    - #### v1

          public long v1()

      Specified by:
        `v1` in interface `R2MeshTriangleType`
      Returns:
        The index of the second vertex

    - #### v2

          public long v2()

      Specified by:
        `v2` in interface `R2MeshTriangleType`
      Returns:
        The index of the third vertex

    - #### withV0

          public final R2MeshTriangle withV0(long value)

      Copy the current immutable object by setting a value for the `v0` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for v0
      Returns:
        A modified copy of the `this` object

    - #### withV1

          public final R2MeshTriangle withV1(long value)

      Copy the current immutable object by setting a value for the `v1` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for v1
      Returns:
        A modified copy of the `this` object

    - #### withV2

          public final R2MeshTriangle withV2(long value)

      Copy the current immutable object by setting a value for the `v2` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for v2
      Returns:
        A modified copy of the `this` object

    - #### equals

          public boolean equals(Object another)

      This instance is equal to all instances of `R2MeshTriangle` that have equal attribute values.
      Overrides:
        `equals` in class `Object`
      Returns:
        `true` if `this` is equal to `another` instance

    - #### hashCode

          public int hashCode()

      Returns a precomputed-on-construction hash code from attributes: `v0`, `v1`, `v2`.
      Overrides:
        `hashCode` in class `Object`
      Returns:
        hashCode value

    - #### toString

          public String toString()

      Prints the immutable value `R2MeshTriangle` with attribute values.
      Overrides:
        `toString` in class `Object`
      Returns:
        A string representation of the value

    - #### of

          public static R2MeshTriangle of(long v0,
                                          long v1,
                                          long v2)

      Construct a new immutable `R2MeshTriangle` instance.
      Parameters:
        `v0` - The value for the `v0` attribute
        `v1` - The value for the `v1` attribute
        `v2` - The value for the `v2` attribute
      Returns:
        An immutable R2MeshTriangle instance

    - #### copyOf

          public static R2MeshTriangle copyOf(R2MeshTriangleType instance)

      Creates an immutable copy of a `R2MeshTriangleType` 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 R2MeshTriangle instance

Copyright © 2017 <code@io7m.com> http://io7m.com