#[repr(C)]pub struct VersionEntry {
pub version_number: u64,
pub parent_hash: [u8; 32],
pub rules_hash: [u8; 32],
pub author_id: u64,
pub timestamp: u64,
pub message_offset: u64,
pub message_length: u32,
pub reserved: [u8; 52],
}Expand description
Version chain entry for serialization (152 bytes)
Fields§
§version_number: u64Version number (1, 2, 3, …)
parent_hash: [u8; 32]Parent hash (BLAKE3 of previous version rules), all zeros for genesis
rules_hash: [u8; 32]Rules hash (BLAKE3 of this version’s rules)
Author ID who created this version
timestamp: u64Creation timestamp (nanoseconds since Unix epoch)
message_offset: u64Commit message offset in string table
message_length: u32Commit message length (bytes)
reserved: [u8; 52]Reserved (must be zero)
Implementations§
Trait Implementations§
Source§impl AsBytes for VersionEntry
impl AsBytes for VersionEntry
Source§impl Clone for VersionEntry
impl Clone for VersionEntry
Source§fn clone(&self) -> VersionEntry
fn clone(&self) -> VersionEntry
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 Debug for VersionEntry
impl Debug for VersionEntry
impl Copy for VersionEntry
Auto Trait Implementations§
impl Freeze for VersionEntry
impl RefUnwindSafe for VersionEntry
impl Send for VersionEntry
impl Sync for VersionEntry
impl Unpin for VersionEntry
impl UnsafeUnpin for VersionEntry
impl UnwindSafe for VersionEntry
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