pub struct PostOrderOutboard<D = Vec<u8>> {
pub root: Hash,
pub tree: BaoTree,
pub data: D,
}
Expand description
A generic outboard in post order
All fields are public, so an outboard does not enforce any invariants. This is necessary since we want outboards to exist in an incomplete state where data does not match the root hash.
Fields§
§root: Hash
root hash
tree: BaoTree
tree defining the data
data: D
hashes with length prefix
Trait Implementations§
Source§impl<D: Clone> Clone for PostOrderOutboard<D>
impl<D: Clone> Clone for PostOrderOutboard<D>
Source§fn clone(&self) -> PostOrderOutboard<D>
fn clone(&self) -> PostOrderOutboard<D>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<W: AsyncSliceWriter> CreateOutboard for PostOrderOutboard<W>
impl<W: AsyncSliceWriter> CreateOutboard for PostOrderOutboard<W>
Source§async fn create_sized(
data: impl AsyncStreamReader,
size: u64,
block_size: BlockSize,
) -> Result<Self>
async fn create_sized( data: impl AsyncStreamReader, size: u64, block_size: BlockSize, ) -> Result<Self>
create an outboard from a data source. This requires the outboard to
have a default implementation, which is the case for the memory
implementations.
Source§impl<W: WriteAt> CreateOutboard for PostOrderOutboard<W>
impl<W: WriteAt> CreateOutboard for PostOrderOutboard<W>
Source§fn create_sized(
data: impl Read,
size: u64,
block_size: BlockSize,
) -> Result<Self>
fn create_sized( data: impl Read, size: u64, block_size: BlockSize, ) -> Result<Self>
create an outboard from a data source. This requires the outboard to
have a default implementation, which is the case for the memory
implementations.
Source§impl<D: Debug> Debug for PostOrderOutboard<D>
impl<D: Debug> Debug for PostOrderOutboard<D>
Source§impl<D: Default> Default for PostOrderOutboard<D>
impl<D: Default> Default for PostOrderOutboard<D>
Source§impl<R: AsyncSliceReader> Outboard for PostOrderOutboard<R>
impl<R: AsyncSliceReader> Outboard for PostOrderOutboard<R>
Source§impl<R: ReadAt> Outboard for PostOrderOutboard<R>
impl<R: ReadAt> Outboard for PostOrderOutboard<R>
Source§impl<W: AsyncSliceWriter> OutboardMut for PostOrderOutboard<W>
impl<W: AsyncSliceWriter> OutboardMut for PostOrderOutboard<W>
Auto Trait Implementations§
impl<D> Freeze for PostOrderOutboard<D>where
D: Freeze,
impl<D> RefUnwindSafe for PostOrderOutboard<D>where
D: RefUnwindSafe,
impl<D> Send for PostOrderOutboard<D>where
D: Send,
impl<D> Sync for PostOrderOutboard<D>where
D: Sync,
impl<D> Unpin for PostOrderOutboard<D>where
D: Unpin,
impl<D> UnwindSafe for PostOrderOutboard<D>where
D: UnwindSafe,
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