[][src]Enum abi_stable::reflection::ModReflMode

#[repr(u8)]
pub enum ModReflMode {
    Module,
    Opaque,
    DelegateDeref {
        layout_index: u8,
    },
}

Whether this is a module whose definition can be reflected on at runtime,

Module reflection only allows accessing public fields.

Variants

Module

For modules that are reflected on at runtime.

This is the default for all types.

Opaque

For types whose layout can't be iterated over.

If one uses #[sabi(module_reflection(Opaque))]

DelegateDeref

Delegates the layout to some other type,this is generally for references.

Fields of DelegateDeref

layout_index: u8

To which layout in TypeLayout.shared_vars.type_layouts this delegates to.

Trait Implementations

impl GetStaticEquivalent_ for ModReflMode[src]

type StaticEquivalent = _static_ModReflMode

impl SharedStableAbi for ModReflMode[src]

type IsNonZeroType = False

Whether this type has a single invalid bit-pattern. Read more

type Kind = __ValueKind

The kind of abi stability of this type,there are 2: Read more

impl Clone for ModReflMode[src]

impl Copy for ModReflMode[src]

impl Default for ModReflMode[src]

impl Eq for ModReflMode[src]

impl PartialEq<ModReflMode> for ModReflMode[src]

impl Debug for ModReflMode[src]

Auto Trait Implementations

Blanket Implementations

impl<This> GetConstGenericVTable for This where
    This: StableAbi + Eq + PartialEq<This> + Debug + Send + Sync
[src]

impl<This> StableAbi for This where
    This: SharedStableAbi<Kind = ValueKind>, 
[src]

impl<This> TransmuteElement for This where
    This: ?Sized
[src]

impl<'a, T> BorrowOwned<'a> for T where
    T: 'a + Clone
[src]

type ROwned = T

type RBorrowed = &'a T

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

impl<T> From<T> for 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.

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

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

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

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

type Type = T

The same type as Self. Read more

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

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

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

The error type returned when the conversion fails.