#[repr(C)]pub struct TraitDispatchEntry {
pub concrete_tag: mx_tag,
pub trait_tag: mx_tag,
pub vtable: *const c_void,
pub vtable_symbol: &'static str,
}Expand description
Trait dispatch entry mapping (concrete_tag, trait_tag) → vtable.
Fields§
§concrete_tag: mx_tagTag identifying the concrete type.
trait_tag: mx_tagTag identifying the trait interface.
vtable: *const c_voidPointer to the trait’s vtable (cast from &'static SomeVTable).
vtable_symbol: &'static strSymbol name of the #[no_mangle] vtable static
(e.g. "__VTABLE_COUNTER_FOR_MYTYPE"). Consumed by the host-time WASM
snapshot writer to emit extern "C" { static <symbol>: u8; }
declarations in wasm_registry.rs.
Trait Implementations§
impl Send for TraitDispatchEntry
impl Sync for TraitDispatchEntry
Auto Trait Implementations§
impl Freeze for TraitDispatchEntry
impl RefUnwindSafe for TraitDispatchEntry
impl Unpin for TraitDispatchEntry
impl UnsafeUnpin for TraitDispatchEntry
impl UnwindSafe for TraitDispatchEntry
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> SizeHint for Twhere
T: ?Sized,
impl<T> SizeHint for Twhere
T: ?Sized,
Source§default fn lower_bound(&self) -> usize
default fn lower_bound(&self) -> usize
🔬This is a nightly-only experimental API. (
core_io_internals)Returns a lower bound on the number of elements this container-like item
contains.
For example, an array
[u8; 12] could return any value between 0 and
12 inclusively as a correct implementation. Read moreSource§impl<T> SizedTypeProperties for T
impl<T> SizedTypeProperties for T
Source§#[doc(hidden)]const SIZE: usize = _
#[doc(hidden)]const SIZE: usize = _
🔬This is a nightly-only experimental API. (
sized_type_properties)Source§#[doc(hidden)]const ALIGN: usize = _
#[doc(hidden)]const ALIGN: usize = _
🔬This is a nightly-only experimental API. (
sized_type_properties)Source§#[doc(hidden)]const ALIGNMENT: Alignment = _
#[doc(hidden)]const ALIGNMENT: Alignment = _
🔬This is a nightly-only experimental API. (
ptr_alignment_type)Source§#[doc(hidden)]const IS_ZST: bool = _
#[doc(hidden)]const IS_ZST: bool = _
🔬This is a nightly-only experimental API. (
sized_type_properties)Source§#[doc(hidden)]const LAYOUT: Layout = _
#[doc(hidden)]const LAYOUT: Layout = _
🔬This is a nightly-only experimental API. (
sized_type_properties)Source§#[doc(hidden)]const MAX_SLICE_LEN: usize = _
#[doc(hidden)]const MAX_SLICE_LEN: usize = _
🔬This is a nightly-only experimental API. (
sized_type_properties)The largest safe length for a
[Self]. Read moreLayout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 56 bytes