Trait MutatedTransform

Source
pub trait MutatedTransform<I, S>: Sized {
    type Post: MutatedTransformPost<S>;

    // Required methods
    fn try_transform_from(
        base: &mut Testcase<I>,
        state: &S,
    ) -> Result<Self, Error>;
    fn try_transform_into(self, state: &S) -> Result<(I, Self::Post), Error>;
}
Expand description

A type which may both be transformed from and into a given input type, used to perform mutations over inputs which are not necessarily performable on the underlying type

This trait is implemented such that all testcases inherently transform to their inputs, should the input be cloneable.

Required Associated Types§

Source

type Post: MutatedTransformPost<S>

Type indicating actions to be taken after the post-transformation input is executed

Required Methods§

Source

fn try_transform_from(base: &mut Testcase<I>, state: &S) -> Result<Self, Error>

Transform the provided testcase into this type

Source

fn try_transform_into(self, state: &S) -> Result<(I, Self::Post), Error>

Transform this instance back into the original input type

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§