pub struct ChunkIdentifierGenerator { /* private fields */ }Expand description
Generator for Chunk’s identifier.
Each Chunk has a unique identifier. This generator generates the unique
identifiers.
In order to keep good performance, a unique identifier is simply a u64
(see ChunkIdentifier). Generating a new unique identifier boils down to
incrementing by one the previous identifier. Note that this is not an index:
it is an identifier.
Implementations§
Source§impl ChunkIdentifierGenerator
impl ChunkIdentifierGenerator
Sourcepub fn new_from_scratch() -> ChunkIdentifierGenerator
pub fn new_from_scratch() -> ChunkIdentifierGenerator
Create the generator assuming the current LinkedChunk it belongs to
is empty.
Sourcepub fn new_from_previous_chunk_identifier(
last_chunk_identifier: ChunkIdentifier,
) -> ChunkIdentifierGenerator
pub fn new_from_previous_chunk_identifier( last_chunk_identifier: ChunkIdentifier, ) -> ChunkIdentifierGenerator
Create the generator assuming the current LinkedChunk it belongs to
is not empty, i.e. it already has some Chunk in it.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for ChunkIdentifierGenerator
impl RefUnwindSafe for ChunkIdentifierGenerator
impl Send for ChunkIdentifierGenerator
impl Sync for ChunkIdentifierGenerator
impl Unpin for ChunkIdentifierGenerator
impl UnwindSafe for ChunkIdentifierGenerator
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
§impl<T> CompatExt for T
impl<T> CompatExt for T
Source§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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