#[repr(u32)]pub enum Bytecode {
Show 68 variants
Nop = 0,
LoadValue = 1,
LoadMemory = 2,
LoadReg = 3,
LoadFromRegMemory = 4,
Store = 5,
StoreValue = 6,
StoreAtReg = 7,
StoreValueAtReg = 8,
PushValue = 9,
PushReg = 10,
Pop = 11,
Add = 17,
AddValue = 18,
FAdd = 19,
FAddValue = 20,
Sub = 21,
SubValue = 22,
FSub = 23,
FSubValue = 24,
Mul = 25,
MulValue = 26,
FMul = 27,
FMulValue = 28,
Div = 29,
DivValue = 30,
FDiv = 31,
FDivValue = 32,
And = 112,
AndValue = 113,
Or = 114,
OrValue = 115,
Xor = 116,
XorValue = 117,
Not = 118,
ShiftLeft = 119,
ShiftLeftValue = 120,
ShiftRight = 121,
ShiftRightValue = 122,
LoadByte = 176,
StoreByte = 177,
Jmp = 3_072,
Cmp = 3_073,
CmpValue = 3_074,
FCmp = 3_075,
FCmpValue = 3_076,
Je = 3_077,
Jne = 3_078,
Jg = 3_079,
Jge = 3_080,
Jl = 3_081,
Jle = 3_082,
Ja = 3_083,
Jae = 3_084,
Jb = 3_085,
Jbe = 3_086,
Jc = 3_087,
Jnc = 3_088,
Jo = 3_089,
Jno = 3_090,
Js = 3_091,
Jns = 3_092,
Jxcz = 3_327,
Call = 240,
Ret = 241,
Syscall = 242,
Inspect = 4_294_967_280,
Halt = 4_294_967_295,
}Variants§
Nop = 0
LoadValue = 1
LoadMemory = 2
LoadReg = 3
LoadFromRegMemory = 4
Store = 5
StoreValue = 6
StoreAtReg = 7
StoreValueAtReg = 8
PushValue = 9
PushReg = 10
Pop = 11
Add = 17
AddValue = 18
FAdd = 19
FAddValue = 20
Sub = 21
SubValue = 22
FSub = 23
FSubValue = 24
Mul = 25
MulValue = 26
FMul = 27
FMulValue = 28
Div = 29
DivValue = 30
FDiv = 31
FDivValue = 32
And = 112
AndValue = 113
Or = 114
OrValue = 115
Xor = 116
XorValue = 117
Not = 118
ShiftLeft = 119
ShiftLeftValue = 120
ShiftRight = 121
ShiftRightValue = 122
LoadByte = 176
StoreByte = 177
Jmp = 3_072
Cmp = 3_073
CmpValue = 3_074
FCmp = 3_075
FCmpValue = 3_076
Je = 3_077
Jne = 3_078
Jg = 3_079
Jge = 3_080
Jl = 3_081
Jle = 3_082
Ja = 3_083
Jae = 3_084
Jb = 3_085
Jbe = 3_086
Jc = 3_087
Jnc = 3_088
Jo = 3_089
Jno = 3_090
Js = 3_091
Jns = 3_092
Jxcz = 3_327
Call = 240
Ret = 241
Syscall = 242
Inspect = 4_294_967_280
Halt = 4_294_967_295
Trait Implementations§
Source§impl FromPrimitive for Bytecode
impl FromPrimitive for Bytecode
Source§fn from_i64(n: i64) -> Option<Self>
fn from_i64(n: i64) -> Option<Self>
Converts an
i64 to return an optional value of this type. If the
value cannot be represented by this type, then None is returned.Source§fn from_u64(n: u64) -> Option<Self>
fn from_u64(n: u64) -> Option<Self>
Converts an
u64 to return an optional value of this type. If the
value cannot be represented by this type, then None is returned.Source§fn from_isize(n: isize) -> Option<Self>
fn from_isize(n: isize) -> Option<Self>
Converts an
isize to return an optional value of this type. If the
value cannot be represented by this type, then None is returned.Source§fn from_i8(n: i8) -> Option<Self>
fn from_i8(n: i8) -> Option<Self>
Converts an
i8 to return an optional value of this type. If the
value cannot be represented by this type, then None is returned.Source§fn from_i16(n: i16) -> Option<Self>
fn from_i16(n: i16) -> Option<Self>
Converts an
i16 to return an optional value of this type. If the
value cannot be represented by this type, then None is returned.Source§fn from_i32(n: i32) -> Option<Self>
fn from_i32(n: i32) -> Option<Self>
Converts an
i32 to return an optional value of this type. If the
value cannot be represented by this type, then None is returned.Source§fn from_i128(n: i128) -> Option<Self>
fn from_i128(n: i128) -> Option<Self>
Converts an
i128 to return an optional value of this type. If the
value cannot be represented by this type, then None is returned. Read moreSource§fn from_usize(n: usize) -> Option<Self>
fn from_usize(n: usize) -> Option<Self>
Converts a
usize to return an optional value of this type. If the
value cannot be represented by this type, then None is returned.Source§fn from_u8(n: u8) -> Option<Self>
fn from_u8(n: u8) -> Option<Self>
Converts an
u8 to return an optional value of this type. If the
value cannot be represented by this type, then None is returned.Source§fn from_u16(n: u16) -> Option<Self>
fn from_u16(n: u16) -> Option<Self>
Converts an
u16 to return an optional value of this type. If the
value cannot be represented by this type, then None is returned.Source§fn from_u32(n: u32) -> Option<Self>
fn from_u32(n: u32) -> Option<Self>
Converts an
u32 to return an optional value of this type. If the
value cannot be represented by this type, then None is returned.Source§fn from_u128(n: u128) -> Option<Self>
fn from_u128(n: u128) -> Option<Self>
Converts an
u128 to return an optional value of this type. If the
value cannot be represented by this type, then None is returned. Read moreSource§impl IntoEnumIterator for Bytecode
impl IntoEnumIterator for Bytecode
type Iterator = BytecodeIter
fn iter() -> BytecodeIter ⓘ
Source§impl Ord for Bytecode
impl Ord for Bytecode
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialOrd for Bytecode
impl PartialOrd for Bytecode
Source§impl ToPrimitive for Bytecode
impl ToPrimitive for Bytecode
Source§fn to_i64(&self) -> Option<i64>
fn to_i64(&self) -> Option<i64>
Converts the value of
self to an i64. If the value cannot be
represented by an i64, then None is returned.Source§fn to_u64(&self) -> Option<u64>
fn to_u64(&self) -> Option<u64>
Converts the value of
self to a u64. If the value cannot be
represented by a u64, then None is returned.Source§fn to_isize(&self) -> Option<isize>
fn to_isize(&self) -> Option<isize>
Converts the value of
self to an isize. If the value cannot be
represented by an isize, then None is returned.Source§fn to_i8(&self) -> Option<i8>
fn to_i8(&self) -> Option<i8>
Converts the value of
self to an i8. If the value cannot be
represented by an i8, then None is returned.Source§fn to_i16(&self) -> Option<i16>
fn to_i16(&self) -> Option<i16>
Converts the value of
self to an i16. If the value cannot be
represented by an i16, then None is returned.Source§fn to_i32(&self) -> Option<i32>
fn to_i32(&self) -> Option<i32>
Converts the value of
self to an i32. If the value cannot be
represented by an i32, then None is returned.Source§fn to_i128(&self) -> Option<i128>
fn to_i128(&self) -> Option<i128>
Converts the value of
self to an i128. If the value cannot be
represented by an i128 (i64 under the default implementation), then
None is returned. Read moreSource§fn to_usize(&self) -> Option<usize>
fn to_usize(&self) -> Option<usize>
Converts the value of
self to a usize. If the value cannot be
represented by a usize, then None is returned.Source§fn to_u8(&self) -> Option<u8>
fn to_u8(&self) -> Option<u8>
Converts the value of
self to a u8. If the value cannot be
represented by a u8, then None is returned.Source§fn to_u16(&self) -> Option<u16>
fn to_u16(&self) -> Option<u16>
Converts the value of
self to a u16. If the value cannot be
represented by a u16, then None is returned.Source§fn to_u32(&self) -> Option<u32>
fn to_u32(&self) -> Option<u32>
Converts the value of
self to a u32. If the value cannot be
represented by a u32, then None is returned.Source§fn to_u128(&self) -> Option<u128>
fn to_u128(&self) -> Option<u128>
Converts the value of
self to a u128. If the value cannot be
represented by a u128 (u64 under the default implementation), then
None is returned. Read moreimpl Copy for Bytecode
impl Eq for Bytecode
impl StructuralPartialEq for Bytecode
Auto Trait Implementations§
impl Freeze for Bytecode
impl RefUnwindSafe for Bytecode
impl Send for Bytecode
impl Sync for Bytecode
impl Unpin for Bytecode
impl UnsafeUnpin for Bytecode
impl UnwindSafe for Bytecode
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
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
Compare self to
key and return true if they are equal.