Package pl.poznan.put.torsion
Class ImmutableTorsionAngleDelta
- java.lang.Object
-
- pl.poznan.put.torsion.TorsionAngleDelta
-
- pl.poznan.put.torsion.ImmutableTorsionAngleDelta
-
- All Implemented Interfaces:
DisplayableExportable
@ParametersAreNonnullByDefault @Generated("org.immutables.processor.ProxyProcessor") @Immutable public final class ImmutableTorsionAngleDelta extends TorsionAngleDelta
Immutable implementation ofTorsionAngleDelta.Use the builder to create immutable instances:
ImmutableTorsionAngleDelta.builder(). Use the static factory method to create immutable instances:ImmutableTorsionAngleDelta.of().
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classImmutableTorsionAngleDelta.BuilderBuilds instances of typeImmutableTorsionAngleDelta.-
Nested classes/interfaces inherited from class pl.poznan.put.torsion.TorsionAngleDelta
TorsionAngleDelta.State
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description MasterTorsionAngleTypeangleType()static ImmutableTorsionAngleDelta.Builderbuilder()Creates a builder forImmutableTorsionAngleDelta.static ImmutableTorsionAngleDeltacopyOf(TorsionAngleDelta instance)Creates an immutable copy of aTorsionAngleDeltavalue.Angledelta()booleanequals(Object another)This instance is equal to all instances ofImmutableTorsionAngleDeltathat have equal attribute values.inthashCode()Computes a hash code from attributes:angleType,state,delta,rangeDifference.static ImmutableTorsionAngleDeltaof(MasterTorsionAngleType angleType, TorsionAngleDelta.State state, Angle delta, RangeDifference rangeDifference)Construct a new immutableTorsionAngleDeltainstance.RangeDifferencerangeDifference()TorsionAngleDelta.Statestate()StringtoString()Prints the immutable valueTorsionAngleDeltawith attribute values.ImmutableTorsionAngleDeltawithAngleType(MasterTorsionAngleType value)Copy the current immutable object by setting a value for theangleTypeattribute.ImmutableTorsionAngleDeltawithDelta(Angle value)Copy the current immutable object by setting a value for thedeltaattribute.ImmutableTorsionAngleDeltawithRangeDifference(RangeDifference value)Copy the current immutable object by setting a value for therangeDifferenceattribute.ImmutableTorsionAngleDeltawithState(TorsionAngleDelta.State value)Copy the current immutable object by setting a value for thestateattribute.-
Methods inherited from class pl.poznan.put.torsion.TorsionAngleDelta
bothInvalidInstance, exportName, longDisplayName, shortDisplayName, subtractTorsionAngleValues, toString
-
-
-
-
Method Detail
-
angleType
public MasterTorsionAngleType angleType()
- Specified by:
angleTypein classTorsionAngleDelta- Returns:
- The type of torsion angle.
-
state
public TorsionAngleDelta.State state()
- Specified by:
statein classTorsionAngleDelta- Returns:
- The state of comparison depending on whether the inputs were valid or not.
-
delta
public Angle delta()
- Specified by:
deltain classTorsionAngleDelta- Returns:
- The actual result of subtraction.
-
rangeDifference
public RangeDifference rangeDifference()
- Specified by:
rangeDifferencein classTorsionAngleDelta- Returns:
- The difference in terms of ranges the angles belong to.
-
withAngleType
public final ImmutableTorsionAngleDelta withAngleType(MasterTorsionAngleType value)
Copy the current immutable object by setting a value for theangleTypeattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for angleType- Returns:
- A modified copy of the
thisobject
-
withState
public final ImmutableTorsionAngleDelta withState(TorsionAngleDelta.State value)
Copy the current immutable object by setting a value for thestateattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for state- Returns:
- A modified copy of the
thisobject
-
withDelta
public final ImmutableTorsionAngleDelta withDelta(Angle value)
Copy the current immutable object by setting a value for thedeltaattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for delta- Returns:
- A modified copy of the
thisobject
-
withRangeDifference
public final ImmutableTorsionAngleDelta withRangeDifference(RangeDifference value)
Copy the current immutable object by setting a value for therangeDifferenceattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for rangeDifference- Returns:
- A modified copy of the
thisobject
-
equals
public boolean equals(@Nullable Object another)
This instance is equal to all instances ofImmutableTorsionAngleDeltathat have equal attribute values.
-
hashCode
public int hashCode()
Computes a hash code from attributes:angleType,state,delta,rangeDifference.
-
toString
public String toString()
Prints the immutable valueTorsionAngleDeltawith attribute values.
-
of
public static ImmutableTorsionAngleDelta of(MasterTorsionAngleType angleType, TorsionAngleDelta.State state, Angle delta, RangeDifference rangeDifference)
Construct a new immutableTorsionAngleDeltainstance.- Parameters:
angleType- The value for theangleTypeattributestate- The value for thestateattributedelta- The value for thedeltaattributerangeDifference- The value for therangeDifferenceattribute- Returns:
- An immutable TorsionAngleDelta instance
-
copyOf
public static ImmutableTorsionAngleDelta copyOf(TorsionAngleDelta instance)
Creates an immutable copy of aTorsionAngleDeltavalue. 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 TorsionAngleDelta instance
-
builder
public static ImmutableTorsionAngleDelta.Builder builder()
Creates a builder forImmutableTorsionAngleDelta.ImmutableTorsionAngleDelta.builder() .angleType(pl.poznan.put.torsion.MasterTorsionAngleType) // requiredangleType.state(pl.poznan.put.torsion.TorsionAngleDelta.State) // requiredstate.delta(pl.poznan.put.circular.Angle) // requireddelta.rangeDifference(pl.poznan.put.torsion.range.RangeDifference) // requiredrangeDifference.build();- Returns:
- A new ImmutableTorsionAngleDelta builder
-
-