Enum rsim::processor::elements::cheri::capability::Cc128[]

pub enum Cc128 {}

Defines the CC128 capability profile as an implementation of the CompressedCapability trait.

Empty enum, so it cannot be itself constructed. If you want a CC128 capability, instantiate Cc128Cap.

Derives Debug, Copy, Clone so that CcxCap can derive them too.

Trait Implementations

impl Clone for Cc128

impl CompressedCapability for Cc128

type Length = u128

ccx_length_t Rust-land equivalent - should be a superset of Addr

type Offset = i128

ccx_offset_t Rust-land equivalent - should be a superset of Addr

type Addr = u64

ccx_addr_t equivalent

type FfiLength = u128

ccx_length_t C-land equivalent - should have a memory layout identical to the C ccx_length_t. This is separate from Length because for 128-bit types the Rust and C versions may not look the same. In practice, we just assume they are the same (see [crate::c_funcs] documentation). Read more

type FfiOffset = i128

ccx_offset_t C-land equivalent - should have a memory layout identical to the C ccx_offset_t. See Self::FfiLength for an explanation. Read more

pub const MAX_REPRESENTABLE_OTYPE: u32

The OTYPE field is 18 bits (108:91) in CC128

impl Debug for Cc128

impl Copy for Cc128

Auto Trait Implementations

impl RefUnwindSafe for Cc128

impl Send for Cc128

impl Sync for Cc128

impl Unpin for Cc128

impl UnwindSafe for Cc128

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> CheriRVFuncs<T> for T where
    T: CompressedCapability,
    <T as CompressedCapability>::Offset: TryInto<<T as CompressedCapability>::Addr>, 

type Cap = CcxCap<T>

type CapAddrInt = <T as CompressedCapability>::Addr

type CapAddrBits = <T as CompressedCapability>::Addr

type CapLen = <T as CompressedCapability>::Length

type OType = u32

type Perms = u32

type Flags = u8

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.