Skip to main content

FunctionBuilder

Struct FunctionBuilder 

Source
pub struct FunctionBuilder<'a> {
    pub body: Body<'a>,
    /* private fields */
}
Expand description

Build a function from scratch See an example here.

Fields§

§body: Body<'a>

Implementations§

Source§

impl<'a> FunctionBuilder<'a>

Source

pub fn new(params: &[DataType], results: &[DataType]) -> Self

Source

pub fn finish_module(self, module: &mut Module<'a>) -> FunctionID

Finish building a function (have side effect on module IR), return function index

Source

pub fn finish_module_with_tag( self, module: &mut Module<'a>, tag: Tag, ) -> FunctionID

Finish building a function (have side effect on module IR) and append a tag to that injection, return function index

Source

pub fn replace_import_in_module( self, module: &mut Module<'a>, import_id: ImportsID, ) -> Result<()>

Use this built function to replace an import in the module (turns into a local function). This action will redirect all calls to that import to call this new function.

Source

pub fn replace_import_in_module_with_tag( self, module: &mut Module<'a>, import_id: ImportsID, tag: Tag, ) -> Result<()>

Use this built function to replace an import in the module (turns into a local function) and append a tag to that injection. This action will redirect all calls to that import to call this new function.

Source

pub fn finish_component( self, comp: &mut Component<'a>, mod_idx: ModuleID, ) -> FunctionID

Finish building a function (have side effect on component IR), return function index

Source

pub fn finish_component_with_tag( self, comp: &mut Component<'a>, mod_idx: ModuleID, tag: Tag, ) -> FunctionID

Finish building a function (have side effect on component IR), and append a tag to that injection, return function index

Source

pub fn set_name(&mut self, name: String)

Trait Implementations§

Source§

impl AddLocal for FunctionBuilder<'_>

Source§

fn add_local(&mut self, ty: DataType) -> LocalID

add a local and return local index (note that local indices start after)

Source§

impl<'a> Inject<'a> for FunctionBuilder<'a>

Source§

fn inject(&mut self, op: Operator<'a>)

Inject an operator at the end of the function

Source§

fn inject_all(&mut self, instrs: &[Operator<'a>]) -> &mut Self

Inject multiple operators at the current location
Source§

impl<'a> MacroOpcode<'a> for FunctionBuilder<'a>

Source§

fn u32_const(&mut self, value: u32) -> &mut Self

Reinterpret a u32 as i32 and inject an i32.const. Read more
Source§

fn u64_const(&mut self, value: u64) -> &mut Self

Reinterpret a u64 as i64 and inject an i64.const. Read more
Source§

impl<'a> Opcode<'a> for FunctionBuilder<'a>

Source§

fn unreachable(&mut self) -> &mut Self

Source§

fn nop(&mut self) -> &mut Self

Source§

fn end(&mut self) -> &mut Self

Source§

fn br(&mut self, relative_depth: u32) -> &mut Self

Source§

fn br_if(&mut self, relative_depth: u32) -> &mut Self

Source§

fn call(&mut self, function_index: FunctionID) -> &mut Self

Source§

fn call_indirect( &mut self, type_index: TypeID, table_index: TableID, ) -> &mut Self

Source§

fn drop(&mut self) -> &mut Self

Source§

fn select(&mut self) -> &mut Self

Source§

fn local_get(&mut self, local_index: LocalID) -> &mut Self

Source§

fn local_set(&mut self, local_index: LocalID) -> &mut Self

Source§

fn local_tee(&mut self, local_index: LocalID) -> &mut Self

Source§

fn global_get(&mut self, global_index: GlobalID) -> &mut Self

Source§

fn global_set(&mut self, global_index: GlobalID) -> &mut Self

Source§

fn i32_load(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_load(&mut self, memarg: MemArg) -> &mut Self

Source§

fn f32_load(&mut self, memarg: MemArg) -> &mut Self

Source§

fn f64_load(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_load8_s(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_load8_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_load16_s(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_load16_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_load8_s(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_load8_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_load16_s(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_load16_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_load32_s(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_load32_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_store(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_store(&mut self, memarg: MemArg) -> &mut Self

Source§

fn f32_store(&mut self, memarg: MemArg) -> &mut Self

Source§

fn f64_store(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_store8(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_store16(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_store8(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_store16(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_store32(&mut self, memarg: MemArg) -> &mut Self

Source§

fn memory_size(&mut self, mem: MemoryID) -> &mut Self

Source§

fn memory_grow(&mut self, mem: MemoryID) -> &mut Self

Source§

fn i32_const(&mut self, value: i32) -> &mut Self

Source§

fn i64_const(&mut self, value: i64) -> &mut Self

Source§

fn i32_eqz(&mut self) -> &mut Self

Source§

fn i32_eq(&mut self) -> &mut Self

Source§

fn i32_ne(&mut self) -> &mut Self

Source§

fn i32_lt_s(&mut self) -> &mut Self

Source§

fn i32_lt_u(&mut self) -> &mut Self

Source§

fn i32_gt_s(&mut self) -> &mut Self

Source§

fn i32_gt_u(&mut self) -> &mut Self

Source§

fn i32_le_s(&mut self) -> &mut Self

Source§

fn i32_le_u(&mut self) -> &mut Self

Source§

fn i32_ge_s(&mut self) -> &mut Self

Source§

fn i32_ge_u(&mut self) -> &mut Self

Source§

fn i64_eqz(&mut self) -> &mut Self

Source§

fn i64_eq(&mut self) -> &mut Self

Source§

fn i64_ne(&mut self) -> &mut Self

Source§

fn i64_lt_s(&mut self) -> &mut Self

Source§

fn i64_lt_u(&mut self) -> &mut Self

Source§

fn i64_gt_s(&mut self) -> &mut Self

Source§

fn i64_gt_u(&mut self) -> &mut Self

Source§

fn i64_le_s(&mut self) -> &mut Self

Source§

fn i64_le_u(&mut self) -> &mut Self

Source§

fn i64_ge_s(&mut self) -> &mut Self

Source§

fn i64_ge_u(&mut self) -> &mut Self

Source§

fn f32_eq(&mut self) -> &mut Self

Source§

fn f32_ne(&mut self) -> &mut Self

Source§

fn f32_lt(&mut self) -> &mut Self

Source§

fn f32_gt(&mut self) -> &mut Self

Source§

fn f32_le(&mut self) -> &mut Self

Source§

fn f32_ge(&mut self) -> &mut Self

Source§

fn f64_eq(&mut self) -> &mut Self

Source§

fn f64_ne(&mut self) -> &mut Self

Source§

fn f64_lt(&mut self) -> &mut Self

Source§

fn f64_gt(&mut self) -> &mut Self

Source§

fn f64_le(&mut self) -> &mut Self

Source§

fn f64_ge(&mut self) -> &mut Self

Source§

fn i32_clz(&mut self) -> &mut Self

Source§

fn i32_ctz(&mut self) -> &mut Self

Source§

fn i32_popcnt(&mut self) -> &mut Self

Source§

fn i32_add(&mut self) -> &mut Self

Source§

fn i32_sub(&mut self) -> &mut Self

Source§

fn i32_mul(&mut self) -> &mut Self

Source§

fn i32_div_s(&mut self) -> &mut Self

Source§

fn i32_div_u(&mut self) -> &mut Self

Source§

fn i32_rem_s(&mut self) -> &mut Self

Source§

fn i32_rem_u(&mut self) -> &mut Self

Source§

fn i32_and(&mut self) -> &mut Self

Source§

fn i32_or(&mut self) -> &mut Self

Source§

fn i32_xor(&mut self) -> &mut Self

Source§

fn i32_shl(&mut self) -> &mut Self

Source§

fn i32_shr_s(&mut self) -> &mut Self

Source§

fn i32_shr_u(&mut self) -> &mut Self

Source§

fn i32_rotl(&mut self) -> &mut Self

Source§

fn i32_rotr(&mut self) -> &mut Self

Source§

fn i64_clz(&mut self) -> &mut Self

Source§

fn i64_ctz(&mut self) -> &mut Self

Source§

fn i64_popcnt(&mut self) -> &mut Self

Source§

fn i64_add(&mut self) -> &mut Self

Source§

fn i64_sub(&mut self) -> &mut Self

Source§

fn i64_mul(&mut self) -> &mut Self

Source§

fn i64_div_s(&mut self) -> &mut Self

Source§

fn i64_div_u(&mut self) -> &mut Self

Source§

fn i64_rem_s(&mut self) -> &mut Self

Source§

fn i64_rem_u(&mut self) -> &mut Self

Source§

fn i64_and(&mut self) -> &mut Self

Source§

fn i64_or(&mut self) -> &mut Self

Source§

fn i64_xor(&mut self) -> &mut Self

Source§

fn i64_shl(&mut self) -> &mut Self

Source§

fn i64_shr_s(&mut self) -> &mut Self

Source§

fn i64_shr_u(&mut self) -> &mut Self

Source§

fn i64_rotl(&mut self) -> &mut Self

Source§

fn i64_rotr(&mut self) -> &mut Self

Source§

fn f32_abs(&mut self) -> &mut Self

Source§

fn f32_neg(&mut self) -> &mut Self

Source§

fn f32_ceil(&mut self) -> &mut Self

Source§

fn f32_floor(&mut self) -> &mut Self

Source§

fn f32_trunc(&mut self) -> &mut Self

Source§

fn f32_nearest(&mut self) -> &mut Self

Source§

fn f32_sqrt(&mut self) -> &mut Self

Source§

fn f32_add(&mut self) -> &mut Self

Source§

fn f32_sub(&mut self) -> &mut Self

Source§

fn f32_mul(&mut self) -> &mut Self

Source§

fn f32_div(&mut self) -> &mut Self

Source§

fn f32_min(&mut self) -> &mut Self

Source§

fn f32_max(&mut self) -> &mut Self

Source§

fn f32_copysign(&mut self) -> &mut Self

Source§

fn f64_abs(&mut self) -> &mut Self

Source§

fn f64_neg(&mut self) -> &mut Self

Source§

fn f64_ceil(&mut self) -> &mut Self

Source§

fn f64_floor(&mut self) -> &mut Self

Source§

fn f64_trunc(&mut self) -> &mut Self

Source§

fn f64_nearest(&mut self) -> &mut Self

Source§

fn f64_sqrt(&mut self) -> &mut Self

Source§

fn f64_add(&mut self) -> &mut Self

Source§

fn f64_sub(&mut self) -> &mut Self

Source§

fn f64_mul(&mut self) -> &mut Self

Source§

fn f64_div(&mut self) -> &mut Self

Source§

fn f64_min(&mut self) -> &mut Self

Source§

fn f64_max(&mut self) -> &mut Self

Source§

fn f64_copysign(&mut self) -> &mut Self

Source§

fn i32_wrap_i64(&mut self) -> &mut Self

Source§

fn i32_trunc_f32_s(&mut self) -> &mut Self

Source§

fn i32_trunc_f32_u(&mut self) -> &mut Self

Source§

fn i32_trunc_f64_s(&mut self) -> &mut Self

Source§

fn i32_trunc_f64_u(&mut self) -> &mut Self

Source§

fn i64_extend_i32_s(&mut self) -> &mut Self

Source§

fn i64_extend_i32_u(&mut self) -> &mut Self

Source§

fn i64_trunc_f32_s(&mut self) -> &mut Self

Source§

fn i64_trunc_f32_u(&mut self) -> &mut Self

Source§

fn i64_trunc_f64_s(&mut self) -> &mut Self

Source§

fn i64_trunc_f64_u(&mut self) -> &mut Self

Source§

fn f32_convert_i32_s(&mut self) -> &mut Self

Source§

fn f32_convert_i32_u(&mut self) -> &mut Self

Source§

fn f32_convert_i64_s(&mut self) -> &mut Self

Source§

fn f32_convert_i64_u(&mut self) -> &mut Self

Source§

fn f32_demote_f64(&mut self) -> &mut Self

Source§

fn f64_convert_i32_s(&mut self) -> &mut Self

Source§

fn f64_convert_i32_u(&mut self) -> &mut Self

Source§

fn f64_convert_i64_s(&mut self) -> &mut Self

Source§

fn f64_convert_i64_u(&mut self) -> &mut Self

Source§

fn f64_promote_f32(&mut self) -> &mut Self

Source§

fn i32_reinterpret_f32(&mut self) -> &mut Self

Source§

fn i64_reinterpret_f64(&mut self) -> &mut Self

Source§

fn f32_reinterpret_i32(&mut self) -> &mut Self

Source§

fn f64_reinterpret_i64(&mut self) -> &mut Self

Source§

fn i32_extend8_s(&mut self) -> &mut Self

Source§

fn i32_extend16_s(&mut self) -> &mut Self

Source§

fn i64_extend8_s(&mut self) -> &mut Self

Source§

fn i64_extend16_s(&mut self) -> &mut Self

Source§

fn i64_extend32_s(&mut self) -> &mut Self

Source§

fn ref_eq(&mut self) -> &mut Self

Source§

fn struct_new(&mut self, struct_type_index: TypeID) -> &mut Self

Source§

fn struct_new_default(&mut self, struct_type_index: TypeID) -> &mut Self

Source§

fn struct_get( &mut self, struct_type_index: TypeID, field_index: FieldID, ) -> &mut Self

Source§

fn struct_get_s( &mut self, struct_type_index: TypeID, field_index: FieldID, ) -> &mut Self

Source§

fn struct_get_u( &mut self, struct_type_index: TypeID, field_index: FieldID, ) -> &mut Self

Source§

fn struct_set( &mut self, struct_type_index: TypeID, field_index: FieldID, ) -> &mut Self

Source§

fn array_new(&mut self, array_type_index: TypeID) -> &mut Self

Source§

fn array_new_default(&mut self, array_type_index: TypeID) -> &mut Self

Source§

fn array_new_fixed( &mut self, array_type_index: TypeID, array_size: u32, ) -> &mut Self

Source§

fn array_new_data( &mut self, array_type_index: TypeID, array_data_index: DataSegmentID, ) -> &mut Self

Source§

fn array_new_elem( &mut self, array_type_index: TypeID, array_elem_index: ElementID, ) -> &mut Self

Source§

fn array_get(&mut self, array_type_index: TypeID) -> &mut Self

Source§

fn array_get_s(&mut self, array_type_index: TypeID) -> &mut Self

Source§

fn array_get_u(&mut self, array_type_index: TypeID) -> &mut Self

Source§

fn array_set(&mut self, array_type_index: TypeID) -> &mut Self

Source§

fn array_len(&mut self) -> &mut Self

Source§

fn array_fill(&mut self, array_type_index: TypeID) -> &mut Self

Source§

fn array_copy( &mut self, array_type_index_dst: TypeID, array_type_index_src: TypeID, ) -> &mut Self

Source§

fn array_init_data( &mut self, array_type_index: TypeID, array_data_index: DataSegmentID, ) -> &mut Self

Source§

fn array_init_elem( &mut self, array_type_index: TypeID, array_elem_index: ElementID, ) -> &mut Self

Source§

fn any_convert_extern(&mut self) -> &mut Self

Source§

fn extern_convert_any(&mut self) -> &mut Self

Source§

fn ref_i31(&mut self) -> &mut Self

Source§

fn i31_get_s(&mut self) -> &mut Self

Source§

fn i31_get_u(&mut self) -> &mut Self

Source§

fn struct_new_desc(&mut self, struct_type_index: TypeID) -> &mut Self

Source§

fn struct_new_default_desc(&mut self, struct_type_index: TypeID) -> &mut Self

Source§

fn ref_get_desc(&mut self, type_index: TypeID) -> &mut Self

Source§

fn i32_trunc_sat_f32_s(&mut self) -> &mut Self

Source§

fn i32_trunc_sat_f32_u(&mut self) -> &mut Self

Source§

fn i32_trunc_sat_f64_s(&mut self) -> &mut Self

Source§

fn i32_trunc_sat_f64_u(&mut self) -> &mut Self

Source§

fn i64_trunc_sat_f32_s(&mut self) -> &mut Self

Source§

fn i64_trunc_sat_f32_u(&mut self) -> &mut Self

Source§

fn i64_trunc_sat_f64_s(&mut self) -> &mut Self

Source§

fn i64_trunc_sat_f64_u(&mut self) -> &mut Self

Source§

fn memory_init(&mut self, data_index: DataSegmentID, mem: MemoryID) -> &mut Self

Source§

fn data_drop(&mut self, data_index: DataSegmentID) -> &mut Self

Source§

fn memory_copy(&mut self, dst_mem: MemoryID, src_mem: MemoryID) -> &mut Self

Source§

fn memory_fill(&mut self, mem: MemoryID) -> &mut Self

Source§

fn table_init(&mut self, elem_index: ElementID, table: TableID) -> &mut Self

Source§

fn elem_drop(&mut self, elem_index: ElementID) -> &mut Self

Source§

fn table_copy(&mut self, dst_table: TableID, src_table: TableID) -> &mut Self

Source§

fn ref_is_null(&mut self) -> &mut Self

Source§

fn ref_func(&mut self, function_index: FunctionID) -> &mut Self

Source§

fn table_fill(&mut self, table: TableID) -> &mut Self

Source§

fn table_get(&mut self, table: TableID) -> &mut Self

Source§

fn table_set(&mut self, table: TableID) -> &mut Self

Source§

fn table_grow(&mut self, table: TableID) -> &mut Self

Source§

fn table_size(&mut self, table: TableID) -> &mut Self

Source§

fn return_call(&mut self, function_index: FunctionID) -> &mut Self

Source§

fn return_call_indirect( &mut self, type_index: TypeID, table_index: TableID, ) -> &mut Self

Source§

fn memory_discard(&mut self, mem: MemoryID) -> &mut Self

Source§

fn memory_atomic_notify(&mut self, memarg: MemArg) -> &mut Self

Source§

fn memory_atomic_wait32(&mut self, memarg: MemArg) -> &mut Self

Source§

fn memory_atomic_wait64(&mut self, memarg: MemArg) -> &mut Self

Source§

fn atomic_fence(&mut self) -> &mut Self

Source§

fn i32_atomic_load(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_load(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_load8_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_load16_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_load8_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_load16_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_load32_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_store(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_store(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_store8(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_store16(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_store8(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_store16(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_store32(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw_add(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw_add(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw8_add_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw16_add_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw8_add_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw16_add_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw32_add_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw_sub(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw_sub(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw8_sub_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw16_sub_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw8_sub_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw16_sub_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw32_sub_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw_and(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw_and(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw8_and_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw16_and_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw8_and_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw16_and_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw32_and_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw_or(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw_or(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw8_or_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw16_or_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw8_or_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw16_or_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw32_or_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw_xor(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw_xor(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw8_xor_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw16_xor_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw8_xor_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw16_xor_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw32_xor_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw_xchg(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw_xchg(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw8_xchg_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw16_xchg_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw8_xchg_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw16_xchg_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw32_xchg_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw_cmpxchg(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw_cmpxchg(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw8_cmpxchg_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i32_atomic_rmw16_cmpxchg_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw8_cmpxchg_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw16_cmpxchg_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn i64_atomic_rmw32_cmpxchg_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load8x8_s(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load8x8_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load16x4_s(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load16x4_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load32x2_s(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load32x2_u(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load8_splat(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load16_splat(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load32_splat(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load64_splat(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load32_zero(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load64_zero(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_store(&mut self, memarg: MemArg) -> &mut Self

Source§

fn v128_load8_lane(&mut self, memarg: MemArg, lane: u8) -> &mut Self

Source§

fn v128_load16_lane(&mut self, memarg: MemArg, lane: u8) -> &mut Self

Source§

fn v128_load32_lane(&mut self, memarg: MemArg, lane: u8) -> &mut Self

Source§

fn v128_load64_lane(&mut self, memarg: MemArg, lane: u8) -> &mut Self

Source§

fn v128_store8_lane(&mut self, memarg: MemArg, lane: u8) -> &mut Self

Source§

fn v128_store16_lane(&mut self, memarg: MemArg, lane: u8) -> &mut Self

Source§

fn v128_store32_lane(&mut self, memarg: MemArg, lane: u8) -> &mut Self

Source§

fn v128_store64_lane(&mut self, memarg: MemArg, lane: u8) -> &mut Self

Source§

fn v128_const(&mut self, value: V128) -> &mut Self

Source§

fn i8x16_shuffle(&mut self, lanes: [u8; 16]) -> &mut Self

Source§

fn i8x16_extract_lane_s(&mut self, lane: u8) -> &mut Self

Source§

fn i8x16_extract_lane_u(&mut self, lane: u8) -> &mut Self

Source§

fn i8x16_replace_lane(&mut self, lane: u8) -> &mut Self

Source§

fn i16x8_extract_lane_s(&mut self, lane: u8) -> &mut Self

Source§

fn i16x8_extract_lane_u(&mut self, lane: u8) -> &mut Self

Source§

fn i16x8_replace_lane(&mut self, lane: u8) -> &mut Self

Source§

fn i32x4_extract_lane(&mut self, lane: u8) -> &mut Self

Source§

fn i32x4_replace_lane(&mut self, lane: u8) -> &mut Self

Source§

fn i64x2_extract_lane(&mut self, lane: u8) -> &mut Self

Source§

fn i64x2_replace_lane(&mut self, lane: u8) -> &mut Self

Source§

fn f32x4_extract_lane(&mut self, lane: u8) -> &mut Self

Source§

fn f32x4_replace_lane(&mut self, lane: u8) -> &mut Self

Source§

fn f64x2_extract_lane(&mut self, lane: u8) -> &mut Self

Source§

fn f64x2_replace_lane(&mut self, lane: u8) -> &mut Self

Source§

fn i8x16_swizzle(&mut self) -> &mut Self

Source§

fn i8x16_splat(&mut self) -> &mut Self

Source§

fn i16x8_splat(&mut self) -> &mut Self

Source§

fn i32x4_splat(&mut self) -> &mut Self

Source§

fn i64x2_splat(&mut self) -> &mut Self

Source§

fn f32x4_splat(&mut self) -> &mut Self

Source§

fn f64x2_splat(&mut self) -> &mut Self

Source§

fn i8x16_eq(&mut self) -> &mut Self

Source§

fn i8x16_ne(&mut self) -> &mut Self

Source§

fn i8x16_lt_s(&mut self) -> &mut Self

Source§

fn i8x16_lt_u(&mut self) -> &mut Self

Source§

fn i8x16_gt_s(&mut self) -> &mut Self

Source§

fn i8x16_gt_u(&mut self) -> &mut Self

Source§

fn i8x16_le_s(&mut self) -> &mut Self

Source§

fn i8x16_le_u(&mut self) -> &mut Self

Source§

fn i8x16_ge_s(&mut self) -> &mut Self

Source§

fn i8x16_ge_u(&mut self) -> &mut Self

Source§

fn i16x8_eq(&mut self) -> &mut Self

Source§

fn i16x8_ne(&mut self) -> &mut Self

Source§

fn i16x8_lt_s(&mut self) -> &mut Self

Source§

fn i16x8_lt_u(&mut self) -> &mut Self

Source§

fn i16x8_gt_s(&mut self) -> &mut Self

Source§

fn i16x8_gt_u(&mut self) -> &mut Self

Source§

fn i16x8_le_s(&mut self) -> &mut Self

Source§

fn i16x8_le_u(&mut self) -> &mut Self

Source§

fn i16x8_ge_s(&mut self) -> &mut Self

Source§

fn i16x8_ge_u(&mut self) -> &mut Self

Source§

fn i32x4_eq(&mut self) -> &mut Self

Source§

fn i32x4_ne(&mut self) -> &mut Self

Source§

fn i32x4_lt_s(&mut self) -> &mut Self

Source§

fn i32x4_lt_u(&mut self) -> &mut Self

Source§

fn i32x4_gt_s(&mut self) -> &mut Self

Source§

fn i32x4_gt_u(&mut self) -> &mut Self

Source§

fn i32x4_le_s(&mut self) -> &mut Self

Source§

fn i32x4_le_u(&mut self) -> &mut Self

Source§

fn i32x4_ge_s(&mut self) -> &mut Self

Source§

fn i32x4_ge_u(&mut self) -> &mut Self

Source§

fn i64x2_eq(&mut self) -> &mut Self

Source§

fn i64x2_ne(&mut self) -> &mut Self

Source§

fn i64x2_lt_s(&mut self) -> &mut Self

Source§

fn i64x2_gt_s(&mut self) -> &mut Self

Source§

fn i64x2_le_s(&mut self) -> &mut Self

Source§

fn i64x2_ge_s(&mut self) -> &mut Self

Source§

fn f32x4_eq(&mut self) -> &mut Self

Source§

fn f32x4_ne(&mut self) -> &mut Self

Source§

fn f32x4_lt(&mut self) -> &mut Self

Source§

fn f32x4_gt(&mut self) -> &mut Self

Source§

fn f32x4_le(&mut self) -> &mut Self

Source§

fn f32x4_ge(&mut self) -> &mut Self

Source§

fn f64x2_eq(&mut self) -> &mut Self

Source§

fn f64x2_ne(&mut self) -> &mut Self

Source§

fn f64x2_lt(&mut self) -> &mut Self

Source§

fn f64x2_gt(&mut self) -> &mut Self

Source§

fn f64x2_le(&mut self) -> &mut Self

Source§

fn f64x2_ge(&mut self) -> &mut Self

Source§

fn v128_not(&mut self) -> &mut Self

Source§

fn v128_and(&mut self) -> &mut Self

Source§

fn v128_and_not(&mut self) -> &mut Self

Source§

fn v128_or(&mut self) -> &mut Self

Source§

fn v128_xor(&mut self) -> &mut Self

Source§

fn v128_bitselect(&mut self) -> &mut Self

Source§

fn v128_any_true(&mut self) -> &mut Self

Source§

fn i8x16_abs(&mut self) -> &mut Self

Source§

fn i8x16_neg(&mut self) -> &mut Self

Source§

fn i8x16_popcnt(&mut self) -> &mut Self

Source§

fn i8x16_all_true(&mut self) -> &mut Self

Source§

fn i8x16_bitmask(&mut self) -> &mut Self

Source§

fn i8x16_narrow_i16x8_s(&mut self) -> &mut Self

Source§

fn i8x16_narrow_i16x8_u(&mut self) -> &mut Self

Source§

fn i8x16_shl(&mut self) -> &mut Self

Source§

fn i8x16_shr_s(&mut self) -> &mut Self

Source§

fn i8x16_shr_u(&mut self) -> &mut Self

Source§

fn i8x16_add(&mut self) -> &mut Self

Source§

fn i8x16_add_sat_s(&mut self) -> &mut Self

Source§

fn i8x16_add_sat_u(&mut self) -> &mut Self

Source§

fn i8x16_sub(&mut self) -> &mut Self

Source§

fn i8x16_sub_sat_s(&mut self) -> &mut Self

Source§

fn i8x16_sub_sat_u(&mut self) -> &mut Self

Source§

fn i8x16_min_s(&mut self) -> &mut Self

Source§

fn i8x16_min_u(&mut self) -> &mut Self

Source§

fn i8x16_max_s(&mut self) -> &mut Self

Source§

fn i8x16_max_u(&mut self) -> &mut Self

Source§

fn i8x16_avgr_u(&mut self) -> &mut Self

Source§

fn i16x8_ext_add_pairwise_i8x16_s(&mut self) -> &mut Self

Source§

fn i16x8_ext_add_pairwise_i8x16_u(&mut self) -> &mut Self

Source§

fn i16x8_abs(&mut self) -> &mut Self

Source§

fn i16x8_neg(&mut self) -> &mut Self

Source§

fn i16x8_q15_mulr_sat_s(&mut self) -> &mut Self

Source§

fn i16x8_all_true(&mut self) -> &mut Self

Source§

fn i16x8_bitmask(&mut self) -> &mut Self

Source§

fn i16x8_narrow_i32x4_s(&mut self) -> &mut Self

Source§

fn i16x8_narrow_i32x4_u(&mut self) -> &mut Self

Source§

fn i16x8_extend_low_i8x16_s(&mut self) -> &mut Self

Source§

fn i16x8_extend_high_i8x16_s(&mut self) -> &mut Self

Source§

fn i16x8_extend_low_i8x16_u(&mut self) -> &mut Self

Source§

fn i16x8_extend_high_i8x16_u(&mut self) -> &mut Self

Source§

fn i16x8_shl(&mut self) -> &mut Self

Source§

fn i16x8_shr_s(&mut self) -> &mut Self

Source§

fn i16x8_shr_u(&mut self) -> &mut Self

Source§

fn i16x8_add(&mut self) -> &mut Self

Source§

fn i16x8_add_sat_s(&mut self) -> &mut Self

Source§

fn i16x8_add_sat_u(&mut self) -> &mut Self

Source§

fn i16x8_sub(&mut self) -> &mut Self

Source§

fn i16x8_sub_sat_s(&mut self) -> &mut Self

Source§

fn i16x8_sub_sat_u(&mut self) -> &mut Self

Source§

fn i16x8_mul(&mut self) -> &mut Self

Source§

fn i16x8_min_s(&mut self) -> &mut Self

Source§

fn i16x8_min_u(&mut self) -> &mut Self

Source§

fn i16x8_max_s(&mut self) -> &mut Self

Source§

fn i16x8_max_u(&mut self) -> &mut Self

Source§

fn i16x8_avgr_u(&mut self) -> &mut Self

Source§

fn i16x8_ext_mul_low_i8x16_s(&mut self) -> &mut Self

Source§

fn i16x8_ext_mul_high_i8x16_s(&mut self) -> &mut Self

Source§

fn i16x8_ext_mul_low_i8x16_u(&mut self) -> &mut Self

Source§

fn i16x8_ext_mul_high_i8x16_u(&mut self) -> &mut Self

Source§

fn i32x4_ext_add_pairwise_i16x8_s(&mut self) -> &mut Self

Source§

fn i32x4_ext_add_pairwise_i16x8_u(&mut self) -> &mut Self

Source§

fn i32x4_abs(&mut self) -> &mut Self

Source§

fn i32x4_neg(&mut self) -> &mut Self

Source§

fn i32x4_all_true(&mut self) -> &mut Self

Source§

fn i32x4_bitmask(&mut self) -> &mut Self

Source§

fn i32x4_extend_low_i16x8_s(&mut self) -> &mut Self

Source§

fn i32x4_extend_high_i16x8_s(&mut self) -> &mut Self

Source§

fn i32x4_extend_low_i16x8_u(&mut self) -> &mut Self

Source§

fn i32x4_extend_high_i16x8_u(&mut self) -> &mut Self

Source§

fn i32x4_shl(&mut self) -> &mut Self

Source§

fn i32x4_shr_s(&mut self) -> &mut Self

Source§

fn i32x4_shr_u(&mut self) -> &mut Self

Source§

fn i32x4_add(&mut self) -> &mut Self

Source§

fn i32x4_sub(&mut self) -> &mut Self

Source§

fn i32x4_mul(&mut self) -> &mut Self

Source§

fn i32x4_min_s(&mut self) -> &mut Self

Source§

fn i32x4_min_u(&mut self) -> &mut Self

Source§

fn i32x4_max_s(&mut self) -> &mut Self

Source§

fn i32x4_max_u(&mut self) -> &mut Self

Source§

fn i32x4_dot_i16x8_s(&mut self) -> &mut Self

Source§

fn i32x4_ext_mul_low_i16x8_s(&mut self) -> &mut Self

Source§

fn i32x4_ext_mul_high_i16x8_s(&mut self) -> &mut Self

Source§

fn i32x4_ext_mul_low_i16x8_u(&mut self) -> &mut Self

Source§

fn i32x4_ext_mul_high_i16x8_u(&mut self) -> &mut Self

Source§

fn i64x2_abs(&mut self) -> &mut Self

Source§

fn i64x2_neg(&mut self) -> &mut Self

Source§

fn i64x2_all_true(&mut self) -> &mut Self

Source§

fn i64x2_bitmask(&mut self) -> &mut Self

Source§

fn i64x2_extend_low_i32x4_s(&mut self) -> &mut Self

Source§

fn i64x2_extend_high_i32x4_s(&mut self) -> &mut Self

Source§

fn i64x2_extend_low_i32x4_u(&mut self) -> &mut Self

Source§

fn i64x2_extend_high_i32x4_u(&mut self) -> &mut Self

Source§

fn i64x2_shl(&mut self) -> &mut Self

Source§

fn i64x2_shr_s(&mut self) -> &mut Self

Source§

fn i64x2_shr_u(&mut self) -> &mut Self

Source§

fn i64x2_add(&mut self) -> &mut Self

Source§

fn i64x2_sub(&mut self) -> &mut Self

Source§

fn i64x2_mul(&mut self) -> &mut Self

Source§

fn i64x2_ext_mul_low_i32x4_s(&mut self) -> &mut Self

Source§

fn i64x2_ext_mul_high_i32x4_s(&mut self) -> &mut Self

Source§

fn i64x2_ext_mul_low_i32x4_u(&mut self) -> &mut Self

Source§

fn i64x2_ext_mul_high_i32x4_u(&mut self) -> &mut Self

Source§

fn f32x4_ceil(&mut self) -> &mut Self

Source§

fn f32x4_floor(&mut self) -> &mut Self

Source§

fn f32x4_trunc(&mut self) -> &mut Self

Source§

fn f32x4_nearest(&mut self) -> &mut Self

Source§

fn f32x4_abs(&mut self) -> &mut Self

Source§

fn f32x4_neg(&mut self) -> &mut Self

Source§

fn f32x4_sqrt(&mut self) -> &mut Self

Source§

fn f32x4_add(&mut self) -> &mut Self

Source§

fn f32x4_sub(&mut self) -> &mut Self

Source§

fn f32x4_mul(&mut self) -> &mut Self

Source§

fn f32x4_div(&mut self) -> &mut Self

Source§

fn f32x4_min(&mut self) -> &mut Self

Source§

fn f32x4_max(&mut self) -> &mut Self

Source§

fn f32x4_p_min(&mut self) -> &mut Self

Source§

fn f32x4_p_max(&mut self) -> &mut Self

Source§

fn f64x2_ceil(&mut self) -> &mut Self

Source§

fn f64x2_floor(&mut self) -> &mut Self

Source§

fn f64x2_trunc(&mut self) -> &mut Self

Source§

fn f64x2_nearest(&mut self) -> &mut Self

Source§

fn f64x2_abs(&mut self) -> &mut Self

Source§

fn f64x2_neg(&mut self) -> &mut Self

Source§

fn f64x2_sqrt(&mut self) -> &mut Self

Source§

fn f64x2_add(&mut self) -> &mut Self

Source§

fn f64x2_sub(&mut self) -> &mut Self

Source§

fn f64x2_mul(&mut self) -> &mut Self

Source§

fn f64x2_div(&mut self) -> &mut Self

Source§

fn f64x2_min(&mut self) -> &mut Self

Source§

fn f64x2_max(&mut self) -> &mut Self

Source§

fn f64x2_p_min(&mut self) -> &mut Self

Source§

fn f64x2_p_max(&mut self) -> &mut Self

Source§

fn i32x4_trunc_sat_f32x4_s(&mut self) -> &mut Self

Source§

fn i32x4_trunc_sat_f32x4_u(&mut self) -> &mut Self

Source§

fn f32x4_convert_i32x4_s(&mut self) -> &mut Self

Source§

fn f32x4_convert_i32x4_u(&mut self) -> &mut Self

Source§

fn i32x4_trunc_sat_f64x2_s_zero(&mut self) -> &mut Self

Source§

fn i32x4_trunc_sat_f64x2_u_zero(&mut self) -> &mut Self

Source§

fn f64x2_convert_low_i32x4_s(&mut self) -> &mut Self

Source§

fn f64x2_convert_low_i32x4_u(&mut self) -> &mut Self

Source§

fn f32x4_demote_f64x2_zero(&mut self) -> &mut Self

Source§

fn f64x2_promote_low_f32x4(&mut self) -> &mut Self

Source§

fn i8x16_relaxed_swizzle(&mut self) -> &mut Self

Source§

fn i32x4_relaxed_trunc_f32x4_s(&mut self) -> &mut Self

Source§

fn i32x4_relaxed_trunc_f32x4_u(&mut self) -> &mut Self

Source§

fn i32x4_relaxed_trunc_f64x2_s_zero(&mut self) -> &mut Self

Source§

fn i32x4_relaxed_trunc_f64x2_u_zero(&mut self) -> &mut Self

Source§

fn f32x4_relaxed_madd(&mut self) -> &mut Self

Source§

fn f32x4_relaxed_nmadd(&mut self) -> &mut Self

Source§

fn f64x2_relaxed_madd(&mut self) -> &mut Self

Source§

fn f64x2_relaxed_nmadd(&mut self) -> &mut Self

Source§

fn i8x16_relaxed_laneselect(&mut self) -> &mut Self

Source§

fn i16x8_relaxed_laneselect(&mut self) -> &mut Self

Source§

fn i32x4_relaxed_laneselect(&mut self) -> &mut Self

Source§

fn i64x2_relaxed_laneselect(&mut self) -> &mut Self

Source§

fn f32x4_relaxed_min(&mut self) -> &mut Self

Source§

fn f32x4_relaxed_max(&mut self) -> &mut Self

Source§

fn f64x2_relaxed_min(&mut self) -> &mut Self

Source§

fn f64x2_relaxed_max(&mut self) -> &mut Self

Source§

fn i16x8_relaxed_q15mulr_s(&mut self) -> &mut Self

Source§

fn i16x8_relaxed_dot_i8x16_i7x16_s(&mut self) -> &mut Self

Source§

fn i32x4_relaxed_dot_i8x16_i7x16_add_s(&mut self) -> &mut Self

Source§

fn throw(&mut self, tag_index: u32) -> &mut Self

Source§

fn throw_ref(&mut self) -> &mut Self

Source§

fn catch(&mut self, tag_index: u32) -> &mut Self

Source§

fn rethrow(&mut self, relative_depth: u32) -> &mut Self

Source§

fn delegate(&mut self, relative_depth: u32) -> &mut Self

Source§

fn catch_all(&mut self) -> &mut Self

Source§

fn call_ref(&mut self, type_index: TypeID) -> &mut Self

Source§

fn return_call_ref(&mut self, type_index: TypeID) -> &mut Self

Source§

fn ref_as_non_null(&mut self) -> &mut Self

Source§

fn br_on_null(&mut self, relative_depth: u32) -> &mut Self

Source§

fn br_on_non_null(&mut self, relative_depth: u32) -> &mut Self

Source§

fn i64_add128(&mut self) -> &mut Self

Source§

fn i64_sub128(&mut self) -> &mut Self

Source§

fn i64_mul_wide_s(&mut self) -> &mut Self

Source§

fn i64_mul_wide_u(&mut self) -> &mut Self

Source§

fn block(&mut self, block_type: BlockType) -> &mut Self

Inject a block instruction.
Source§

fn loop_stmt(&mut self, block_type: BlockType) -> &mut Self

Inject a loop instruction (loop is a Rust keyword; use loop_stmt).
Source§

fn if_stmt(&mut self, block_type: BlockType) -> &mut Self

Inject an if instruction (if is a Rust keyword; use if_stmt).
Source§

fn else_stmt(&mut self) -> &mut Self

Inject an else instruction (else is a Rust keyword; use else_stmt).
Source§

fn return_stmt(&mut self) -> &mut Self

Inject a return instruction (return is a Rust keyword; use return_stmt).
Source§

fn f32_const(&mut self, val: f32) -> &mut Self

Inject an f32.const instruction from a Rust f32.
Source§

fn f64_const(&mut self, val: f64) -> &mut Self

Inject an f64.const instruction from a Rust f64.
Source§

fn br_table( &mut self, default: u32, labels: impl IntoIterator<Item = u32>, ) -> &mut Self

Inject a br_table instruction with the given target labels and default.
Source§

fn ref_null(&mut self, heap_type: HeapType) -> &mut Self

Inject a ref.null instruction using wirm’s HeapType.
Source§

fn ref_test(&mut self, heap_type: HeapType) -> &mut Self

Inject a ref.test (non-null) instruction.
Source§

fn ref_test_null(&mut self, heap_type: HeapType) -> &mut Self

Inject a ref.test null (nullable) instruction.
Source§

fn ref_cast(&mut self, heap_type: HeapType) -> &mut Self

Inject a ref.cast (non-null) instruction.
Source§

fn ref_cast_null(&mut self, heap_type: HeapType) -> &mut Self

Inject a ref.cast null (nullable) instruction.
Source§

fn ref_cast_desc(&mut self, heap_type: HeapType) -> &mut Self

Inject a ref.cast_desc (non-null) instruction. Custom-descriptors proposal.
Source§

fn ref_cast_desc_null(&mut self, heap_type: HeapType) -> &mut Self

Inject a ref.cast_desc null (nullable) instruction. Custom-descriptors proposal.
Source§

fn typed_select(&mut self, ty: ValType) -> &mut Self

Inject a select instruction annotated with a single value type.
Source§

fn typed_select_multi(&mut self, tys: Vec<ValType>) -> &mut Self

Inject a select instruction annotated with multiple value types.
Source§

fn br_on_cast( &mut self, relative_depth: u32, from_ref_type: RefType, to_ref_type: RefType, ) -> &mut Self

Inject a br_on_cast instruction.
Source§

fn br_on_cast_fail( &mut self, relative_depth: u32, from_ref_type: RefType, to_ref_type: RefType, ) -> &mut Self

Inject a br_on_cast_fail instruction.
Source§

fn br_on_cast_desc( &mut self, relative_depth: u32, from_ref_type: RefType, to_ref_type: RefType, ) -> &mut Self

Inject a br_on_cast_desc instruction. Custom-descriptors proposal.
Source§

fn br_on_cast_desc_fail( &mut self, relative_depth: u32, from_ref_type: RefType, to_ref_type: RefType, ) -> &mut Self

Inject a br_on_cast_desc_fail instruction. Custom-descriptors proposal.
Source§

fn try_table(&mut self, ty: BlockType, catches: Vec<Catch>) -> &mut Self

Inject a try_table instruction with the given block type and catch clauses.
Source§

fn try_stmt(&mut self, block_type: BlockType) -> &mut Self

Inject a legacy try instruction (try is a Rust keyword; use try_stmt). Superseded by try_table in the exception-handling proposal.

Auto Trait Implementations§

§

impl<'a> Freeze for FunctionBuilder<'a>

§

impl<'a> RefUnwindSafe for FunctionBuilder<'a>

§

impl<'a> Send for FunctionBuilder<'a>

§

impl<'a> Sync for FunctionBuilder<'a>

§

impl<'a> Unpin for FunctionBuilder<'a>

§

impl<'a> UnsafeUnpin for FunctionBuilder<'a>

§

impl<'a> UnwindSafe for FunctionBuilder<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.