Struct butterfly_fuzz::GraphvizMonitor
source · [−]pub struct GraphvizMonitor<M> where
M: Monitor, { /* private fields */ }Expand description
A monitor that periodically outputs a DOT representation of the state graph.
Only available with feature: graphviz
If there are multiple fuzzer instances this monitor writes the state graph of each instance to the file separated by linebreaks.
Example
// Writes every 60 seconds into stategraph.dot
let monitor = GraphvizMonitor::new(
StateMonitor::new(),
"stategraph.dot",
60,
);Implementations
sourceimpl<M> GraphvizMonitor<M> where
M: Monitor,
impl<M> GraphvizMonitor<M> where
M: Monitor,
Trait Implementations
sourceimpl<M: Clone> Clone for GraphvizMonitor<M> where
M: Monitor,
impl<M: Clone> Clone for GraphvizMonitor<M> where
M: Monitor,
sourcefn clone(&self) -> GraphvizMonitor<M>
fn clone(&self) -> GraphvizMonitor<M>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more
sourceimpl<M: Debug> Debug for GraphvizMonitor<M> where
M: Monitor,
impl<M: Debug> Debug for GraphvizMonitor<M> where
M: Monitor,
sourceimpl<M> Monitor for GraphvizMonitor<M> where
M: Monitor,
impl<M> Monitor for GraphvizMonitor<M> where
M: Monitor,
sourcefn client_stats_mut(&mut self) -> &mut Vec<ClientStats>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
fn client_stats_mut(&mut self) -> &mut Vec<ClientStats>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
The client monitor (mutable)
sourcefn client_stats(&self) -> &[ClientStats]
fn client_stats(&self) -> &[ClientStats]
The client monitor
sourcefn start_time(&mut self) -> Duration
fn start_time(&mut self) -> Duration
Creation time
sourcefn corpus_size(&self) -> u64
fn corpus_size(&self) -> u64
Amount of elements in the corpus (combined for all children)
sourcefn objective_size(&self) -> u64
fn objective_size(&self) -> u64
Amount of elements in the objectives (combined for all children)
sourcefn total_execs(&mut self) -> u64
fn total_execs(&mut self) -> u64
Total executions
sourcefn execs_per_sec(&mut self) -> u64
fn execs_per_sec(&mut self) -> u64
Executions per second
sourcefn client_stats_mut_for(&mut self, client_id: u32) -> &mut ClientStats
fn client_stats_mut_for(&mut self, client_id: u32) -> &mut ClientStats
The client monitor for a specific id, creating new if it doesn’t exist
Auto Trait Implementations
impl<M> RefUnwindSafe for GraphvizMonitor<M> where
M: RefUnwindSafe,
impl<M> Send for GraphvizMonitor<M> where
M: Send,
impl<M> Sync for GraphvizMonitor<M> where
M: Sync,
impl<M> Unpin for GraphvizMonitor<M> where
M: Unpin,
impl<M> UnwindSafe for GraphvizMonitor<M> where
M: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<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. Read more
sourcefn 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.