Class PVolumeSizeL<S>
java.lang.Object
com.io7m.jregions.core.parameterized.sizes.PVolumeSizeL<S>
- Type Parameters:
S
- A phantom type parameter indicating the coordinate space of the volume
- All Implemented Interfaces:
PVolumeSizeLType<S>
,VolumeSizeValuesLType
The size of a volume with
long
coordinates.-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic <S> PVolumeSizeL.Builder<S>
builder()
Creates a builder forPVolumeSizeL
.static <S> PVolumeSizeL<S>
copyOf
(PVolumeSizeLType<S> instance) Creates an immutable copy of aPVolumeSizeLType
value.boolean
This instance is equal to all instances ofPVolumeSizeL
that have equal attribute values.int
hashCode()
Computes a hash code from attributes:sizeX
,sizeY
,sizeZ
.static <S> PVolumeSizeL<S>
of
(long sizeX, long sizeY, long sizeZ) Construct a new immutablePVolumeSizeL
instance.long
sizeX()
long
sizeY()
long
sizeZ()
toString()
Prints the immutable valuePVolumeSizeL
with attribute values.final PVolumeSizeL<S>
withSizeX
(long value) Copy the current immutable object by setting a value for thesizeX
attribute.final PVolumeSizeL<S>
withSizeY
(long value) Copy the current immutable object by setting a value for thesizeY
attribute.final PVolumeSizeL<S>
withSizeZ
(long value) Copy the current immutable object by setting a value for thesizeZ
attribute.
-
Method Details
-
sizeX
public long sizeX()- Specified by:
sizeX
in interfacePVolumeSizeLType<S>
- Specified by:
sizeX
in interfaceVolumeSizeValuesLType
- Returns:
- The value of the
sizeX
attribute
-
sizeY
public long sizeY()- Specified by:
sizeY
in interfacePVolumeSizeLType<S>
- Specified by:
sizeY
in interfaceVolumeSizeValuesLType
- Returns:
- The value of the
sizeY
attribute
-
sizeZ
public long sizeZ()- Specified by:
sizeZ
in interfacePVolumeSizeLType<S>
- Specified by:
sizeZ
in interfaceVolumeSizeValuesLType
- Returns:
- The value of the
sizeZ
attribute
-
withSizeX
Copy the current immutable object by setting a value for thesizeX
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for sizeX- Returns:
- A modified copy of the
this
object
-
withSizeY
Copy the current immutable object by setting a value for thesizeY
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for sizeY- Returns:
- A modified copy of the
this
object
-
withSizeZ
Copy the current immutable object by setting a value for thesizeZ
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for sizeZ- Returns:
- A modified copy of the
this
object
-
equals
This instance is equal to all instances ofPVolumeSizeL
that have equal attribute values. -
hashCode
public int hashCode()Computes a hash code from attributes:sizeX
,sizeY
,sizeZ
. -
toString
Prints the immutable valuePVolumeSizeL
with attribute values. -
of
Construct a new immutablePVolumeSizeL
instance.- Type Parameters:
S
- generic parameter S- Parameters:
sizeX
- The value for thesizeX
attributesizeY
- The value for thesizeY
attributesizeZ
- The value for thesizeZ
attribute- Returns:
- An immutable PVolumeSizeL instance
-
copyOf
Creates an immutable copy of aPVolumeSizeLType
value. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.- Type Parameters:
S
- generic parameter S- Parameters:
instance
- The instance to copy- Returns:
- A copied immutable PVolumeSizeL instance
-
builder
Creates a builder forPVolumeSizeL
.PVolumeSizeL.<S>builder() .setSizeX(long) // required
sizeX
.setSizeY(long) // requiredsizeY
.setSizeZ(long) // requiredsizeZ
.build();- Type Parameters:
S
- generic parameter S- Returns:
- A new PVolumeSizeL builder
-