# Class PMatrix3x3F.Builder<A,B>

java.lang.Object
com.io7m.jtensors.core.parameterized.matrices.PMatrix3x3F.Builder<A,B>

Enclosing class:
  `PMatrix3x3F<A,B>`

public static final class PMatrix3x3F.Builder<A,B> extends Object
Builds instances of type `PMatrix3x3F`. Initialize attributes and then invoke the `build()` method to create an immutable instance.

`Builder` is not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `PMatrix3x3F<A,B>`
  `build()`
  Builds a new `PMatrix3x3F`.
  `final PMatrix3x3F.Builder<A,B>`
  `from(PMatrix3x3FType<A,B> instance)`
  Fill a builder with attribute values from the provided `com.io7m.jtensors.core.parameterized.matrices.PMatrix3x3FType` instance.
  `final PMatrix3x3F.Builder<A,B>`
  `from(MatrixReadable3x3FType instance)`
  Fill a builder with attribute values from the provided `com.io7m.jtensors.core.unparameterized.matrices.MatrixReadable3x3FType` instance.
  `final PMatrix3x3F.Builder<A,B>`
  `setR0c0(float r0c0)`
  Initializes the value for the `r0c0` attribute.
  `final PMatrix3x3F.Builder<A,B>`
  `setR0c1(float r0c1)`
  Initializes the value for the `r0c1` attribute.
  `final PMatrix3x3F.Builder<A,B>`
  `setR0c2(float r0c2)`
  Initializes the value for the `r0c2` attribute.
  `final PMatrix3x3F.Builder<A,B>`
  `setR1c0(float r1c0)`
  Initializes the value for the `r1c0` attribute.
  `final PMatrix3x3F.Builder<A,B>`
  `setR1c1(float r1c1)`
  Initializes the value for the `r1c1` attribute.
  `final PMatrix3x3F.Builder<A,B>`
  `setR1c2(float r1c2)`
  Initializes the value for the `r1c2` attribute.
  `final PMatrix3x3F.Builder<A,B>`
  `setR2c0(float r2c0)`
  Initializes the value for the `r2c0` attribute.
  `final PMatrix3x3F.Builder<A,B>`
  `setR2c1(float r2c1)`
  Initializes the value for the `r2c1` attribute.
  `final PMatrix3x3F.Builder<A,B>`
  `setR2c2(float r2c2)`
  Initializes the value for the `r2c2` attribute.

  ### Methods inherited from class Object

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

- ## Method Details

  - ### from

    public final PMatrix3x3F.Builder<A,B> from(MatrixReadable3x3FType instance)
    Fill a builder with attribute values from the provided `com.io7m.jtensors.core.unparameterized.matrices.MatrixReadable3x3FType` instance.
    Parameters:
      `instance` - The instance from which to copy values
    Returns:
      `this` builder for use in a chained invocation

  - ### from

    public final PMatrix3x3F.Builder<A,B> from(PMatrix3x3FType<A,B> instance)
    Fill a builder with attribute values from the provided `com.io7m.jtensors.core.parameterized.matrices.PMatrix3x3FType` instance.
    Parameters:
      `instance` - The instance from which to copy values
    Returns:
      `this` builder for use in a chained invocation

  - ### setR0c0

    public final PMatrix3x3F.Builder<A,B> setR0c0(float r0c0)
    Initializes the value for the `r0c0` attribute.
    Parameters:
      `r0c0` - The value for r0c0
    Returns:
      `this` builder for use in a chained invocation

  - ### setR0c1

    public final PMatrix3x3F.Builder<A,B> setR0c1(float r0c1)
    Initializes the value for the `r0c1` attribute.
    Parameters:
      `r0c1` - The value for r0c1
    Returns:
      `this` builder for use in a chained invocation

  - ### setR0c2

    public final PMatrix3x3F.Builder<A,B> setR0c2(float r0c2)
    Initializes the value for the `r0c2` attribute.
    Parameters:
      `r0c2` - The value for r0c2
    Returns:
      `this` builder for use in a chained invocation

  - ### setR1c0

    public final PMatrix3x3F.Builder<A,B> setR1c0(float r1c0)
    Initializes the value for the `r1c0` attribute.
    Parameters:
      `r1c0` - The value for r1c0
    Returns:
      `this` builder for use in a chained invocation

  - ### setR1c1

    public final PMatrix3x3F.Builder<A,B> setR1c1(float r1c1)
    Initializes the value for the `r1c1` attribute.
    Parameters:
      `r1c1` - The value for r1c1
    Returns:
      `this` builder for use in a chained invocation

  - ### setR1c2

    public final PMatrix3x3F.Builder<A,B> setR1c2(float r1c2)
    Initializes the value for the `r1c2` attribute.
    Parameters:
      `r1c2` - The value for r1c2
    Returns:
      `this` builder for use in a chained invocation

  - ### setR2c0

    public final PMatrix3x3F.Builder<A,B> setR2c0(float r2c0)
    Initializes the value for the `r2c0` attribute.
    Parameters:
      `r2c0` - The value for r2c0
    Returns:
      `this` builder for use in a chained invocation

  - ### setR2c1

    public final PMatrix3x3F.Builder<A,B> setR2c1(float r2c1)
    Initializes the value for the `r2c1` attribute.
    Parameters:
      `r2c1` - The value for r2c1
    Returns:
      `this` builder for use in a chained invocation

  - ### setR2c2

    public final PMatrix3x3F.Builder<A,B> setR2c2(float r2c2)
    Initializes the value for the `r2c2` attribute.
    Parameters:
      `r2c2` - The value for r2c2
    Returns:
      `this` builder for use in a chained invocation

  - ### build

    public PMatrix3x3F<A,B> build()
    Builds a new `PMatrix3x3F`.
    Returns:
      An immutable instance of PMatrix3x3F
    Throws:
      `IllegalStateException` - if any required attributes are missing