pub struct TransactionLog { /* private fields */ }Implementations§
Source§impl TransactionLog
impl TransactionLog
Sourcepub fn new_from_parts(
id: &SnapshotId,
sorted_new_groups: impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator,
sorted_new_arrays: impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator,
sorted_deleted_groups: impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator,
sorted_deleted_arrays: impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator,
sorted_updated_groups: impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator,
sorted_updated_arrays: impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator,
sorted_updated_chunks: impl ExactSizeIterator<Item = (NodeId, impl Iterator<Item = ChunkIndices>)> + DoubleEndedIterator,
sorted_moves: impl Iterator<Item = Move>,
) -> Self
pub fn new_from_parts( id: &SnapshotId, sorted_new_groups: impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator, sorted_new_arrays: impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator, sorted_deleted_groups: impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator, sorted_deleted_arrays: impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator, sorted_updated_groups: impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator, sorted_updated_arrays: impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator, sorted_updated_chunks: impl ExactSizeIterator<Item = (NodeId, impl Iterator<Item = ChunkIndices>)> + DoubleEndedIterator, sorted_moves: impl Iterator<Item = Move>, ) -> Self
Low level method that creates a tx log from its parts Intended to be used only by library creators
pub fn from_buffer(buffer: Vec<u8>) -> IcechunkResult<Self>
pub fn new_groups( &self, ) -> impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator + '_
pub fn new_arrays( &self, ) -> impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator + '_
pub fn deleted_groups( &self, ) -> impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator + '_
pub fn deleted_arrays( &self, ) -> impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator + '_
pub fn updated_groups( &self, ) -> impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator + '_
pub fn updated_arrays( &self, ) -> impl ExactSizeIterator<Item = NodeId> + DoubleEndedIterator + '_
pub fn updated_chunks( &self, ) -> impl Iterator<Item = (NodeId, impl Iterator<Item = ChunkIndices> + '_)> + '_
pub fn moves(&self) -> impl Iterator<Item = IcechunkResult<Move>> + '_
pub fn updated_chunks_for( &self, node: &NodeId, ) -> impl Iterator<Item = ChunkIndices> + '_ + use<'_>
pub fn updated_chunks_counts( &self, ) -> impl Iterator<Item = (NodeId, u64)> + '_ + use<'_>
pub fn group_created(&self, id: &NodeId) -> bool
pub fn array_created(&self, id: &NodeId) -> bool
pub fn group_deleted(&self, id: &NodeId) -> bool
pub fn array_deleted(&self, id: &NodeId) -> bool
pub fn group_updated(&self, id: &NodeId) -> bool
pub fn array_updated(&self, id: &NodeId) -> bool
pub fn chunks_updated(&self, id: &NodeId) -> bool
pub fn bytes(&self) -> &[u8] ⓘ
pub fn len(&self) -> usize
pub fn is_empty(&self) -> bool
pub fn has_moves(&self) -> bool
pub fn merge<'a, T: IntoIterator<Item = &'a TransactionLog>>( id: &SnapshotId, iter: T, ) -> IcechunkResult<Self>
Trait Implementations§
Source§impl Clone for TransactionLog
impl Clone for TransactionLog
Source§fn clone(&self) -> TransactionLog
fn clone(&self) -> TransactionLog
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 TransactionLog
impl Debug for TransactionLog
Source§impl Default for TransactionLog
impl Default for TransactionLog
Source§fn default() -> TransactionLog
fn default() -> TransactionLog
Returns the “default value” for a type. Read more
Source§impl PartialEq for TransactionLog
impl PartialEq for TransactionLog
impl StructuralPartialEq for TransactionLog
Auto Trait Implementations§
impl Freeze for TransactionLog
impl RefUnwindSafe for TransactionLog
impl Send for TransactionLog
impl Sync for TransactionLog
impl Unpin for TransactionLog
impl UnsafeUnpin for TransactionLog
impl UnwindSafe for TransactionLog
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> 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