pub struct AddressSizeInfo(/* private fields */);Expand description
The layout of EAX in ADDRESS_SIZE_INFO.
Implementations§
Source§impl AddressSizeInfo
impl AddressSizeInfo
Sourcepub const RSVD1_MASK: u32
pub const RSVD1_MASK: u32
Mask of all reserved-as-1 bits.
Sourcepub const RSVD0_MASK: u32
pub const RSVD0_MASK: u32
Mask of all reserved-as-0 bits.
Sourcepub const DEFAULT: u32
pub const DEFAULT: u32
The default value of the layout, combining all field defaults and reserved-as values.
Sourcepub const GUEST_PHYS_ADDR_BITS_MASK: u32
pub const GUEST_PHYS_ADDR_BITS_MASK: u32
Unshifted bitmask of guest_phys_addr_bits.
Sourcepub const GUEST_PHYS_ADDR_BITS_SHIFT: usize = 16
pub const GUEST_PHYS_ADDR_BITS_SHIFT: usize = 16
Bit shift (i.e., the low bit) of guest_phys_addr_bits.
Sourcepub const LINEAR_ADDR_BITS_MASK: u32
pub const LINEAR_ADDR_BITS_MASK: u32
Unshifted bitmask of linear_addr_bits.
Sourcepub const LINEAR_ADDR_BITS_SHIFT: usize = 8
pub const LINEAR_ADDR_BITS_SHIFT: usize = 8
Bit shift (i.e., the low bit) of linear_addr_bits.
Sourcepub const PHYS_ADDR_BITS_MASK: u32
pub const PHYS_ADDR_BITS_MASK: u32
Unshifted bitmask of phys_addr_bits.
Sourcepub const PHYS_ADDR_BITS_SHIFT: usize = 0
pub const PHYS_ADDR_BITS_SHIFT: usize = 0
Bit shift (i.e., the low bit) of phys_addr_bits.
Sourcepub const FIELDS: [FieldMetadata<u32>; 3]
pub const FIELDS: [FieldMetadata<u32>; 3]
Metadata of all named fields in the layout.
Sourcepub const fn new() -> Self
pub const fn new() -> Self
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) -> u32
Sourcepub const fn guest_phys_addr_bits(&self) -> u8
pub const fn guest_phys_addr_bits(&self) -> u8
The value of AddressSizeInfo[23:16].
Sourcepub const fn set_guest_phys_addr_bits(&mut self, value: u8) -> &mut Self
pub const fn set_guest_phys_addr_bits(&mut self, value: u8) -> &mut Self
Sets the value of AddressSizeInfo[23:16].
Sourcepub const fn linear_addr_bits(&self) -> u8
pub const fn linear_addr_bits(&self) -> u8
The value of AddressSizeInfo[15:8].
Sourcepub const fn set_linear_addr_bits(&mut self, value: u8) -> &mut Self
pub const fn set_linear_addr_bits(&mut self, value: u8) -> &mut Self
Sets the value of AddressSizeInfo[15:8].
Sourcepub const fn phys_addr_bits(&self) -> u8
pub const fn phys_addr_bits(&self) -> u8
The value of AddressSizeInfo[7:0].
Sourcepub const fn set_phys_addr_bits(&mut self, value: u8) -> &mut Self
pub const fn set_phys_addr_bits(&mut self, value: u8) -> &mut Self
Sets the value of AddressSizeInfo[7:0].
Trait Implementations§
Source§impl Binary for AddressSizeInfo
impl Binary for AddressSizeInfo
Source§impl Clone for AddressSizeInfo
impl Clone for AddressSizeInfo
impl Copy for AddressSizeInfo
Source§impl Debug for AddressSizeInfo
impl Debug for AddressSizeInfo
Source§impl Default for AddressSizeInfo
impl Default for AddressSizeInfo
Source§fn default() -> Self
fn default() -> Self
Returns an instance with the default bits set (i.e,. with a
value of Self::DEFAULT.
impl Eq for AddressSizeInfo
Source§impl From<AddressSizeInfo> for u32
impl From<AddressSizeInfo> for u32
Source§fn from(value: AddressSizeInfo) -> Self
fn from(value: AddressSizeInfo) -> Self
Source§impl From<u32> for AddressSizeInfo
impl From<u32> for AddressSizeInfo
Source§impl IntoIterator for AddressSizeInfo
impl IntoIterator for AddressSizeInfo
Source§impl<'a> IntoIterator for &'a AddressSizeInfo
impl<'a> IntoIterator for &'a AddressSizeInfo
Source§impl LowerHex for AddressSizeInfo
impl LowerHex for AddressSizeInfo
Source§impl Octal for AddressSizeInfo
impl Octal for AddressSizeInfo
Source§impl PartialEq for AddressSizeInfo
impl PartialEq for AddressSizeInfo
impl StructuralPartialEq for AddressSizeInfo
Auto Trait Implementations§
impl Freeze for AddressSizeInfo
impl RefUnwindSafe for AddressSizeInfo
impl Send for AddressSizeInfo
impl Sync for AddressSizeInfo
impl Unpin for AddressSizeInfo
impl UnsafeUnpin for AddressSizeInfo
impl UnwindSafe for AddressSizeInfo
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DTwhere
ST: ?Sized,
DT: ?Sized,
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DTwhere
ST: ?Sized,
DT: ?Sized,
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)