pub struct CombinedFeedback<A, B, FL, S>where
    A: Feedback<S>,
    B: Feedback<S>,
    FL: FeedbackLogic<A, B, S>,
    S: UsesInput + HasClientPerfMonitor,
{ pub first: A, pub second: B, /* private fields */ }
Expand description

A combined feedback consisting of multiple Feedbacks

Fields§

§first: A

First Feedback

§second: B

Second Feedback

Implementations§

source§

impl<A, B, FL, S> CombinedFeedback<A, B, FL, S>where
    A: Feedback<S>,
    B: Feedback<S>,
    FL: FeedbackLogic<A, B, S>,
    S: UsesInput + HasClientPerfMonitor,

source

pub fn new(first: A, second: B) -> Self

Create a new combined feedback

Trait Implementations§

source§

impl<A, B, FL, S> Debug for CombinedFeedback<A, B, FL, S>where
    A: Feedback<S> + Debug,
    B: Feedback<S> + Debug,
    FL: FeedbackLogic<A, B, S> + Debug,
    S: UsesInput + HasClientPerfMonitor + Debug,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<A, B, FL, S> Feedback<S> for CombinedFeedback<A, B, FL, S>where
    A: Feedback<S>,
    B: Feedback<S>,
    FL: FeedbackLogic<A, B, S>,
    S: UsesInput + HasClientPerfMonitor + Debug,

source§

fn init_state(&mut self, state: &mut S) -> Result<(), Error>

Initializes the feedback state. This method is called after that the State is created.
source§

fn is_interesting<EM, OT>(
    &mut self,
    state: &mut S,
    manager: &mut EM,
    input: &S::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 corpus
source§

fn append_metadata(
    &mut self,
    state: &mut S,
    testcase: &mut Testcase<S::Input>
) -> Result<(), Error>

Append to the testcase the generated metadata in case of a new corpus item
source§

fn discard_metadata(
    &mut self,
    state: &mut S,
    input: &S::Input
) -> Result<(), Error>

Discard the stored metadata in case that the testcase is not added to the corpus
source§

impl<A, B, FL, S> Named for CombinedFeedback<A, B, FL, S>where
    A: Feedback<S>,
    B: Feedback<S>,
    FL: FeedbackLogic<A, B, S>,
    S: UsesInput + HasClientPerfMonitor,

source§

fn name(&self) -> &str

Provide the name of this element.

Auto Trait Implementations§

§

impl<A, B, FL, S> RefUnwindSafe for CombinedFeedback<A, B, FL, S>where
    A: RefUnwindSafe,
    B: RefUnwindSafe,
    FL: RefUnwindSafe,
    S: RefUnwindSafe,

§

impl<A, B, FL, S> Send for CombinedFeedback<A, B, FL, S>where
    A: Send,
    B: Send,
    FL: Send,
    S: Send,

§

impl<A, B, FL, S> Sync for CombinedFeedback<A, B, FL, S>where
    A: Sync,
    B: Sync,
    FL: Sync,
    S: Sync,

§

impl<A, B, FL, S> Unpin for CombinedFeedback<A, B, FL, S>where
    A: Unpin,
    B: Unpin,
    FL: Unpin,
    S: Unpin,

§

impl<A, B, FL, S> UnwindSafe for CombinedFeedback<A, B, FL, S>where
    A: UnwindSafe,
    B: UnwindSafe,
    FL: UnwindSafe,
    S: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for Twhere
    T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere
    T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere
    T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere
    U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Tail, T> Prepend<T> for 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)

Prepend a value to this tuple, returning a new tuple with prepended value.
source§

impl<T, U> TryFrom<U> for Twhere
    U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere
    U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.