pub struct BlockBuilder { /* private fields */ }Expand description
Builder for creating blocks with prefix compression
Implementations§
Source§impl BlockBuilder
impl BlockBuilder
Sourcepub fn with_hash_index(restart_interval: usize) -> Self
pub fn with_hash_index(restart_interval: usize) -> Self
Create with hash index enabled
Sourcepub fn add(&mut self, key: &[u8], value: &[u8])
pub fn add(&mut self, key: &[u8], value: &[u8])
Add a key-value pair to the block
Keys must be added in sorted order.
Sourcepub fn finish(&mut self) -> Vec<u8> ⓘ
pub fn finish(&mut self) -> Vec<u8> ⓘ
Finish building the block
Returns the block contents including restarts and optional hash index.
Sourcepub fn estimated_size(&self) -> usize
pub fn estimated_size(&self) -> usize
Get approximate size of current block
Trait Implementations§
Auto Trait Implementations§
impl Freeze for BlockBuilder
impl RefUnwindSafe for BlockBuilder
impl Send for BlockBuilder
impl Sync for BlockBuilder
impl Unpin for BlockBuilder
impl UnsafeUnpin for BlockBuilder
impl UnwindSafe for BlockBuilder
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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