pub enum Landed {
Yes {
evidence: LandingEvidence,
},
No,
Unknown,
}Expand description
Whether the work reached the base, and — where it did — what says so.
The evidence travels inside the answer rather than beside it, so a yes with
nothing behind it and a no naming a landing commit are both unrepresentable:
only tiers 1 to 3 answer yes, and only the content comparison answers the
other two.
Variants§
Yes
It reached the base, and this is the record that says so.
Fields
evidence: LandingEvidenceWhich tier decided it, and the commit that is the evidence.
No
Nothing records that it reached the base, and the base does not carry what it changed. The last tier — a comparison of content, not a record — so this is “there is work here and nothing says it landed” rather than a proof that it did not.
Unknown
Nothing records that it reached the base, and the base already carries everything it changed.
Undecidable from history, and deliberately not a no: it is what a branch
that landed with no change request and not through this crate leaves behind,
and it is also what somebody else making the same change leaves behind.
The default, and the only one that could be: a document written before there was a field to write said nothing about landing, and nothing is not “no”.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Landed
impl<'de> Deserialize<'de> for Landed
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>,
impl Eq for Landed
impl StructuralPartialEq for Landed
Auto Trait Implementations§
impl Freeze for Landed
impl RefUnwindSafe for Landed
impl Send for Landed
impl Sync for Landed
impl Unpin for Landed
impl UnsafeUnpin for Landed
impl UnwindSafe for Landed
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
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§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
key and return true if they are equal.