pub struct Compiler<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> { /* private fields */ }Trait Implementations§
Source§impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> BaseVisitor for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> BaseVisitor for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
type Error = ValidationError
type State = TextBuilder<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
fn unreachable(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn nop(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_load( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i64_load( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn f32_load( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn f64_load( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i32_load8_s( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i32_load8_u( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i32_load16_s( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i32_load16_u( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i64_load8_s( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i64_load8_u( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i64_load16_s( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i64_load16_u( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i64_load32_s( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i64_load32_u( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i32_store( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i64_store( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn f32_store( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn f64_store( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i32_store8( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i32_store16( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i64_store8( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i64_store16( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i64_store32( &self, m: MemArg, state: &mut Self::State, ) -> Result<(), Self::Error>
fn memory_size(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn memory_grow(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_const(&self, n: i32, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_const(&self, n: i64, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_const(&self, z: f32, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_const(&self, z: f64, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_eqz(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_eq(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_ne(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_lt_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_lt_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_gt_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_gt_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_le_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_le_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_ge_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_ge_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_eqz(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_eq(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_ne(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_lt_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_lt_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_gt_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_gt_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_le_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_le_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_ge_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_ge_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_eq(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_ne(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_lt(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_gt(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_le(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_ge(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_eq(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_ne(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_lt(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_gt(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_le(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_ge(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_clz(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_ctz(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_popcnt(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_add(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_sub(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_mul(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_div_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_div_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_rem_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_rem_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_and(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_or(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_xor(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_shl(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_shr_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_shr_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_rotl(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_rotr(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_clz(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_ctz(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_popcnt(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_add(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_sub(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_mul(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_div_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_div_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_rem_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_rem_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_and(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_or(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_xor(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_shl(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_shr_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_shr_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_rotl(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_rotr(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_abs(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_neg(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_ceil(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_floor(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_trunc(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_nearest(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_sqrt(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_add(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_sub(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_mul(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_div(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_min(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_max(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_copysign(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_abs(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_neg(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_ceil(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_floor(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_trunc(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_nearest(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_sqrt(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_add(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_sub(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_mul(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_div(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_min(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_max(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_copysign(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_wrap_i64(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_trunc_f32_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_trunc_f32_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_trunc_f64_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i32_trunc_f64_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_extend_i32_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_extend_i32_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_trunc_f32_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_trunc_f32_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_trunc_f64_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn i64_trunc_f64_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_convert_i32_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_convert_i32_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_convert_i64_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_convert_i64_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f32_demote_f64(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_convert_i32_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_convert_i32_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_convert_i64_s(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_convert_i64_u(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn f64_promote_f32(&self, state: &mut Self::State) -> Result<(), Self::Error>
Source§impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> Default for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> Default for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
Source§impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> WasmVisitor for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> WasmVisitor for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
fn drop(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn select(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn enter_block( &self, block_type: ResultType, state: &mut Self::State, ) -> Result<(), Self::Error>
fn exit_block(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn finish(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn loop_( &self, block_type: ResultType, state: &mut Self::State, ) -> Result<(), Self::Error>
fn if_( &self, block_type: ResultType, state: &mut Self::State, ) -> Result<(), Self::Error>
fn else_(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn br(&self, l: LabelIdx, state: &mut Self::State) -> Result<(), Self::Error>
fn br_if(&self, l: LabelIdx, state: &mut Self::State) -> Result<(), Self::Error>
fn br_table_start( &self, len: u32, state: &mut Self::State, ) -> Result<(), Self::Error>
fn br_table_branch( &self, br: LabelIdx, state: &mut Self::State, ) -> Result<(), Self::Error>
fn br_table_finish( &self, default_: LabelIdx, state: &mut Self::State, ) -> Result<(), Self::Error>
fn return_(&self, state: &mut Self::State) -> Result<(), Self::Error>
fn call(&self, x: FuncIdx, state: &mut Self::State) -> Result<(), Self::Error>
fn call_indirect( &self, x: TypeIdx, state: &mut Self::State, ) -> Result<(), Self::Error>
fn local_get( &self, x: LocalIdx, state: &mut Self::State, ) -> Result<(), Self::Error>
fn local_set( &self, x: LocalIdx, state: &mut Self::State, ) -> Result<(), Self::Error>
fn local_tee( &self, x: LocalIdx, state: &mut Self::State, ) -> Result<(), Self::Error>
fn global_get( &self, x: GlobalIdx, state: &mut Self::State, ) -> Result<(), Self::Error>
fn global_set( &self, x: GlobalIdx, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i32_reinterpret_f32( &self, state: &mut Self::State, ) -> Result<(), Self::Error>
fn f64_reinterpret_i64( &self, state: &mut Self::State, ) -> Result<(), Self::Error>
fn f32_reinterpret_i32( &self, state: &mut Self::State, ) -> Result<(), Self::Error>
fn i64_reinterpret_f64( &self, state: &mut Self::State, ) -> Result<(), Self::Error>
Auto Trait Implementations§
impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> Freeze for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> RefUnwindSafe for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> Send for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> Sync for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> Unpin for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> UnsafeUnpin for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
impl<'a, const MAX_CONTROL_FRAMES: usize, const MAX_STACK_DEPTH: usize> UnwindSafe for Compiler<'a, MAX_CONTROL_FRAMES, MAX_STACK_DEPTH>
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