InternalOpcode

Enum InternalOpcode 

Source
#[repr(u8)]
pub enum InternalOpcode {
Show 101 variants Unreachable = 0, If = 1, Br = 2, BrIf = 3, BrTable = 4, BrTableCarry = 5, Return = 6, Call = 7, TickEnergy = 8, CallIndirect = 9, Select = 10, GlobalGet = 11, GlobalSet = 12, I32Load = 13, I64Load = 14, I32Load8S = 15, I32Load8U = 16, I32Load16S = 17, I32Load16U = 18, I64Load8S = 19, I64Load8U = 20, I64Load16S = 21, I64Load16U = 22, I64Load32S = 23, I64Load32U = 24, I32Store = 25, I64Store = 26, I32Store8 = 27, I32Store16 = 28, I64Store8 = 29, I64Store16 = 30, I64Store32 = 31, MemorySize = 32, MemoryGrow = 33, I32Eqz = 34, I32Eq = 35, I32Ne = 36, I32LtS = 37, I32LtU = 38, I32GtS = 39, I32GtU = 40, I32LeS = 41, I32LeU = 42, I32GeS = 43, I32GeU = 44, I64Eqz = 45, I64Eq = 46, I64Ne = 47, I64LtS = 48, I64LtU = 49, I64GtS = 50, I64GtU = 51, I64LeS = 52, I64LeU = 53, I64GeS = 54, I64GeU = 55, I32Clz = 56, I32Ctz = 57, I32Popcnt = 58, I32Add = 59, I32Sub = 60, I32Mul = 61, I32DivS = 62, I32DivU = 63, I32RemS = 64, I32RemU = 65, I32And = 66, I32Or = 67, I32Xor = 68, I32Shl = 69, I32ShrS = 70, I32ShrU = 71, I32Rotl = 72, I32Rotr = 73, I64Clz = 74, I64Ctz = 75, I64Popcnt = 76, I64Add = 77, I64Sub = 78, I64Mul = 79, I64DivS = 80, I64DivU = 81, I64RemS = 82, I64RemU = 83, I64And = 84, I64Or = 85, I64Xor = 86, I64Shl = 87, I64ShrS = 88, I64ShrU = 89, I64Rotl = 90, I64Rotr = 91, I32WrapI64 = 92, I64ExtendI32S = 93, I64ExtendI32U = 94, I32Extend8S = 95, I32Extend16S = 96, I64Extend8S = 97, I64Extend16S = 98, I64Extend32S = 99, Copy = 100,
}
Expand description

Internal opcode. This is mostly the same as OpCode, but with control instructions resolved to jumps in the instruction sequence, and function calls processed.

Variants§

§

Unreachable = 0

§

If = 1

§

Br = 2

§

BrIf = 3

§

BrTable = 4

§

BrTableCarry = 5

§

Return = 6

§

Call = 7

§

TickEnergy = 8

§

CallIndirect = 9

§

Select = 10

§

GlobalGet = 11

§

GlobalSet = 12

§

I32Load = 13

§

I64Load = 14

§

I32Load8S = 15

§

I32Load8U = 16

§

I32Load16S = 17

§

I32Load16U = 18

§

I64Load8S = 19

§

I64Load8U = 20

§

I64Load16S = 21

§

I64Load16U = 22

§

I64Load32S = 23

§

I64Load32U = 24

§

I32Store = 25

§

I64Store = 26

§

I32Store8 = 27

§

I32Store16 = 28

§

I64Store8 = 29

§

I64Store16 = 30

§

I64Store32 = 31

§

MemorySize = 32

§

MemoryGrow = 33

§

I32Eqz = 34

§

I32Eq = 35

§

I32Ne = 36

§

I32LtS = 37

§

I32LtU = 38

§

I32GtS = 39

§

I32GtU = 40

§

I32LeS = 41

§

I32LeU = 42

§

I32GeS = 43

§

I32GeU = 44

§

I64Eqz = 45

§

I64Eq = 46

§

I64Ne = 47

§

I64LtS = 48

§

I64LtU = 49

§

I64GtS = 50

§

I64GtU = 51

§

I64LeS = 52

§

I64LeU = 53

§

I64GeS = 54

§

I64GeU = 55

§

I32Clz = 56

§

I32Ctz = 57

§

I32Popcnt = 58

§

I32Add = 59

§

I32Sub = 60

§

I32Mul = 61

§

I32DivS = 62

§

I32DivU = 63

§

I32RemS = 64

§

I32RemU = 65

§

I32And = 66

§

I32Or = 67

§

I32Xor = 68

§

I32Shl = 69

§

I32ShrS = 70

§

I32ShrU = 71

§

I32Rotl = 72

§

I32Rotr = 73

§

I64Clz = 74

§

I64Ctz = 75

§

I64Popcnt = 76

§

I64Add = 77

§

I64Sub = 78

§

I64Mul = 79

§

I64DivS = 80

§

I64DivU = 81

§

I64RemS = 82

§

I64RemU = 83

§

I64And = 84

§

I64Or = 85

§

I64Xor = 86

§

I64Shl = 87

§

I64ShrS = 88

§

I64ShrU = 89

§

I64Rotl = 90

§

I64Rotr = 91

§

I32WrapI64 = 92

§

I64ExtendI32S = 93

§

I64ExtendI32U = 94

§

I32Extend8S = 95

§

I32Extend16S = 96

§

I64Extend8S = 97

§

I64Extend16S = 98

§

I64Extend32S = 99

§

Copy = 100

Trait Implementations§

Source§

impl Debug for InternalOpcode

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl TryFrom<u8> for InternalOpcode

Source§

type Error = TryFromPrimitiveError<InternalOpcode>

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

fn try_from(number: u8) -> Result<Self, TryFromPrimitiveError<Self>>

Performs the conversion.
Source§

impl TryFromPrimitive for InternalOpcode

Source§

const NAME: &'static str = "InternalOpcode"

Source§

type Primitive = u8

Source§

fn try_from_primitive( number: Self::Primitive, ) -> Result<Self, TryFromPrimitiveError<Self>>

Auto Trait Implementations§

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> Same for T

Source§

type Output = T

Should always be Self
Source§

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

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.