pub struct Group<T, FI, SI, RI, const N: usize, const R: usize>where
T: Clone,
FI: EachCrateIndividual<Item = T> + FitnessIndividualTrait,
SI: EachCrateIndividual<Item = T> + SelectorIndividualTrait<R>,
RI: EachCrateIndividual<Item = T> + ReplenisherIndividualTrait<N, R>,{ /* private fields */ }
Trait Implementations§
Source§impl<T, FI, SI, RI, const N: usize, const R: usize> GroupTrait<T, N, R> for Group<T, FI, SI, RI, N, R>where
T: Clone + Debug,
FI: EachCrateIndividual<Item = T> + FitnessIndividualTrait,
SI: EachCrateIndividual<Item = T> + SelectorIndividualTrait<R>,
RI: EachCrateIndividual<Item = T> + ReplenisherIndividualTrait<N, R>,
impl<T, FI, SI, RI, const N: usize, const R: usize> GroupTrait<T, N, R> for Group<T, FI, SI, RI, N, R>where
T: Clone + Debug,
FI: EachCrateIndividual<Item = T> + FitnessIndividualTrait,
SI: EachCrateIndividual<Item = T> + SelectorIndividualTrait<R>,
RI: EachCrateIndividual<Item = T> + ReplenisherIndividualTrait<N, R>,
Source§type Err = GenerationError
type Err = GenerationError
An error of cycle
Source§fn one_cycle_out<W>(&mut self, out: &mut W) -> Result<(), Self::Err>where
W: Write,
fn one_cycle_out<W>(&mut self, out: &mut W) -> Result<(), Self::Err>where
W: Write,
Run one cycle with outputing and update individuals. Read more
Source§fn iter<'a>(&'a self) -> impl Iterator<Item = &'a Individual<T>>where
T: 'a,
fn iter<'a>(&'a self) -> impl Iterator<Item = &'a Individual<T>>where
T: 'a,
Create an iterator of indivuduals. Read more
Source§fn init<I>() -> Selfwhere
I: InitializerTrait<T, N>,
Self: Sized,
fn init<I>() -> Selfwhere
I: InitializerTrait<T, N>,
Self: Sized,
Source§fn clone_values(&self) -> Vec<T>where
T: Clone,
fn clone_values(&self) -> Vec<T>where
T: Clone,
Clone individuals which are contained by this.
Source§impl<'a, T, FI, SI, RI, const N: usize, const R: usize> IntoIterator for &'a Group<T, FI, SI, RI, N, R>where
T: Clone,
FI: EachCrateIndividual<Item = T> + FitnessIndividualTrait,
SI: EachCrateIndividual<Item = T> + SelectorIndividualTrait<R>,
RI: EachCrateIndividual<Item = T> + ReplenisherIndividualTrait<N, R>,
impl<'a, T, FI, SI, RI, const N: usize, const R: usize> IntoIterator for &'a Group<T, FI, SI, RI, N, R>where
T: Clone,
FI: EachCrateIndividual<Item = T> + FitnessIndividualTrait,
SI: EachCrateIndividual<Item = T> + SelectorIndividualTrait<R>,
RI: EachCrateIndividual<Item = T> + ReplenisherIndividualTrait<N, R>,
Source§type IntoIter = Iter<'a, GenerationIndividual<T, FI, SI, RI, N, R>>
type IntoIter = Iter<'a, GenerationIndividual<T, FI, SI, RI, N, R>>
Which kind of iterator are we turning this into?
Source§type Item = &'a GenerationIndividual<T, FI, SI, RI, N, R>
type Item = &'a GenerationIndividual<T, FI, SI, RI, N, R>
The type of the elements being iterated over.
Auto Trait Implementations§
impl<T, FI, SI, RI, const N: usize, const R: usize> Freeze for Group<T, FI, SI, RI, N, R>
impl<T, FI, SI, RI, const N: usize, const R: usize> !RefUnwindSafe for Group<T, FI, SI, RI, N, R>
impl<T, FI, SI, RI, const N: usize, const R: usize> !Send for Group<T, FI, SI, RI, N, R>
impl<T, FI, SI, RI, const N: usize, const R: usize> !Sync for Group<T, FI, SI, RI, N, R>
impl<T, FI, SI, RI, const N: usize, const R: usize> Unpin for Group<T, FI, SI, RI, N, R>
impl<T, FI, SI, RI, const N: usize, const R: usize> !UnwindSafe for Group<T, FI, SI, RI, N, R>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more