Class ImmutableIntChromosomeSpec.Builder
java.lang.Object
net.bmahe.genetics4j.core.spec.chromosome.ImmutableIntChromosomeSpec.Builder
- Direct Known Subclasses:
IntChromosomeSpec.Builder
- Enclosing class:
ImmutableIntChromosomeSpec
Builds instances of type
ImmutableIntChromosomeSpec
.
Initialize attributes and then invoke the build()
method to create an
immutable instance.
Builder
is not thread-safe and generally should not be stored in a field or collection,
but instead used immediately to create instances.
-
Field Summary
Modifier and TypeFieldDescriptionprivate static final long
private static final long
private static final long
private long
private int
private int
private int
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionbuild()
Builds a newImmutableIntChromosomeSpec
.private String
from
(IntChromosomeSpec instance) Fill a builder with attribute values from the providedIntChromosomeSpec
instance.maxValue
(int maxValue) Initializes the value for themaxValue
attribute.minValue
(int minValue) Initializes the value for theminValue
attribute.size
(int size) Initializes the value for thesize
attribute.
-
Field Details
-
INIT_BIT_SIZE
private static final long INIT_BIT_SIZE- See Also:
-
INIT_BIT_MIN_VALUE
private static final long INIT_BIT_MIN_VALUE- See Also:
-
INIT_BIT_MAX_VALUE
private static final long INIT_BIT_MAX_VALUE- See Also:
-
initBits
private long initBits -
size
private int size -
minValue
private int minValue -
maxValue
private int maxValue
-
-
Constructor Details
-
Builder
public Builder()Creates a builder forImmutableIntChromosomeSpec
instances.new IntChromosomeSpec.Builder() .size(int) // required
size
.minValue(int) // requiredminValue
.maxValue(int) // requiredmaxValue
.build();
-
-
Method Details
-
from
Fill a builder with attribute values from the providedIntChromosomeSpec
instance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values.- Parameters:
instance
- The instance from which to copy values- Returns:
this
builder for use in a chained invocation
-
size
Initializes the value for thesize
attribute.- Parameters:
size
- The value for size- Returns:
this
builder for use in a chained invocation
-
minValue
Initializes the value for theminValue
attribute.- Parameters:
minValue
- The value for minValue- Returns:
this
builder for use in a chained invocation
-
maxValue
Initializes the value for themaxValue
attribute.- Parameters:
maxValue
- The value for maxValue- Returns:
this
builder for use in a chained invocation
-
build
Builds a newImmutableIntChromosomeSpec
.- Returns:
- An immutable instance of IntChromosomeSpec
- Throws:
IllegalStateException
- if any required attributes are missing
-
formatRequiredAttributesMessage
-