pub trait EvaluatorObservers<OT>: UsesState + Sized {
    fn evaluate_input_with_observers<E, EM>(
        &mut self,
        state: &mut Self::State,
        executor: &mut E,
        manager: &mut EM,
        input: <Self::State as UsesInput>::Input,
        send_events: bool
    ) -> Result<(ExecuteInputResult, Option<CorpusId>), Error>
    where
        E: Executor<EM, Self> + HasObservers<Observers = OT, State = Self::State>,
        EM: EventFirer<State = Self::State>
; }
Expand description

Evaluate an input modifying the state of the fuzzer

Required Methods§

source

fn evaluate_input_with_observers<E, EM>(
    &mut self,
    state: &mut Self::State,
    executor: &mut E,
    manager: &mut EM,
    input: <Self::State as UsesInput>::Input,
    send_events: bool
) -> Result<(ExecuteInputResult, Option<CorpusId>), Error>where
    E: Executor<EM, Self> + HasObservers<Observers = OT, State = Self::State>,
    EM: EventFirer<State = Self::State>,

Runs the input and triggers observers and feedback, returns if is interesting an (option) the index of the new crate::corpus::Testcase in the crate::corpus::Corpus

Implementors§

source§

impl<CS, F, OF, OT> EvaluatorObservers<OT> for StdFuzzer<CS, F, OF, OT>where
    CS: Scheduler,
    OT: ObserversTuple<CS::State> + Serialize + DeserializeOwned,
    F: Feedback<CS::State>,
    OF: Feedback<CS::State>,
    CS::State: HasCorpus + HasSolutions + HasClientPerfMonitor + HasExecutions,