#[repr(C)]pub struct RefcountHeader {
pub magic: u32,
pub version: u16,
pub refcount_width: u8,
pub _pad: u8,
pub cluster_count: u32,
pub max_refcount: u32,
pub array_offset: u64,
pub snapshot_epoch: u32,
pub _reserved: u32,
}Expand description
32-byte header for REFCOUNT_SEG payloads.
Follows the standard 64-byte SegmentHeader. All multi-byte fields are
little-endian on the wire.
Fields§
§magic: u32Magic: REFCOUNT_MAGIC (0x52565243, “RVRC”).
version: u16RefcountHeader format version (currently 1).
refcount_width: u8Width of each refcount entry in bytes (1, 2, or 4).
_pad: u8Padding (must be zero).
cluster_count: u32Number of clusters tracked.
max_refcount: u32Maximum refcount value before overflow.
array_offset: u64Offset to the refcount array within the segment payload.
snapshot_epoch: u32Snapshot epoch: 0 = mutable, >0 = frozen at this epoch.
_reserved: u32Reserved (must be zero).
Implementations§
Trait Implementations§
Source§impl Clone for RefcountHeader
impl Clone for RefcountHeader
Source§fn clone(&self) -> RefcountHeader
fn clone(&self) -> RefcountHeader
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 RefcountHeader
impl Debug for RefcountHeader
impl Copy for RefcountHeader
Auto Trait Implementations§
impl Freeze for RefcountHeader
impl RefUnwindSafe for RefcountHeader
impl Send for RefcountHeader
impl Sync for RefcountHeader
impl Unpin for RefcountHeader
impl UnwindSafe for RefcountHeader
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