pub struct StructuralDiffCursor {
pub base_root: Option<Cid>,
pub other_root: Option<Cid>,
pub markers: Vec<StructuralDiffMarker>,
pub pending: Vec<Diff>,
}Expand description
Stable checkpoint token for structural diff traversal.
The cursor records the tree roots it belongs to, the unvisited structural frontier, and any already-expanded diff entries that have not been emitted yet. Reusing it with different roots returns an error.
Fields§
§base_root: Option<Cid>Base tree root CID for cursor validation.
other_root: Option<Cid>Other tree root CID for cursor validation.
markers: Vec<StructuralDiffMarker>Remaining structural frames in iterator stack order.
pending: Vec<Diff>Already-expanded diffs that still need to be emitted.
Implementations§
Trait Implementations§
Source§impl Clone for StructuralDiffCursor
impl Clone for StructuralDiffCursor
Source§fn clone(&self) -> StructuralDiffCursor
fn clone(&self) -> StructuralDiffCursor
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for StructuralDiffCursor
impl Debug for StructuralDiffCursor
Source§impl Default for StructuralDiffCursor
impl Default for StructuralDiffCursor
Source§fn default() -> StructuralDiffCursor
fn default() -> StructuralDiffCursor
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for StructuralDiffCursor
impl<'de> Deserialize<'de> for StructuralDiffCursor
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 StructuralDiffCursor
Source§impl PartialEq for StructuralDiffCursor
impl PartialEq for StructuralDiffCursor
Source§impl Serialize for StructuralDiffCursor
impl Serialize for StructuralDiffCursor
impl StructuralPartialEq for StructuralDiffCursor
Auto Trait Implementations§
impl Freeze for StructuralDiffCursor
impl RefUnwindSafe for StructuralDiffCursor
impl Send for StructuralDiffCursor
impl Sync for StructuralDiffCursor
impl Unpin for StructuralDiffCursor
impl UnsafeUnpin for StructuralDiffCursor
impl UnwindSafe for StructuralDiffCursor
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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