Trait libafl::mutators::MutatorsTuple [−][src]
pub trait MutatorsTuple<I, S>: HasLen where
I: Input, { fn mutate_all(
&mut self,
state: &mut S,
input: &mut I,
stage_idx: i32
) -> Result<MutationResult, Error>; fn post_exec_all(
&mut self,
state: &mut S,
stage_idx: i32,
corpus_idx: Option<usize>
) -> Result<(), Error>; fn get_and_mutate(
&mut self,
index: usize,
state: &mut S,
input: &mut I,
stage_idx: i32
) -> Result<MutationResult, Error>; fn get_and_post_exec(
&mut self,
index: usize,
state: &mut S,
stage_idx: i32,
corpus_idx: Option<usize>
) -> Result<(), Error>; }
Expand description
A Tuple
of Mutators
that can execute multiple Mutators
in a row.
Required methods
fn mutate_all(
&mut self,
state: &mut S,
input: &mut I,
stage_idx: i32
) -> Result<MutationResult, Error>
fn mutate_all(
&mut self,
state: &mut S,
input: &mut I,
stage_idx: i32
) -> Result<MutationResult, Error>
Runs the mutate
function on all Mutators
in this Tuple
.
Runs the post_exec
function on all Mutators
in this Tuple
.
fn get_and_mutate(
&mut self,
index: usize,
state: &mut S,
input: &mut I,
stage_idx: i32
) -> Result<MutationResult, Error>
fn get_and_mutate(
&mut self,
index: usize,
state: &mut S,
input: &mut I,
stage_idx: i32
) -> Result<MutationResult, Error>
Gets the Mutator
at the given index and runs the mutate
function on it.
Implementations on Foreign Types
fn mutate_all(
&mut self,
_state: &mut S,
_input: &mut I,
_stage_idx: i32
) -> Result<MutationResult, Error>
fn post_exec_all(
&mut self,
_state: &mut S,
_stage_idx: i32,
_corpus_idx: Option<usize>
) -> Result<(), Error>
fn get_and_mutate(
&mut self,
_index: usize,
_state: &mut S,
_input: &mut I,
_stage_idx: i32
) -> Result<MutationResult, Error>
impl<Head, Tail, I, S> MutatorsTuple<I, S> for (Head, Tail) where
Head: Mutator<I, S> + Named,
Tail: MutatorsTuple<I, S>,
I: Input,
impl<Head, Tail, I, S> MutatorsTuple<I, S> for (Head, Tail) where
Head: Mutator<I, S> + Named,
Tail: MutatorsTuple<I, S>,
I: Input,
fn mutate_all(
&mut self,
state: &mut S,
input: &mut I,
stage_idx: i32
) -> Result<MutationResult, Error>
fn post_exec_all(
&mut self,
state: &mut S,
stage_idx: i32,
corpus_idx: Option<usize>
) -> Result<(), Error>
fn get_and_mutate(
&mut self,
index: usize,
state: &mut S,
input: &mut I,
stage_idx: i32
) -> Result<MutationResult, Error>