pub struct LargeRecordHeader(/* private fields */);Expand description
Header word for a large FXT record (RecordType = 15).
Implementations§
Source§impl LargeRecordHeader
impl LargeRecordHeader
Sourcepub const RSVD1_MASK: u64
pub const RSVD1_MASK: u64
Mask of all reserved-as-1 bits.
Sourcepub const RSVD0_MASK: u64
pub const RSVD0_MASK: u64
Mask of all reserved-as-0 bits.
Sourcepub const DEFAULT: u64
pub const DEFAULT: u64
The default value of the layout, combining all field defaults and reserved-as values.
Sourcepub const LARGE_TYPE_MASK: u64
pub const LARGE_TYPE_MASK: u64
Unshifted bitmask of large_type.
Sourcepub const LARGE_TYPE_SHIFT: usize = 36
pub const LARGE_TYPE_SHIFT: usize = 36
Bit shift (i.e., the low bit) of large_type.
Sourcepub const RECORD_SIZE_MASK: u64
pub const RECORD_SIZE_MASK: u64
Unshifted bitmask of record_size.
Sourcepub const RECORD_SIZE_SHIFT: usize = 4
pub const RECORD_SIZE_SHIFT: usize = 4
Bit shift (i.e., the low bit) of record_size.
Sourcepub const RECORD_TYPE_MASK: u64
pub const RECORD_TYPE_MASK: u64
Unshifted bitmask of record_type.
Sourcepub const RECORD_TYPE_SHIFT: usize = 0
pub const RECORD_TYPE_SHIFT: usize = 0
Bit shift (i.e., the low bit) of record_type.
Sourcepub const RECORD_TYPE_DEFAULT: u64
pub const RECORD_TYPE_DEFAULT: u64
Pre-shifted default value of the record_type field.
Sourcepub const fn new() -> LargeRecordHeader
pub const fn new() -> LargeRecordHeader
Creates a new instance with reserved-as-1 bits set and
all other bits zeroed (i.e., with a value of
Self::RSVD1_MASK).
pub const fn bits(self) -> u64
Sourcepub const fn large_type(&self) -> u8
pub const fn large_type(&self) -> u8
The value of LargeRecordHeader[39:36].
Sourcepub const fn set_large_type(&mut self, value: u8) -> &mut LargeRecordHeader
pub const fn set_large_type(&mut self, value: u8) -> &mut LargeRecordHeader
Sets the value of LargeRecordHeader[39:36].
Sourcepub const fn record_size(&self) -> u32
pub const fn record_size(&self) -> u32
The value of LargeRecordHeader[35:4].
Sourcepub const fn set_record_size(&mut self, value: u32) -> &mut LargeRecordHeader
pub const fn set_record_size(&mut self, value: u32) -> &mut LargeRecordHeader
Sets the value of LargeRecordHeader[35:4].
Sourcepub fn record_type(&self) -> RecordTypewhere
RecordType: TryFromBytes,
pub fn record_type(&self) -> RecordTypewhere
RecordType: TryFromBytes,
The value of LargeRecordHeader[3:0].
§Panics
Panics if the field’s bit pattern is not a valid value of the custom representation. Use Self::try_record_type to recover from invalid bit patterns.
Sourcepub fn try_record_type(&self) -> Result<RecordType, InvalidBits<u8>>where
RecordType: TryFromBytes,
pub fn try_record_type(&self) -> Result<RecordType, InvalidBits<u8>>where
RecordType: TryFromBytes,
Fallible variant of Self::record_type.
Sourcepub fn set_record_type(&mut self, value: RecordType) -> &mut LargeRecordHeaderwhere
RecordType: IntoBytes + Immutable,
pub fn set_record_type(&mut self, value: RecordType) -> &mut LargeRecordHeaderwhere
RecordType: IntoBytes + Immutable,
Sets the value of LargeRecordHeader[3:0].
Trait Implementations§
Source§impl Binary for LargeRecordHeader
impl Binary for LargeRecordHeader
Source§impl Clone for LargeRecordHeader
impl Clone for LargeRecordHeader
Source§fn clone(&self) -> LargeRecordHeader
fn clone(&self) -> LargeRecordHeader
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for LargeRecordHeader
Source§impl Debug for LargeRecordHeader
impl Debug for LargeRecordHeader
Source§impl Default for LargeRecordHeader
impl Default for LargeRecordHeader
Source§fn default() -> LargeRecordHeader
fn default() -> LargeRecordHeader
Returns an instance with the default bits set (i.e,. with a
value of Self::DEFAULT.