pub struct Provenance {
pub setup: PartProvenance,
pub turn: PartProvenance,
pub expect: PartProvenance,
pub judge: PartProvenance,
}Expand description
Where each part of an item came from.
A table in the item file, or in a directory’s SuiteManifest:
[provenance]
setup = "derived"
expect = "recorded"Every part not named is PartProvenance::Authored, and an unknown key is a
parse error rather than a shrug — a corpus that ignored setpu = "recorded"
would report regenerated testimony as an ordinary result.
Fields§
§setup: PartProvenanceWhere setup came from — the part a projector under test usually writes.
turn: PartProvenanceWhere turn came from.
expect: PartProvenanceWhere expect came from.
judge: PartProvenanceWhere judge came from.
Implementations§
Source§impl Provenance
impl Provenance
Everything authored, which is what a corpus that declares nothing means.
Sourcepub const fn of(&self, part: ItemPart) -> PartProvenance
pub const fn of(&self, part: ItemPart) -> PartProvenance
Where one part came from.
Sourcepub const fn set(&mut self, part: ItemPart, provenance: PartProvenance)
pub const fn set(&mut self, part: ItemPart, provenance: PartProvenance)
Records where one part came from.
Sourcepub fn declared(&self) -> Vec<ItemPart>
pub fn declared(&self) -> Vec<ItemPart>
The parts declared as something other than authored, in
ItemPart::ALL order.
Trait Implementations§
Source§impl Clone for Provenance
impl Clone for Provenance
impl Copy for Provenance
Source§impl Debug for Provenance
impl Debug for Provenance
Source§impl Default for Provenance
impl Default for Provenance
Source§impl<'de> Deserialize<'de> for Provenancewhere
Provenance: Default,
impl<'de> Deserialize<'de> for Provenancewhere
Provenance: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for Provenance
Source§impl PartialEq for Provenance
impl PartialEq for Provenance
Source§impl Serialize for Provenance
impl Serialize for Provenance
impl StructuralPartialEq for Provenance
Auto Trait Implementations§
impl Freeze for Provenance
impl RefUnwindSafe for Provenance
impl Send for Provenance
impl Sync for Provenance
impl Unpin for Provenance
impl UnsafeUnpin for Provenance
impl UnwindSafe for Provenance
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.