pub enum BaseRule {
Subsumed,
Prepared,
Landed,
}Expand description
What: How the synthetic base settles one path. Why: A subsumed path takes the landed content, a prepared-ordered path takes the landed entry, and a landed-ordered path takes the prepared entry, so the merge keeps the wanted side.
In TS you’d write (pseudocode):
type BaseEdit = { shared: SharedPath; rule: 'subsumed' | 'prepared' | 'landed' };Variants§
Subsumed
Subsumed by the text check, identity, or deletion on both sides.
Prepared
Captured later by the prepared commit: the synthetic base takes the landed entry.
Landed
Captured later by a landed commit: the synthetic base takes the prepared entry.
Trait Implementations§
impl Copy for BaseRule
impl Eq for BaseRule
impl StructuralPartialEq for BaseRule
Auto Trait Implementations§
impl Freeze for BaseRule
impl RefUnwindSafe for BaseRule
impl Send for BaseRule
impl Sync for BaseRule
impl Unpin for BaseRule
impl UnsafeUnpin for BaseRule
impl UnwindSafe for BaseRule
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more