pub struct Enum<'btf> { /* private fields */ }Expand description
An Enum of at most 32 bits.
See also libbpf docs
Implementations§
source§impl<'btf> Enum<'btf>
 
impl<'btf> Enum<'btf>
sourcepub fn get(&self, index: usize) -> Option<EnumMember<'btf>>
 
pub fn get(&self, index: usize) -> Option<EnumMember<'btf>>
Get a EnumMember at a given index
§Errors
This function returns None when the index is out of bounds.
sourcepub fn iter(
    &'btf self,
) -> impl ExactSizeIterator<Item = EnumMember<'btf>> + 'btf
 
pub fn iter( &'btf self, ) -> impl ExactSizeIterator<Item = EnumMember<'btf>> + 'btf
Returns an iterator over the EnumMember’s of the Enum
Methods from Deref<Target = BtfType<'btf>>§
sourcepub fn is_any_enum(&self) -> bool
 
pub fn is_any_enum(&self) -> bool
Whether this represents any kind of enum.
sourcepub fn is_core_compat(&self, other: &Self) -> bool
 
pub fn is_core_compat(&self, other: &Self) -> bool
Whether this btf type is core compatible to other.
sourcepub fn is_composite(&self) -> bool
 
pub fn is_composite(&self) -> bool
Whether this type represents a composite type (struct/union).
sourcepub fn next_type(&self) -> Option<Self>
 
pub fn next_type(&self) -> Option<Self>
If this type implements ReferencesType, returns the type it references.
sourcepub fn skip_mods_and_typedefs(&self) -> Self
 
pub fn skip_mods_and_typedefs(&self) -> Self
Given a type, follows the refering type ids until it finds a type that isn’t a modifier or
a BtfKind::Typedef.
See is_mod.
sourcepub fn alignment(&self) -> Result<NonZeroUsize>
 
pub fn alignment(&self) -> Result<NonZeroUsize>
Returns the alignment of this type, if this type points to some modifier or typedef, those will be skipped until the underlying type (with an alignment) is found.
Trait Implementations§
impl<'btf> Copy for Enum<'btf>
Auto Trait Implementations§
impl<'btf> Freeze for Enum<'btf>
impl<'btf> RefUnwindSafe for Enum<'btf>
impl<'btf> !Send for Enum<'btf>
impl<'btf> !Sync for Enum<'btf>
impl<'btf> Unpin for Enum<'btf>
impl<'btf> UnwindSafe for Enum<'btf>
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> CloneToUninit for Twhere
    T: Clone,
 
impl<T> CloneToUninit for Twhere
    T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
 
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)source§impl<T> CloneToUninit for Twhere
    T: Copy,
 
impl<T> CloneToUninit for Twhere
    T: Copy,
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)