pub struct TupleMutatorWrapper<T, M, TupleKind>where
T: Clone + 'static + TupleStructure<TupleKind>,
TupleKind: RefTypes,
M: TupleMutator<T, TupleKind>,{
pub mutator: M,
/* private fields */
}
Fields§
§mutator: M
Implementations§
Source§impl<T, M, TupleKind> TupleMutatorWrapper<T, M, TupleKind>where
T: Clone + 'static + TupleStructure<TupleKind>,
TupleKind: RefTypes,
M: TupleMutator<T, TupleKind>,
impl<T, M, TupleKind> TupleMutatorWrapper<T, M, TupleKind>where
T: Clone + 'static + TupleStructure<TupleKind>,
TupleKind: RefTypes,
M: TupleMutator<T, TupleKind>,
Trait Implementations§
Source§impl<T, M, TupleKind> Default for TupleMutatorWrapper<T, M, TupleKind>where
T: Clone + 'static + TupleStructure<TupleKind>,
TupleKind: RefTypes,
M: TupleMutator<T, TupleKind> + Default,
impl<T, M, TupleKind> Default for TupleMutatorWrapper<T, M, TupleKind>where
T: Clone + 'static + TupleStructure<TupleKind>,
TupleKind: RefTypes,
M: TupleMutator<T, TupleKind> + Default,
Source§impl<T, M, TupleKind> Mutator<T> for TupleMutatorWrapper<T, M, TupleKind>where
T: Clone + 'static + TupleStructure<TupleKind>,
TupleKind: RefTypes,
M: TupleMutator<T, TupleKind>,
impl<T, M, TupleKind> Mutator<T> for TupleMutatorWrapper<T, M, TupleKind>where
T: Clone + 'static + TupleStructure<TupleKind>,
TupleKind: RefTypes,
M: TupleMutator<T, TupleKind>,
type Cache = <M as TupleMutator<T, TupleKind>>::Cache
type MutationStep = <M as TupleMutator<T, TupleKind>>::MutationStep
type ArbitraryStep = <M as TupleMutator<T, TupleKind>>::ArbitraryStep
type UnmutateToken = <M as TupleMutator<T, TupleKind>>::UnmutateToken
fn complexity(&self, value: &T, cache: &Self::Cache) -> f64
Source§fn cache_from_value(&self, value: &T) -> Self::Cache
fn cache_from_value(&self, value: &T) -> Self::Cache
Compute the cache for the given value
Source§fn initial_step_from_value(&self, value: &T) -> Self::MutationStep
fn initial_step_from_value(&self, value: &T) -> Self::MutationStep
Compute the initial mutation step for the given value
Source§fn max_complexity(&self) -> f64
fn max_complexity(&self) -> f64
The maximum complexity of an input of this type
Source§fn min_complexity(&self) -> f64
fn min_complexity(&self) -> f64
The minimum complexity of an input of this type
fn ordered_arbitrary( &self, step: &mut Self::ArbitraryStep, max_cplx: f64, ) -> Option<(T, Self::Cache)>
fn random_arbitrary(&self, max_cplx: f64) -> (T, Self::Cache)
fn ordered_mutate( &self, value: &mut T, cache: &mut Self::Cache, step: &mut Self::MutationStep, max_cplx: f64, ) -> Option<Self::UnmutateToken>
fn random_mutate( &self, value: &mut T, cache: &mut Self::Cache, max_cplx: f64, ) -> Self::UnmutateToken
fn unmutate( &self, value: &mut T, cache: &mut Self::Cache, t: Self::UnmutateToken, )
Auto Trait Implementations§
impl<T, M, TupleKind> Freeze for TupleMutatorWrapper<T, M, TupleKind>where
M: Freeze,
impl<T, M, TupleKind> RefUnwindSafe for TupleMutatorWrapper<T, M, TupleKind>
impl<T, M, TupleKind> Send for TupleMutatorWrapper<T, M, TupleKind>
impl<T, M, TupleKind> Sync for TupleMutatorWrapper<T, M, TupleKind>
impl<T, M, TupleKind> Unpin for TupleMutatorWrapper<T, M, TupleKind>
impl<T, M, TupleKind> UnwindSafe for TupleMutatorWrapper<T, M, TupleKind>
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