#[repr(C)]pub struct SegmentDescriptor {
pub offset: [u8; 4],
pub count: [u8; 2],
pub element_size: [u8; 2],
}Expand description
On-wire segment descriptor.
Each 8-byte entry describes one variable-length array within a segmented account. The descriptor lives in the segment table region, between the fixed prefix and the segment data.
Fields§
§offset: [u8; 4]Byte offset from the start of the account data to the first element of this segment.
count: [u8; 2]Number of elements currently stored in this segment.
element_size: [u8; 2]Size of each element in bytes.
Implementations§
Source§impl SegmentDescriptor
impl SegmentDescriptor
Sourcepub const fn element_size(&self) -> u16
pub const fn element_size(&self) -> u16
Read the element size.
Sourcepub const fn data_len(&self) -> usize
pub const fn data_len(&self) -> usize
Total byte footprint of this segment’s data (count × element_size).
Sourcepub const fn byte_range(&self) -> Option<(usize, usize)>
pub const fn byte_range(&self) -> Option<(usize, usize)>
Byte range [offset .. offset + data_len). Returns None on overflow.
Trait Implementations§
Source§impl Clone for SegmentDescriptor
impl Clone for SegmentDescriptor
Source§fn clone(&self) -> SegmentDescriptor
fn clone(&self) -> SegmentDescriptor
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 SegmentDescriptor
impl Debug for SegmentDescriptor
Source§impl FixedLayout for SegmentDescriptor
impl FixedLayout for SegmentDescriptor
Source§impl PartialEq for SegmentDescriptor
impl PartialEq for SegmentDescriptor
impl Copy for SegmentDescriptor
impl Eq for SegmentDescriptor
impl Pod for SegmentDescriptor
impl StructuralPartialEq for SegmentDescriptor
Auto Trait Implementations§
impl Freeze for SegmentDescriptor
impl RefUnwindSafe for SegmentDescriptor
impl Send for SegmentDescriptor
impl Sync for SegmentDescriptor
impl Unpin for SegmentDescriptor
impl UnsafeUnpin for SegmentDescriptor
impl UnwindSafe for SegmentDescriptor
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