Struct libafl::feedbacks::map::ReachabilityFeedback
source · pub struct ReachabilityFeedback<O, S> { /* private fields */ }
Expand description
A ReachabilityFeedback
reports if a target has been reached.
Implementations§
source§impl<O, S> ReachabilityFeedback<O, S>where
for<'it> O: MapObserver<Entry = usize> + AsIter<'it, Item = usize>,
impl<O, S> ReachabilityFeedback<O, S>where
for<'it> O: MapObserver<Entry = usize> + AsIter<'it, Item = usize>,
sourcepub fn new(map_observer: &O) -> Self
pub fn new(map_observer: &O) -> Self
Creates a new ReachabilityFeedback
for a MapObserver
.
sourcepub fn with_name(name: &'static str) -> Self
pub fn with_name(name: &'static str) -> Self
Creates a new ReachabilityFeedback
for a MapObserver
with the given name
.
Trait Implementations§
source§impl<O: Clone, S: Clone> Clone for ReachabilityFeedback<O, S>
impl<O: Clone, S: Clone> Clone for ReachabilityFeedback<O, S>
source§fn clone(&self) -> ReachabilityFeedback<O, S>
fn clone(&self) -> ReachabilityFeedback<O, S>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<O, S> Feedback<S> for ReachabilityFeedback<O, S>where
S: UsesInput + Debug + HasClientPerfMonitor,
for<'it> O: MapObserver<Entry = usize> + AsIter<'it, Item = usize>,
impl<O, S> Feedback<S> for ReachabilityFeedback<O, S>where
S: UsesInput + Debug + HasClientPerfMonitor,
for<'it> O: MapObserver<Entry = usize> + AsIter<'it, Item = usize>,
source§fn is_interesting<EM, OT>(
&mut self,
_state: &mut S,
_manager: &mut EM,
_input: &<S as UsesInput>::Input,
observers: &OT,
_exit_kind: &ExitKind
) -> Result<bool, Error>where
EM: EventFirer<State = S>,
OT: ObserversTuple<S>,
fn is_interesting<EM, OT>(
&mut self,
_state: &mut S,
_manager: &mut EM,
_input: &<S as UsesInput>::Input,
observers: &OT,
_exit_kind: &ExitKind
) -> Result<bool, Error>where
EM: EventFirer<State = S>,
OT: ObserversTuple<S>,
is_interesting
return if an input is worth the addition to the corpussource§fn append_metadata(
&mut self,
_state: &mut S,
testcase: &mut Testcase<<S as UsesInput>::Input>
) -> Result<(), Error>
fn append_metadata(
&mut self,
_state: &mut S,
testcase: &mut Testcase<<S as UsesInput>::Input>
) -> Result<(), Error>
Append to the testcase the generated metadata in case of a new corpus item
Auto Trait Implementations§
impl<O, S> RefUnwindSafe for ReachabilityFeedback<O, S>where
O: RefUnwindSafe,
S: RefUnwindSafe,
impl<O, S> Send for ReachabilityFeedback<O, S>where
O: Send,
S: Send,
impl<O, S> Sync for ReachabilityFeedback<O, S>where
O: Sync,
S: Sync,
impl<O, S> Unpin for ReachabilityFeedback<O, S>where
O: Unpin,
S: Unpin,
impl<O, S> UnwindSafe for ReachabilityFeedback<O, S>where
O: UnwindSafe,
S: UnwindSafe,
Blanket Implementations§
source§impl<Tail, T> Prepend<T> for Tail
impl<Tail, T> Prepend<T> for Tail
§type PreprendResult = Tail
type PreprendResult = Tail
The Resulting
TupleList
, of an Prepend::prepend()
call,
including the prepended entry.source§fn prepend(self, value: T) -> (T, <Tail as Prepend<T>>::PreprendResult)
fn prepend(self, value: T) -> (T, <Tail as Prepend<T>>::PreprendResult)
Prepend a value to this tuple, returning a new tuple with prepended value.