- java.lang.Object
-
- com.io7m.jranges.RangeHalfOpenD
-
- All Implemented Interfaces:
RangeHalfOpenDType
public final class RangeHalfOpenD extends java.lang.Object implements RangeHalfOpenDType
A half open (inclusive lower, exclusive upper) range withdoublecomponents.- Since:
- 4.0.0
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classRangeHalfOpenD.BuilderBuilds instances of typeRangeHalfOpenD.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static RangeHalfOpenD.Builderbuilder()Creates a builder forRangeHalfOpenD.static RangeHalfOpenDcopyOf(RangeHalfOpenDType instance)Creates an immutable copy of aRangeHalfOpenDTypevalue.booleanequals(java.lang.Object another)This instance is equal to all instances ofRangeHalfOpenDthat have equal attribute values.inthashCode()Computes a hash code from attributes:lower,upper.doublelower()static RangeHalfOpenDof(double lower, double upper)Construct a new immutableRangeHalfOpenDinstance.java.lang.StringtoString()Prints the immutable valueRangeHalfOpenDwith attribute values.doubleupper()RangeHalfOpenDwithLower(double value)Copy the current immutable object by setting a value for thelowerattribute.RangeHalfOpenDwithUpper(double 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.RangeHalfOpenDType
checkPreconditions, includesValue, interval, isIncludedIn, isIncludedIn
-
-
-
-
Method Detail
-
lower
public double lower()
- Specified by:
lowerin interfaceRangeHalfOpenDType- Returns:
- The lower bound of the inclusive range.
-
upper
public double upper()
- Specified by:
upperin interfaceRangeHalfOpenDType- Returns:
- The upper bound of the inclusive range.
-
withLower
public final RangeHalfOpenD withLower(double value)
Copy the current immutable object by setting a value for thelowerattribute. A value strict bits equality 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 RangeHalfOpenD withUpper(double value)
Copy the current immutable object by setting a value for theupperattribute. A value strict bits equality 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 ofRangeHalfOpenDthat 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 valueRangeHalfOpenDwith attribute values.- Overrides:
toStringin classjava.lang.Object- Returns:
- A string representation of the value
-
of
public static RangeHalfOpenD of(double lower, double upper)
Construct a new immutableRangeHalfOpenDinstance.- Parameters:
lower- The value for thelowerattributeupper- The value for theupperattribute- Returns:
- An immutable RangeHalfOpenD instance
-
copyOf
public static RangeHalfOpenD copyOf(RangeHalfOpenDType instance)
Creates an immutable copy of aRangeHalfOpenDTypevalue. 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 RangeHalfOpenD instance
-
builder
public static RangeHalfOpenD.Builder builder()
Creates a builder forRangeHalfOpenD.RangeHalfOpenD.builder() .setLower(double) // requiredlower.setUpper(double) // requiredupper.build();- Returns:
- A new RangeHalfOpenD builder
-
-