pub enum FuncKey {
DefinedWasmFunction(StaticModuleIndex, DefinedFuncIndex),
ArrayToWasmTrampoline(StaticModuleIndex, DefinedFuncIndex),
WasmToArrayTrampoline(ModuleInternedTypeIndex),
WasmToBuiltinTrampoline(BuiltinFunctionIndex),
PulleyHostCall(HostCall),
ComponentTrampoline(TrampolineIndex),
ResourceDropTrampoline,
}Expand description
A sortable, comparable function key for compilation output, call graph edges, and relocations.
Variants§
DefinedWasmFunction(StaticModuleIndex, DefinedFuncIndex)
A Wasm-defined function.
ArrayToWasmTrampoline(StaticModuleIndex, DefinedFuncIndex)
A trampoline from an array-caller to the given Wasm-callee.
WasmToArrayTrampoline(ModuleInternedTypeIndex)
A trampoline from a Wasm-caller to an array-callee of the given type.
WasmToBuiltinTrampoline(BuiltinFunctionIndex)
A trampoline from a Wasm-caller to the given builtin.
PulleyHostCall(HostCall)
A Pulley-specific host call.
ComponentTrampoline(TrampolineIndex)
A Wasm-caller to component builtin trampoline.
ResourceDropTrampoline
A Wasm-caller to array-callee resource.drop trampoline.
Implementations§
Source§impl FuncKey
impl FuncKey
Sourcepub fn into_raw_parts(self) -> (u32, u32)
pub fn into_raw_parts(self) -> (u32, u32)
Get the raw, underlying representation of this compilation key.
The resulting values should only be used for (eventually) calling
CompileKey::from_raw_parts.
Sourcepub fn from_raw_parts(a: u32, b: u32) -> Self
pub fn from_raw_parts(a: u32, b: u32) -> Self
Create a compilation key from its raw, underlying representation.
Should only be given the results of a previous call to
CompileKey::into_raw_parts.
Sourcepub fn unwrap_defined_wasm_function(
self,
) -> (StaticModuleIndex, DefinedFuncIndex)
pub fn unwrap_defined_wasm_function( self, ) -> (StaticModuleIndex, DefinedFuncIndex)
Unwrap a FuncKey::DefinedWasmFunction or else panic.
Sourcepub fn unwrap_array_to_wasm_trampoline(
self,
) -> (StaticModuleIndex, DefinedFuncIndex)
pub fn unwrap_array_to_wasm_trampoline( self, ) -> (StaticModuleIndex, DefinedFuncIndex)
Unwrap a FuncKey::ArrayToWasmTrampoline or else panic.
Sourcepub fn unwrap_wasm_to_array_trampoline(self) -> ModuleInternedTypeIndex
pub fn unwrap_wasm_to_array_trampoline(self) -> ModuleInternedTypeIndex
Unwrap a FuncKey::WasmToArrayTrampoline or else panic.
Sourcepub fn unwrap_wasm_to_builtin_trampoline(self) -> BuiltinFunctionIndex
pub fn unwrap_wasm_to_builtin_trampoline(self) -> BuiltinFunctionIndex
Unwrap a FuncKey::WasmToBuiltinTrampoline or else panic.
Sourcepub fn unwrap_pulley_host_call(self) -> HostCall
pub fn unwrap_pulley_host_call(self) -> HostCall
Unwrap a FuncKey::PulleyHostCall or else panic.
Sourcepub fn unwrap_component_trampoline(self) -> TrampolineIndex
pub fn unwrap_component_trampoline(self) -> TrampolineIndex
Unwrap a FuncKey::ComponentTrampoline or else panic.
Sourcepub fn unwrap_resource_drop_trampoline(self)
pub fn unwrap_resource_drop_trampoline(self)
Unwrap a FuncKey::ResourceDropTrampoline or else panic.
Trait Implementations§
Source§impl Ord for FuncKey
impl Ord for FuncKey
Source§impl PartialOrd for FuncKey
impl PartialOrd for FuncKey
impl Copy for FuncKey
impl Eq for FuncKey
impl StructuralPartialEq for FuncKey
Auto Trait Implementations§
impl Freeze for FuncKey
impl RefUnwindSafe for FuncKey
impl Send for FuncKey
impl Sync for FuncKey
impl Unpin for FuncKey
impl UnwindSafe for FuncKey
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.