Enum wasmbin::instructions::Instruction[][src]

#[repr(u8)]
pub enum Instruction {
Show 184 variants Unreachable, Nop, BlockStart(BlockType), LoopStart(BlockType), IfStart(BlockType), IfElse, End, Br(LabelId), BrIf(LabelId), BrTable { branches: Vec<LabelId>, otherwise: LabelId, }, Return, Call(FuncId), CallIndirect(CallIndirect), Drop, Select, SelectWithTypes(Vec<ValueType>), LocalGet(LocalId), LocalSet(LocalId), LocalTee(LocalId), GlobalGet(GlobalId), GlobalSet(GlobalId), TableGet(TableId), TableSet(TableId), I32Load(MemArg), I64Load(MemArg), F32Load(MemArg), F64Load(MemArg), I32Load8S(MemArg), I32Load8U(MemArg), I32Load16S(MemArg), I32Load16U(MemArg), I64Load8S(MemArg), I64Load8U(MemArg), I64Load16S(MemArg), I64Load16U(MemArg), I64Load32S(MemArg), I64Load32U(MemArg), I32Store(MemArg), I64Store(MemArg), F32Store(MemArg), F64Store(MemArg), I32Store8(MemArg), I32Store16(MemArg), I64Store8(MemArg), I64Store16(MemArg), I64Store32(MemArg), MemorySize(MemId), MemoryGrow(MemId), I32Const(i32), I64Const(i64), F32Const(FloatConst<f32>), F64Const(FloatConst<f64>), I32Eqz, I32Eq, I32Ne, I32LtS, I32LtU, I32GtS, I32GtU, I32LeS, I32LeU, I32GeS, I32GeU, I64Eqz, I64Eq, I64Ne, I64LtS, I64LtU, I64GtS, I64GtU, I64LeS, I64LeU, I64GeS, I64GeU, F32Eq, F32Ne, F32Lt, F32Gt, F32Le, F32Ge, F64Eq, F64Ne, F64Lt, F64Gt, F64Le, F64Ge, I32Clz, I32Ctz, I32PopCnt, I32Add, I32Sub, I32Mul, I32DivS, I32DivU, I32RemS, I32RemU, I32And, I32Or, I32Xor, I32Shl, I32ShrS, I32ShrU, I32RotL, I32RotR, I64Clz, I64Ctz, I64PopCnt, I64Add, I64Sub, I64Mul, I64DivS, I64DivU, I64RemS, I64RemU, I64And, I64Or, I64Xor, I64Shl, I64ShrS, I64ShrU, I64RotL, I64RotR, F32Abs, F32Neg, F32Ceil, F32Floor, F32Trunc, F32Nearest, F32Sqrt, F32Add, F32Sub, F32Mul, F32Div, F32Min, F32Max, F32CopySign, F64Abs, F64Neg, F64Ceil, F64Floor, F64Trunc, F64Nearest, F64Sqrt, F64Add, F64Sub, F64Mul, F64Div, F64Min, F64Max, F64CopySign, I32WrapI64, I32TruncF32S, I32TruncF332U, I32TruncF64S, I32TruncF64U, I64ExtendI32S, I64ExtendI32U, I64TruncF32S, I64TruncF32U, I64TruncF64S, I64TruncF64U, F32ConvertI32S, F32ConvertI32U, F32ConvertI64S, F32ConvertI64U, F32DemoteF64, F64ConvertI32S, F64ConvertI32U, F64ConvertI64S, F64ConvertI64U, F64PromoteF32, I32ReinterpretF32, I64ReinterpretF64, F32ReinterpretI32, F64ReinterpretI64, I32Extend8S, I32Extend16S, I64Extend8S, I64Extend16S, I64Extend32S, RefNull(RefType), RefIsNull, RefFunc(FuncId), Misc(Misc),
}

Variants

Unreachable
Nop
BlockStart

Tuple Fields of BlockStart

0: BlockType
LoopStart

Tuple Fields of LoopStart

0: BlockType
IfStart

Tuple Fields of IfStart

0: BlockType
IfElse
End
Br

Tuple Fields of Br

0: LabelId
BrIf

Tuple Fields of BrIf

0: LabelId
BrTable

Fields of BrTable

branches: Vec<LabelId>otherwise: LabelId
Return
Call

Tuple Fields of Call

0: FuncId
CallIndirect

Tuple Fields of CallIndirect

0: CallIndirect
Drop
Select
SelectWithTypes

Tuple Fields of SelectWithTypes

0: Vec<ValueType>
LocalGet

Tuple Fields of LocalGet

0: LocalId
LocalSet

Tuple Fields of LocalSet

0: LocalId
LocalTee

Tuple Fields of LocalTee

0: LocalId
GlobalGet

Tuple Fields of GlobalGet

0: GlobalId
GlobalSet

Tuple Fields of GlobalSet

0: GlobalId
TableGet

Tuple Fields of TableGet

0: TableId
TableSet

Tuple Fields of TableSet

0: TableId
I32Load

Tuple Fields of I32Load

0: MemArg
I64Load

Tuple Fields of I64Load

0: MemArg
F32Load

Tuple Fields of F32Load

0: MemArg
F64Load

Tuple Fields of F64Load

0: MemArg
I32Load8S

Tuple Fields of I32Load8S

0: MemArg
I32Load8U

Tuple Fields of I32Load8U

0: MemArg
I32Load16S

Tuple Fields of I32Load16S

0: MemArg
I32Load16U

Tuple Fields of I32Load16U

0: MemArg
I64Load8S

Tuple Fields of I64Load8S

0: MemArg
I64Load8U

Tuple Fields of I64Load8U

0: MemArg
I64Load16S

Tuple Fields of I64Load16S

0: MemArg
I64Load16U

Tuple Fields of I64Load16U

0: MemArg
I64Load32S

Tuple Fields of I64Load32S

0: MemArg
I64Load32U

Tuple Fields of I64Load32U

0: MemArg
I32Store

Tuple Fields of I32Store

0: MemArg
I64Store

Tuple Fields of I64Store

0: MemArg
F32Store

Tuple Fields of F32Store

0: MemArg
F64Store

Tuple Fields of F64Store

0: MemArg
I32Store8

Tuple Fields of I32Store8

0: MemArg
I32Store16

Tuple Fields of I32Store16

0: MemArg
I64Store8

Tuple Fields of I64Store8

0: MemArg
I64Store16

Tuple Fields of I64Store16

0: MemArg
I64Store32

Tuple Fields of I64Store32

0: MemArg
MemorySize

Tuple Fields of MemorySize

0: MemId
MemoryGrow

Tuple Fields of MemoryGrow

0: MemId
I32Const

Tuple Fields of I32Const

0: i32
I64Const

Tuple Fields of I64Const

0: i64
F32Const

Tuple Fields of F32Const

0: FloatConst<f32>
F64Const

Tuple Fields of F64Const

0: FloatConst<f64>
I32Eqz
I32Eq
I32Ne
I32LtS
I32LtU
I32GtS
I32GtU
I32LeS
I32LeU
I32GeS
I32GeU
I64Eqz
I64Eq
I64Ne
I64LtS
I64LtU
I64GtS
I64GtU
I64LeS
I64LeU
I64GeS
I64GeU
F32Eq
F32Ne
F32Lt
F32Gt
F32Le
F32Ge
F64Eq
F64Ne
F64Lt
F64Gt
F64Le
F64Ge
I32Clz
I32Ctz
I32PopCnt
I32Add
I32Sub
I32Mul
I32DivS
I32DivU
I32RemS
I32RemU
I32And
I32Or
I32Xor
I32Shl
I32ShrS
I32ShrU
I32RotL
I32RotR
I64Clz
I64Ctz
I64PopCnt
I64Add
I64Sub
I64Mul
I64DivS
I64DivU
I64RemS
I64RemU
I64And
I64Or
I64Xor
I64Shl
I64ShrS
I64ShrU
I64RotL
I64RotR
F32Abs
F32Neg
F32Ceil
F32Floor
F32Trunc
F32Nearest
F32Sqrt
F32Add
F32Sub
F32Mul
F32Div
F32Min
F32Max
F32CopySign
F64Abs
F64Neg
F64Ceil
F64Floor
F64Trunc
F64Nearest
F64Sqrt
F64Add
F64Sub
F64Mul
F64Div
F64Min
F64Max
F64CopySign
I32WrapI64
I32TruncF32S
I32TruncF332U
I32TruncF64S
I32TruncF64U
I64ExtendI32S
I64ExtendI32U
I64TruncF32S
I64TruncF32U
I64TruncF64S
I64TruncF64U
F32ConvertI32S
F32ConvertI32U
F32ConvertI64S
F32ConvertI64U
F32DemoteF64
F64ConvertI32S
F64ConvertI32U
F64ConvertI64S
F64ConvertI64U
F64PromoteF32
I32ReinterpretF32
I64ReinterpretF64
F32ReinterpretI32
F64ReinterpretI64
I32Extend8S
I32Extend16S
I64Extend8S
I64Extend16S
I64Extend32S
RefNull

Tuple Fields of RefNull

0: RefType
RefIsNull
RefFunc

Tuple Fields of RefFunc

0: FuncId
Misc

Tuple Fields of Misc

0: Misc

Trait Implementations

Generate an arbitrary value of Self from the given unstructured data. Read more

Generate an arbitrary value of Self from the entirety of the given unstructured data. Read more

Get a size hint for how many bytes out of an Unstructured this type needs to construct itself. Read more

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Feeds this value into the given Hasher. Read more

Feeds a slice of this type into the given Hasher. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.