Struct libafl::executors::shadow::ShadowExecutor [−][src]
pub struct ShadowExecutor<E, I, S, SOT> { /* fields omitted */ }
Expand description
A ShadowExecutor
wraps an executor and a set of shadow observers
Implementations
Create a new ShadowExecutor
, wrapping the given executor
.
Trait Implementations
impl<E, EM, I, S, SOT, Z> Executor<EM, I, S, Z> for ShadowExecutor<E, I, S, SOT> where
E: Executor<EM, I, S, Z>,
I: Input,
SOT: ObserversTuple<I, S>,
impl<E, EM, I, S, SOT, Z> Executor<EM, I, S, Z> for ShadowExecutor<E, I, S, SOT> where
E: Executor<EM, I, S, Z>,
I: Input,
SOT: ObserversTuple<I, S>,
impl<E, I, OT, S, SOT> HasObservers<I, OT, S> for ShadowExecutor<E, I, S, SOT> where
E: HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
SOT: ObserversTuple<I, S>,
impl<E, I, OT, S, SOT> HasObservers<I, OT, S> for ShadowExecutor<E, I, S, SOT> where
E: HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
SOT: ObserversTuple<I, S>,
impl<C, E, EM, I, OT, S, SOT, Z> Stage<ShadowExecutor<E, I, S, SOT>, EM, S, Z> for ShadowTracingStage<C, E, EM, I, OT, S, SOT, Z> where
I: Input,
C: Corpus<I>,
E: Executor<EM, I, S, Z> + HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
SOT: ObserversTuple<I, S>,
S: HasClientPerfStats + HasExecutions + HasCorpus<C, I>,
impl<C, E, EM, I, OT, S, SOT, Z> Stage<ShadowExecutor<E, I, S, SOT>, EM, S, Z> for ShadowTracingStage<C, E, EM, I, OT, S, SOT, Z> where
I: Input,
C: Corpus<I>,
E: Executor<EM, I, S, Z> + HasObservers<I, OT, S>,
OT: ObserversTuple<I, S>,
SOT: ObserversTuple<I, S>,
S: HasClientPerfStats + HasExecutions + HasCorpus<C, I>,
Auto Trait Implementations
impl<E, I, S, SOT> RefUnwindSafe for ShadowExecutor<E, I, S, SOT> where
E: RefUnwindSafe,
I: RefUnwindSafe,
S: RefUnwindSafe,
SOT: RefUnwindSafe,
impl<E, I, S, SOT> Send for ShadowExecutor<E, I, S, SOT> where
E: Send,
I: Send,
S: Send,
SOT: Send,
impl<E, I, S, SOT> Sync for ShadowExecutor<E, I, S, SOT> where
E: Sync,
I: Sync,
S: Sync,
SOT: Sync,
impl<E, I, S, SOT> Unpin for ShadowExecutor<E, I, S, SOT> where
E: Unpin,
I: Unpin,
S: Unpin,
SOT: Unpin,
impl<E, I, S, SOT> UnwindSafe for ShadowExecutor<E, I, S, SOT> where
E: UnwindSafe,
I: UnwindSafe,
S: UnwindSafe,
SOT: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
type PreprendResult = Tail
type PreprendResult = Tail
The Resulting TupleList
, of an Prepend::prepend()
call,
including the prepended entry. Read more
type Output = T
type Output = T
Should always be Self