- java.lang.Object
-
- com.io7m.jranges.RangeInclusiveB
-
- All Implemented Interfaces:
RangeInclusiveBType
public final class RangeInclusiveB extends java.lang.Object implements RangeInclusiveBType
An inclusive range withBigIntegercomponents.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classRangeInclusiveB.BuilderBuilds instances of typeRangeInclusiveB.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static RangeInclusiveB.Builderbuilder()Creates a builder forRangeInclusiveB.static RangeInclusiveBcopyOf(RangeInclusiveBType instance)Creates an immutable copy of aRangeInclusiveBTypevalue.booleanequals(java.lang.Object another)This instance is equal to all instances ofRangeInclusiveBthat have equal attribute values.inthashCode()Computes a hash code from attributes:lower,upper.java.math.BigIntegerlower()static RangeInclusiveBof(java.math.BigInteger lower, java.math.BigInteger upper)Construct a new immutableRangeInclusiveBinstance.java.lang.StringtoString()Prints the immutable valueRangeInclusiveBwith attribute values.java.math.BigIntegerupper()RangeInclusiveBwithLower(java.math.BigInteger value)Copy the current immutable object by setting a value for thelowerattribute.RangeInclusiveBwithUpper(java.math.BigInteger value)Copy the current immutable object by setting a value for theupperattribute.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.io7m.jranges.RangeInclusiveBType
checkPreconditions, includesValue, interval, isIncludedIn
-
-
-
-
Method Detail
-
lower
public java.math.BigInteger lower()
- Specified by:
lowerin interfaceRangeInclusiveBType- Returns:
- The lower bound of the inclusive range.
-
upper
public java.math.BigInteger upper()
- Specified by:
upperin interfaceRangeInclusiveBType- Returns:
- The upper bound of the inclusive range.
-
withLower
public final RangeInclusiveB withLower(java.math.BigInteger value)
Copy the current immutable object by setting a value for thelowerattribute. An equals check used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for lower- Returns:
- A modified copy of the
thisobject
-
withUpper
public final RangeInclusiveB withUpper(java.math.BigInteger value)
Copy the current immutable object by setting a value for theupperattribute. An equals check used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for upper- Returns:
- A modified copy of the
thisobject
-
equals
public boolean equals(java.lang.Object another)
This instance is equal to all instances ofRangeInclusiveBthat have equal attribute values.- Overrides:
equalsin classjava.lang.Object- Returns:
trueifthisis equal toanotherinstance
-
hashCode
public int hashCode()
Computes a hash code from attributes:lower,upper.- Overrides:
hashCodein classjava.lang.Object- Returns:
- hashCode value
-
toString
public java.lang.String toString()
Prints the immutable valueRangeInclusiveBwith attribute values.- Overrides:
toStringin classjava.lang.Object- Returns:
- A string representation of the value
-
of
public static RangeInclusiveB of(java.math.BigInteger lower, java.math.BigInteger upper)
Construct a new immutableRangeInclusiveBinstance.- Parameters:
lower- The value for thelowerattributeupper- The value for theupperattribute- Returns:
- An immutable RangeInclusiveB instance
-
copyOf
public static RangeInclusiveB copyOf(RangeInclusiveBType instance)
Creates an immutable copy of aRangeInclusiveBTypevalue. 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 RangeInclusiveB instance
-
builder
public static RangeInclusiveB.Builder builder()
Creates a builder forRangeInclusiveB.RangeInclusiveB.builder() .setLower(java.math.BigInteger) // requiredlower.setUpper(java.math.BigInteger) // requiredupper.build();- Returns:
- A new RangeInclusiveB builder
-
-