Struct GptPartitionEntryArrayLayout

Source
pub struct GptPartitionEntryArrayLayout {
    pub start_lba: Lba,
    pub entry_size: GptPartitionEntrySize,
    pub num_entries: u32,
}
Expand description

Disk layout of a GPT partition entry array.

Fields§

§start_lba: Lba

First block of the array.

§entry_size: GptPartitionEntrySize

Size in bytes of each entry.

§num_entries: u32

Number of entries in the array.

Implementations§

Source§

impl GptPartitionEntryArrayLayout

Source

pub fn num_blocks(&self, block_size: BlockSize) -> Option<u64>

Get the number of blocks needed for this layout. Returns None if overflow occurs.

Source

pub fn num_blocks_as_usize(&self, block_size: BlockSize) -> Option<usize>

Get the number of blocks needed for this layout. Returns None if overflow occurs.

Source

pub fn num_bytes_exact(&self) -> Option<u64>

Get the number of bytes needed for the entries in this layout, ignoring any padding needed at the end to match the block size. This corresponds to the number of bytes that are covered by the partition_entry_array_crc32.

Returns None if overflow occurs.

Source

pub fn num_bytes_exact_as_usize(&self) -> Option<usize>

Get the number of bytes needed for the entries in this layout, ignoring any padding needed at the end to match the block size. This corresponds to the number of bytes that are covered by the partition_entry_array_crc32.

Returns None if overflow occurs.

Source

pub fn num_bytes_rounded_to_block(&self, block_size: BlockSize) -> Option<u64>

Get the number of bytes needed for this layout, rounded up to the nearest block. This is equivalent to num_blocks * block_size.

Returns None if overflow occurs.

Source

pub fn num_bytes_rounded_to_block_as_usize( &self, block_size: BlockSize, ) -> Option<usize>

Get the number of bytes needed for this layout, rounded up to the nearest block. This is equivalent to num_blocks * block_size.

Returns None if overflow occurs.

Trait Implementations§

Source§

impl Clone for GptPartitionEntryArrayLayout

Source§

fn clone(&self) -> GptPartitionEntryArrayLayout

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GptPartitionEntryArrayLayout

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for GptPartitionEntryArrayLayout

Source§

fn default() -> GptPartitionEntryArrayLayout

Returns the “default value” for a type. Read more
Source§

impl Display for GptPartitionEntryArrayLayout

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Hash for GptPartitionEntryArrayLayout

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Ord for GptPartitionEntryArrayLayout

Source§

fn cmp(&self, other: &GptPartitionEntryArrayLayout) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq for GptPartitionEntryArrayLayout

Source§

fn eq(&self, other: &GptPartitionEntryArrayLayout) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialOrd for GptPartitionEntryArrayLayout

Source§

fn partial_cmp(&self, other: &GptPartitionEntryArrayLayout) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl Copy for GptPartitionEntryArrayLayout

Source§

impl Eq for GptPartitionEntryArrayLayout

Source§

impl StructuralPartialEq for GptPartitionEntryArrayLayout

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.