Shard

Struct Shard 

Source
pub struct Shard<'map, T, const BLOCK_SIZE: u64> { /* private fields */ }

Implementations§

Source§

impl<'storage, T: Default, const BLOCK_SIZE: u64> Shard<'storage, T, BLOCK_SIZE>

Source

pub fn insert( &mut self, key: u64, value: T, ) -> Result<&'storage mut T, BlockFull>

Inserts the supplied key-value pair. If the block is already full, then returns an error. Panics if the supplied key falls outside of the range of the current shard or if its less than or equal to the last key supplied.

Source

pub fn finish(&mut self)

Consume the remainder of the space allocated to this writer. This needs to be called prior returning the shard to the VecWriter.

Source

pub fn base(&self) -> u64

Returns the base key of this shard.

Source

pub fn len(&self) -> u64

Returns the length of this shard.

Source

pub fn is_empty(&self) -> bool

Auto Trait Implementations§

§

impl<'map, T, const BLOCK_SIZE: u64> Freeze for Shard<'map, T, BLOCK_SIZE>

§

impl<'map, T, const BLOCK_SIZE: u64> RefUnwindSafe for Shard<'map, T, BLOCK_SIZE>
where T: RefUnwindSafe,

§

impl<'map, T, const BLOCK_SIZE: u64> Send for Shard<'map, T, BLOCK_SIZE>
where T: Send,

§

impl<'map, T, const BLOCK_SIZE: u64> Sync for Shard<'map, T, BLOCK_SIZE>
where T: Sync,

§

impl<'map, T, const BLOCK_SIZE: u64> Unpin for Shard<'map, T, BLOCK_SIZE>

§

impl<'map, T, const BLOCK_SIZE: u64> !UnwindSafe for Shard<'map, T, BLOCK_SIZE>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.