add append/discard_metadata for and/or/not feedback (#86)

* add append/discard_metadata for and/or/not feedback

* fix
This commit is contained in:
Toka 2021-05-05 15:02:37 +09:00 committed by Andrea Fioraldi
parent 099cb0b534
commit 921ab9e289

View File

@ -80,6 +80,18 @@ where
let b = self.second.is_interesting(input, observers, exit_kind)?;
Ok(a && b)
}
#[inline]
fn append_metadata(&mut self, testcase: &mut Testcase<I>) -> Result<(), Error> {
self.first.append_metadata(testcase)?;
self.second.append_metadata(testcase)
}
#[inline]
fn discard_metadata(&mut self, input: &I) -> Result<(), Error> {
self.first.discard_metadata(input)?;
self.second.discard_metadata(input)
}
}
impl<A, B, I> Named for AndFeedback<A, B, I>
@ -143,6 +155,18 @@ where
let b = self.second.is_interesting(input, observers, exit_kind)?;
Ok(a || b)
}
#[inline]
fn append_metadata(&mut self, testcase: &mut Testcase<I>) -> Result<(), Error> {
self.first.append_metadata(testcase)?;
self.second.append_metadata(testcase)
}
#[inline]
fn discard_metadata(&mut self, input: &I) -> Result<(), Error> {
self.first.discard_metadata(input)?;
self.second.discard_metadata(input)
}
}
impl<A, B, I> Named for OrFeedback<A, B, I>
@ -201,6 +225,16 @@ where
{
Ok(!self.first.is_interesting(input, observers, exit_kind)?)
}
#[inline]
fn append_metadata(&mut self, testcase: &mut Testcase<I>) -> Result<(), Error> {
self.first.append_metadata(testcase)
}
#[inline]
fn discard_metadata(&mut self, input: &I) -> Result<(), Error> {
self.first.discard_metadata(input)
}
}
impl<A, I> Named for NotFeedback<A, I>