Struct rustsbi::HartMask[][src]

pub struct HartMask { /* fields omitted */ }

Hart mask structure reference

Implementations

impl HartMask[src]

pub unsafe fn from_addr(
    vaddr: usize,
    base: usize,
    max_hart_id: usize
) -> HartMask
[src]

Construct a reference to hart mask from bit vector and starting hartid.

Parameters

  • The vaddr is a scalar bit-vector containing hartids. Should return address from supervisor level.
  • The base is the starting hartid from which bit-vector must be computed. If base equals usize::max_value(), that means vaddr is ignored and all available harts must be considered.
  • The max_hart_id should be returned by SBI implementation for maximum hart id this hart mask supports.

Unsafety

Caller must ensure all usize values in the bit vector is accessible.

pub fn has_bit(&self, hart_id: usize) -> bool[src]

Check if the hart_id is included in this hart mask structure.

Trait Implementations

impl Clone for HartMask[src]

impl Debug for HartMask[src]

Auto Trait Implementations

impl !Send for HartMask

impl !Sync for HartMask

impl Unpin for HartMask

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.