pub enum DiffEntry {
Add {
target: TargetItem,
},
Update {
target: TargetItem,
locked: LockedItem,
},
Unchanged {
target: TargetItem,
locked: LockedItem,
},
Conflict {
target: TargetItem,
locked: LockedItem,
local_hash: ContentHash,
},
Orphan {
locked: LockedItem,
},
LocalModified {
target: TargetItem,
locked: LockedItem,
local_hash: ContentHash,
},
}Expand description
A single diff entry — one of six cases from the merge matrix.
Variants§
Add
New item not in lock or on disk.
Fields
§
target: TargetItemUpdate
Source changed, local unchanged → clean update.
Unchanged
Source unchanged, local unchanged → skip.
Conflict
Source changed AND local changed → needs merge.
Orphan
In lock but not in target → should be removed.
Fields
§
locked: LockedItemLocalModified
Local modification, source unchanged → keep local.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for DiffEntry
impl RefUnwindSafe for DiffEntry
impl Send for DiffEntry
impl Sync for DiffEntry
impl Unpin for DiffEntry
impl UnsafeUnpin for DiffEntry
impl UnwindSafe for DiffEntry
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<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