pub struct Partition { /* private fields */ }
Expand description
Describes a Partition
Implementations§
Source§impl Partition
impl Partition
Sourcepub const fn new(first_sector: u16, last_sector: u16) -> Self
pub const fn new(first_sector: u16, last_sector: u16) -> Self
Create a new partition, with the given start and end sectors.
It defaults to no permissions.
Sourcepub const fn from_raw(
permissions_and_location: u32,
permissions_and_flags: u32,
) -> Self
pub const fn from_raw( permissions_and_location: u32, permissions_and_flags: u32, ) -> Self
Create a new partition from run-time values.
Get these from the ROM function get_partition_table_info
with an argument of PARTITION_LOCATION_AND_FLAGS
.
Sourcepub const fn with_permission(self, permission: Permission) -> Self
pub const fn with_permission(self, permission: Permission) -> Self
Add a permission
Sourcepub const fn with_extra_families(self, extra_families: &[u32]) -> Self
pub const fn with_extra_families(self, extra_families: &[u32]) -> Self
Set the extra families for the partition.
You can supply up to four.
Sourcepub const fn with_flag(self, flag: PartitionFlag) -> Self
pub const fn with_flag(self, flag: PartitionFlag) -> Self
Set a flag
Sourcepub fn get_first_last_sectors(&self) -> (u16, u16)
pub fn get_first_last_sectors(&self) -> (u16, u16)
Get the partition start and end
The offsets are in 4 KiB sectors, inclusive.
Sourcepub fn get_first_last_bytes(&self) -> (u32, u32)
pub fn get_first_last_bytes(&self) -> (u32, u32)
Get the partition start and end
The offsets are in bytes, inclusive.
Sourcepub fn has_permission(&self, permission: Permission) -> bool
pub fn has_permission(&self, permission: Permission) -> bool
Check if it has a permission
Sourcepub fn get_extra_families(&self) -> &[u32]
pub fn get_extra_families(&self) -> &[u32]
Get which extra families are allowed in this partition
Sourcepub fn get_name(&self) -> Option<&str>
pub fn get_name(&self) -> Option<&str>
Get the name of the partition
Returns None
if there’s no name, or the name is not valid UTF-8.
Sourcepub fn has_flag(&self, flag: PartitionFlag) -> bool
pub fn has_flag(&self, flag: PartitionFlag) -> bool
Check if the partition has a flag set
Trait Implementations§
impl Eq for Partition
impl StructuralPartialEq for Partition
Auto Trait Implementations§
impl Freeze for Partition
impl RefUnwindSafe for Partition
impl Send for Partition
impl Sync for Partition
impl Unpin for Partition
impl UnwindSafe for Partition
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
Source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Casts the value.
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)Source§impl<Src, Dst> LosslessTryInto<Dst> for Srcwhere
Dst: LosslessTryFrom<Src>,
impl<Src, Dst> LosslessTryInto<Dst> for Srcwhere
Dst: LosslessTryFrom<Src>,
Source§fn lossless_try_into(self) -> Option<Dst>
fn lossless_try_into(self) -> Option<Dst>
Performs the conversion.
Source§impl<Src, Dst> LossyInto<Dst> for Srcwhere
Dst: LossyFrom<Src>,
impl<Src, Dst> LossyInto<Dst> for Srcwhere
Dst: LossyFrom<Src>,
Source§fn lossy_into(self) -> Dst
fn lossy_into(self) -> Dst
Performs the conversion.
Source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
Source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
Source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Casts the value.
Source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
Source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
Source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> UnwrappedAs for T
impl<T> UnwrappedAs for T
Source§fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
Source§fn unwrapped_cast_from(src: Src) -> Dst
fn unwrapped_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> WrappingAs for T
impl<T> WrappingAs for T
Source§fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
Source§fn wrapping_cast_from(src: Src) -> Dst
fn wrapping_cast_from(src: Src) -> Dst
Casts the value.