Package com.io7m.jranges
Class RangeHalfOpenI
java.lang.Object
com.io7m.jranges.RangeHalfOpenI
- All Implemented Interfaces:
RangeHalfOpenIType
A half open (inclusive lower, exclusive upper) range with
int
components.- Since:
- 4.0.0
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic RangeHalfOpenI.Builder
builder()
Creates a builder forRangeHalfOpenI
.static RangeHalfOpenI
copyOf
(RangeHalfOpenIType instance) Creates an immutable copy of aRangeHalfOpenIType
value.boolean
This instance is equal to all instances ofRangeHalfOpenI
that have equal attribute values.int
hashCode()
Computes a hash code from attributes:lower
,upper
.int
lower()
static RangeHalfOpenI
of
(int lower, int upper) Construct a new immutableRangeHalfOpenI
instance.toString()
Prints the immutable valueRangeHalfOpenI
with attribute values.int
upper()
final RangeHalfOpenI
withLower
(int value) Copy the current immutable object by setting a value for thelower
attribute.final RangeHalfOpenI
withUpper
(int value) Copy the current immutable object by setting a value for theupper
attribute.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.io7m.jranges.RangeHalfOpenIType
checkPreconditions, includesValue, interval, isIncludedIn, isIncludedIn
-
Method Details
-
lower
public int lower()- Specified by:
lower
in interfaceRangeHalfOpenIType
- Returns:
- The lower bound of the inclusive range.
-
upper
public int upper()- Specified by:
upper
in interfaceRangeHalfOpenIType
- Returns:
- The upper bound of the inclusive range.
-
withLower
Copy the current immutable object by setting a value for thelower
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for lower- Returns:
- A modified copy of the
this
object
-
withUpper
Copy the current immutable object by setting a value for theupper
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for upper- Returns:
- A modified copy of the
this
object
-
equals
This instance is equal to all instances ofRangeHalfOpenI
that have equal attribute values. -
hashCode
public int hashCode()Computes a hash code from attributes:lower
,upper
. -
toString
Prints the immutable valueRangeHalfOpenI
with attribute values. -
of
Construct a new immutableRangeHalfOpenI
instance.- Parameters:
lower
- The value for thelower
attributeupper
- The value for theupper
attribute- Returns:
- An immutable RangeHalfOpenI instance
-
copyOf
Creates an immutable copy of aRangeHalfOpenIType
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 RangeHalfOpenI instance
-
builder
Creates a builder forRangeHalfOpenI
.RangeHalfOpenI.builder() .setLower(int) // required
lower
.setUpper(int) // requiredupper
.build();- Returns:
- A new RangeHalfOpenI builder
-