Class ImmutableFitnessSharing.Builder<T extends Comparable<T>>
java.lang.Object
net.bmahe.genetics4j.core.postevaluationprocess.ImmutableFitnessSharing.Builder<T>
- Enclosing class:
ImmutableFitnessSharing<T extends Comparable<T>>
@Generated(from="FitnessSharing",
generator="Immutables")
public static final class ImmutableFitnessSharing.Builder<T extends Comparable<T>>
extends Object
Builds instances of type
FitnessSharing.
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
FieldsModifier and TypeFieldDescriptionprivate BiFunction<Genotype, Genotype, Double> private static final longprivate static final longprivate static final longprivate longprivate BiFunction<Individual<T>, Double, T> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()Builds a newFitnessSharing.final ImmutableFitnessSharing.Builder<T> distance(BiFunction<Genotype, Genotype, Double> distance) Initializes the value for thedistanceattribute.private Stringfinal ImmutableFitnessSharing.Builder<T> from(FitnessSharing<T> instance) Fill a builder with attribute values from the providedFitnessSharinginstance.final ImmutableFitnessSharing.Builder<T> scaleFitness(BiFunction<Individual<T>, Double, T> scaleFitness) Initializes the value for thescaleFitnessattribute.final ImmutableFitnessSharing.Builder<T> Initializes the value for thesharingattribute.
-
Field Details
-
INIT_BIT_DISTANCE
private static final long INIT_BIT_DISTANCE- See Also:
-
INIT_BIT_SHARING
private static final long INIT_BIT_SHARING- See Also:
-
INIT_BIT_SCALE_FITNESS
private static final long INIT_BIT_SCALE_FITNESS- See Also:
-
initBits
private long initBits -
distance
-
sharing
-
scaleFitness
-
-
Constructor Details
-
Builder
private Builder()
-
-
Method Details
-
from
Fill a builder with attribute values from the providedFitnessSharinginstance. 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:
thisbuilder for use in a chained invocation
-
distance
public final ImmutableFitnessSharing.Builder<T> distance(BiFunction<Genotype, Genotype, Double> distance) Initializes the value for thedistanceattribute.- Parameters:
distance- The value for distance- Returns:
thisbuilder for use in a chained invocation
-
sharing
Initializes the value for thesharingattribute.- Parameters:
sharing- The value for sharing- Returns:
thisbuilder for use in a chained invocation
-
scaleFitness
public final ImmutableFitnessSharing.Builder<T> scaleFitness(BiFunction<Individual<T>, Double, T> scaleFitness) Initializes the value for thescaleFitnessattribute.- Parameters:
scaleFitness- The value for scaleFitness- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newFitnessSharing.- Returns:
- An immutable instance of FitnessSharing
- Throws:
IllegalStateException- if any required attributes are missing
-
formatRequiredAttributesMessage
-