pub enum TypeDef {
Component(TypeComponentIndex),
ComponentInstance(TypeComponentInstanceIndex),
ComponentFunc(TypeFuncIndex),
Interface(InterfaceType),
Module(TypeModuleIndex),
CoreFunc(ModuleInternedTypeIndex),
Resource(TypeResourceTableIndex),
}
Expand description
Types of imports and exports in the component model.
These types are what’s available for import and export in components. Note
that all indirect indices contained here are intended to be looked up
through a sibling ComponentTypes
structure.
Variants§
Component(TypeComponentIndex)
A component and its type.
ComponentInstance(TypeComponentInstanceIndex)
An instance of a component.
ComponentFunc(TypeFuncIndex)
A component function, not to be confused with a core wasm function.
Interface(InterfaceType)
An type in an interface.
Module(TypeModuleIndex)
A core wasm module and its type.
CoreFunc(ModuleInternedTypeIndex)
A core wasm function using only core wasm types.
Resource(TypeResourceTableIndex)
A resource type which operates on the specified resource table.
Note that different resource tables may point to the same underlying actual resource type, but that’s a private detail.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for TypeDef
impl<'de> Deserialize<'de> for TypeDef
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Copy for TypeDef
Auto Trait Implementations§
impl Freeze for TypeDef
impl RefUnwindSafe for TypeDef
impl Send for TypeDef
impl Sync for TypeDef
impl Unpin for TypeDef
impl UnwindSafe for TypeDef
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