Struct ApicBaseFlags
#[repr(transparent)]pub struct ApicBaseFlags(<ApicBaseFlags as PublicFlags>::Internal);Expand description
Flags for the Advanced Programmable Interrupt Controller Base Register.
Tuple Fields§
§0: <ApicBaseFlags as PublicFlags>::InternalImplementations§
§impl ApicBaseFlags
impl ApicBaseFlags
pub const BSP: ApicBaseFlags
pub const BSP: ApicBaseFlags
Indicates whether the current processor is the bootstrap processor
pub const X2APIC_ENABLE: ApicBaseFlags
pub const X2APIC_ENABLE: ApicBaseFlags
Places the local APIC in the x2APIC mode. Processor support for x2APIC feature can be
detected using the cpuid instruction. (CPUID.(EAX=1):ECX.21)
pub const LAPIC_ENABLE: ApicBaseFlags
pub const LAPIC_ENABLE: ApicBaseFlags
Enables or disables the local Apic
§impl ApicBaseFlags
impl ApicBaseFlags
pub const fn empty() -> ApicBaseFlags
pub const fn empty() -> ApicBaseFlags
Get a flags value with all bits unset.
pub const fn all() -> ApicBaseFlags
pub const fn all() -> ApicBaseFlags
Get a flags value with all known bits set.
pub const fn bits(&self) -> u64
pub const fn bits(&self) -> u64
Get the underlying bits value.
The returned value is exactly the bits set in this flags value.
pub const fn from_bits(bits: u64) -> Option<ApicBaseFlags>
pub const fn from_bits(bits: u64) -> Option<ApicBaseFlags>
Convert from a bits value.
This method will return None if any unknown bits are set.
pub const fn from_bits_truncate(bits: u64) -> ApicBaseFlags
pub const fn from_bits_truncate(bits: u64) -> ApicBaseFlags
Convert from a bits value, unsetting any unknown bits.
pub const fn from_bits_retain(bits: u64) -> ApicBaseFlags
pub const fn from_bits_retain(bits: u64) -> ApicBaseFlags
Convert from a bits value exactly.
pub fn from_name(name: &str) -> Option<ApicBaseFlags>
pub fn from_name(name: &str) -> Option<ApicBaseFlags>
Get a flags value with the bits of a flag with the given name set.
This method will return None if name is empty or doesn’t
correspond to any named flag.
pub const fn intersects(&self, other: ApicBaseFlags) -> bool
pub const fn intersects(&self, other: ApicBaseFlags) -> bool
Whether any set bits in other are also set in self.
pub const fn contains(&self, other: ApicBaseFlags) -> bool
pub const fn contains(&self, other: ApicBaseFlags) -> bool
Whether all set bits in other are also set in self.
pub fn insert(&mut self, other: ApicBaseFlags)
pub fn insert(&mut self, other: ApicBaseFlags)
The bitwise or (|) of the bits in self and other.
pub fn remove(&mut self, other: ApicBaseFlags)
pub fn remove(&mut self, other: ApicBaseFlags)
The intersection of self with the complement of other (&!).
This method is not equivalent to self & !other when other has unknown bits set.
remove won’t truncate other, but the ! operator will.
pub fn toggle(&mut self, other: ApicBaseFlags)
pub fn toggle(&mut self, other: ApicBaseFlags)
The bitwise exclusive-or (^) of the bits in self and other.
pub fn set(&mut self, other: ApicBaseFlags, value: bool)
pub fn set(&mut self, other: ApicBaseFlags, value: bool)
Call insert when value is true or remove when value is false.
pub const fn intersection(self, other: ApicBaseFlags) -> ApicBaseFlags
pub const fn intersection(self, other: ApicBaseFlags) -> ApicBaseFlags
The bitwise and (&) of the bits in self and other.
pub const fn union(self, other: ApicBaseFlags) -> ApicBaseFlags
pub const fn union(self, other: ApicBaseFlags) -> ApicBaseFlags
The bitwise or (|) of the bits in self and other.
pub const fn difference(self, other: ApicBaseFlags) -> ApicBaseFlags
pub const fn difference(self, other: ApicBaseFlags) -> ApicBaseFlags
The intersection of self with the complement of other (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
pub const fn symmetric_difference(self, other: ApicBaseFlags) -> ApicBaseFlags
pub const fn symmetric_difference(self, other: ApicBaseFlags) -> ApicBaseFlags
The bitwise exclusive-or (^) of the bits in self and other.
pub const fn complement(self) -> ApicBaseFlags
pub const fn complement(self) -> ApicBaseFlags
The bitwise negation (!) of the bits in self, truncating the result.
§impl ApicBaseFlags
impl ApicBaseFlags
pub const fn iter(&self) -> Iter<ApicBaseFlags> ⓘ
pub const fn iter(&self) -> Iter<ApicBaseFlags> ⓘ
Yield a set of contained flags values.
Each yielded flags value will correspond to a defined named flag. Any unknown bits will be yielded together as a final flags value.
pub const fn iter_names(&self) -> IterNames<ApicBaseFlags> ⓘ
pub const fn iter_names(&self) -> IterNames<ApicBaseFlags> ⓘ
Yield a set of contained named flags values.
This method is like iter, except only yields bits in contained named flags.
Any unknown bits, or bits not corresponding to a contained flag will not be yielded.
Trait Implementations§
§impl Binary for ApicBaseFlags
impl Binary for ApicBaseFlags
§impl BitAnd for ApicBaseFlags
impl BitAnd for ApicBaseFlags
§fn bitand(self, other: ApicBaseFlags) -> ApicBaseFlags
fn bitand(self, other: ApicBaseFlags) -> ApicBaseFlags
The bitwise and (&) of the bits in self and other.
§type Output = ApicBaseFlags
type Output = ApicBaseFlags
& operator.§impl BitAndAssign for ApicBaseFlags
impl BitAndAssign for ApicBaseFlags
§fn bitand_assign(&mut self, other: ApicBaseFlags)
fn bitand_assign(&mut self, other: ApicBaseFlags)
The bitwise and (&) of the bits in self and other.
§impl BitOr for ApicBaseFlags
impl BitOr for ApicBaseFlags
§fn bitor(self, other: ApicBaseFlags) -> ApicBaseFlags
fn bitor(self, other: ApicBaseFlags) -> ApicBaseFlags
The bitwise or (|) of the bits in self and other.
§type Output = ApicBaseFlags
type Output = ApicBaseFlags
| operator.§impl BitOrAssign for ApicBaseFlags
impl BitOrAssign for ApicBaseFlags
§fn bitor_assign(&mut self, other: ApicBaseFlags)
fn bitor_assign(&mut self, other: ApicBaseFlags)
The bitwise or (|) of the bits in self and other.
§impl BitXor for ApicBaseFlags
impl BitXor for ApicBaseFlags
§fn bitxor(self, other: ApicBaseFlags) -> ApicBaseFlags
fn bitxor(self, other: ApicBaseFlags) -> ApicBaseFlags
The bitwise exclusive-or (^) of the bits in self and other.
§type Output = ApicBaseFlags
type Output = ApicBaseFlags
^ operator.§impl BitXorAssign for ApicBaseFlags
impl BitXorAssign for ApicBaseFlags
§fn bitxor_assign(&mut self, other: ApicBaseFlags)
fn bitxor_assign(&mut self, other: ApicBaseFlags)
The bitwise exclusive-or (^) of the bits in self and other.
§impl Clone for ApicBaseFlags
impl Clone for ApicBaseFlags
§fn clone(&self) -> ApicBaseFlags
fn clone(&self) -> ApicBaseFlags
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 ApicBaseFlags
§impl Debug for ApicBaseFlags
impl Debug for ApicBaseFlags
impl Eq for ApicBaseFlags
§impl Extend<ApicBaseFlags> for ApicBaseFlags
impl Extend<ApicBaseFlags> for ApicBaseFlags
§fn extend<T>(&mut self, iterator: T)where
T: IntoIterator<Item = ApicBaseFlags>,
fn extend<T>(&mut self, iterator: T)where
T: IntoIterator<Item = ApicBaseFlags>,
The bitwise or (|) of the bits in each flags value.
Source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one)Source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one)§impl Flags for ApicBaseFlags
impl Flags for ApicBaseFlags
§const FLAGS: &'static [Flag<ApicBaseFlags>]
const FLAGS: &'static [Flag<ApicBaseFlags>]
§fn from_bits_retain(bits: u64) -> ApicBaseFlags
fn from_bits_retain(bits: u64) -> ApicBaseFlags
§fn all_named() -> ApicBaseFlags
fn all_named() -> ApicBaseFlags
§fn known_bits(&self) -> Self::Bits
fn known_bits(&self) -> Self::Bits
§fn unknown_bits(&self) -> Self::Bits
fn unknown_bits(&self) -> Self::Bits
§fn contains_unknown_bits(&self) -> bool
fn contains_unknown_bits(&self) -> bool
true if any unknown bits are set.§fn from_bits_truncate(bits: Self::Bits) -> Self
fn from_bits_truncate(bits: Self::Bits) -> Self
§fn from_name(name: &str) -> Option<Self>
fn from_name(name: &str) -> Option<Self>
§fn iter_names(&self) -> IterNames<Self> ⓘ
fn iter_names(&self) -> IterNames<Self> ⓘ
§fn iter_defined_names() -> IterDefinedNames<Self> ⓘ
fn iter_defined_names() -> IterDefinedNames<Self> ⓘ
Self::FLAGS].§fn iter_equal_names(&self) -> IterEqualNames<Self> ⓘ
fn iter_equal_names(&self) -> IterEqualNames<Self> ⓘ
§fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
other are also set in self.§fn contains(&self, other: Self) -> boolwhere
Self: Sized,
fn contains(&self, other: Self) -> boolwhere
Self: Sized,
other are also set in self.§fn insert(&mut self, other: Self)where
Self: Sized,
fn insert(&mut self, other: Self)where
Self: Sized,
|) of the bits in self and other.§fn toggle(&mut self, other: Self)where
Self: Sized,
fn toggle(&mut self, other: Self)where
Self: Sized,
^) of the bits in self and other.§fn set(&mut self, other: Self, value: bool)where
Self: Sized,
fn set(&mut self, other: Self, value: bool)where
Self: Sized,
Flags::insert] when value is true or [Flags::remove] when value is false.§fn intersection(self, other: Self) -> Self
fn intersection(self, other: Self) -> Self
&) of the bits in self and other.§fn difference(self, other: Self) -> Self
fn difference(self, other: Self) -> Self
§fn symmetric_difference(self, other: Self) -> Self
fn symmetric_difference(self, other: Self) -> Self
^) of the bits in self and other.§fn complement(self) -> Self
fn complement(self) -> Self
!) of the bits in self, truncating the result.§impl FromIterator<ApicBaseFlags> for ApicBaseFlags
impl FromIterator<ApicBaseFlags> for ApicBaseFlags
§fn from_iter<T>(iterator: T) -> ApicBaseFlagswhere
T: IntoIterator<Item = ApicBaseFlags>,
fn from_iter<T>(iterator: T) -> ApicBaseFlagswhere
T: IntoIterator<Item = ApicBaseFlags>,
The bitwise or (|) of the bits in each flags value.
§impl Hash for ApicBaseFlags
impl Hash for ApicBaseFlags
§impl IntoIterator for ApicBaseFlags
impl IntoIterator for ApicBaseFlags
§type Item = ApicBaseFlags
type Item = ApicBaseFlags
§type IntoIter = Iter<ApicBaseFlags>
type IntoIter = Iter<ApicBaseFlags>
§fn into_iter(self) -> <ApicBaseFlags as IntoIterator>::IntoIter
fn into_iter(self) -> <ApicBaseFlags as IntoIterator>::IntoIter
§impl LowerHex for ApicBaseFlags
impl LowerHex for ApicBaseFlags
§impl Not for ApicBaseFlags
impl Not for ApicBaseFlags
§fn not(self) -> ApicBaseFlags
fn not(self) -> ApicBaseFlags
The bitwise negation (!) of the bits in self, truncating the result.
§type Output = ApicBaseFlags
type Output = ApicBaseFlags
! operator.§impl Octal for ApicBaseFlags
impl Octal for ApicBaseFlags
§impl Ord for ApicBaseFlags
impl Ord for ApicBaseFlags
§fn cmp(&self, other: &ApicBaseFlags) -> Ordering
fn cmp(&self, other: &ApicBaseFlags) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
§impl PartialEq for ApicBaseFlags
impl PartialEq for ApicBaseFlags
§impl PartialOrd for ApicBaseFlags
impl PartialOrd for ApicBaseFlags
impl StructuralPartialEq for ApicBaseFlags
§impl Sub for ApicBaseFlags
impl Sub for ApicBaseFlags
§fn sub(self, other: ApicBaseFlags) -> ApicBaseFlags
fn sub(self, other: ApicBaseFlags) -> ApicBaseFlags
The intersection of self with the complement of other (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
§type Output = ApicBaseFlags
type Output = ApicBaseFlags
- operator.§impl SubAssign for ApicBaseFlags
impl SubAssign for ApicBaseFlags
§fn sub_assign(&mut self, other: ApicBaseFlags)
fn sub_assign(&mut self, other: ApicBaseFlags)
The intersection of self with the complement of other (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
Auto Trait Implementations§
impl Freeze for ApicBaseFlags
impl RefUnwindSafe for ApicBaseFlags
impl Send for ApicBaseFlags
impl Sync for ApicBaseFlags
impl Unpin for ApicBaseFlags
impl UnsafeUnpin for ApicBaseFlags
impl UnwindSafe for ApicBaseFlags
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more