Enum watchmaker_vm::Instruction
source · [−]pub enum Instruction {
Show 25 variants
NOP(),
HLT(),
SYN(),
IIMOV(LeftInteger, RightInteger),
IDMOV(LeftInteger, RightDouble),
DIMOV(LeftDouble, RightInteger),
DDMOV(LeftDouble, RightDouble),
IADD(LeftInteger, LeftInteger, RightInteger),
IDIV(LeftInteger, LeftInteger, RightInteger),
IMOD(LeftInteger, LeftInteger, RightInteger),
IMUL(LeftInteger, LeftInteger, RightInteger),
ISUB(LeftInteger, LeftInteger, RightInteger),
DADD(LeftDouble, LeftDouble, RightDouble),
DDIV(LeftDouble, LeftDouble, RightDouble),
DMOD(LeftDouble, LeftDouble, RightDouble),
DMUL(LeftDouble, LeftDouble, RightDouble),
DSUB(LeftDouble, LeftDouble, RightDouble),
IJEQ(LeftInteger, LeftInteger, CodeOffset),
IJNE(LeftInteger, LeftInteger, CodeOffset),
IJGT(LeftInteger, LeftInteger, CodeOffset),
IJLT(LeftInteger, LeftInteger, CodeOffset),
DJEQ(LeftDouble, LeftDouble, CodeOffset),
DJNE(LeftDouble, LeftDouble, CodeOffset),
DJGT(LeftDouble, LeftDouble, CodeOffset),
DJLT(LeftDouble, LeftDouble, CodeOffset),
}
Expand description
A single virtual machine instruction.
Variants
NOP()
HLT()
SYN()
IIMOV(LeftInteger, RightInteger)
IDMOV(LeftInteger, RightDouble)
DIMOV(LeftDouble, RightInteger)
DDMOV(LeftDouble, RightDouble)
IADD(LeftInteger, LeftInteger, RightInteger)
IDIV(LeftInteger, LeftInteger, RightInteger)
IMOD(LeftInteger, LeftInteger, RightInteger)
IMUL(LeftInteger, LeftInteger, RightInteger)
ISUB(LeftInteger, LeftInteger, RightInteger)
DADD(LeftDouble, LeftDouble, RightDouble)
DDIV(LeftDouble, LeftDouble, RightDouble)
DMOD(LeftDouble, LeftDouble, RightDouble)
DMUL(LeftDouble, LeftDouble, RightDouble)
DSUB(LeftDouble, LeftDouble, RightDouble)
IJEQ(LeftInteger, LeftInteger, CodeOffset)
IJNE(LeftInteger, LeftInteger, CodeOffset)
IJGT(LeftInteger, LeftInteger, CodeOffset)
IJLT(LeftInteger, LeftInteger, CodeOffset)
DJEQ(LeftDouble, LeftDouble, CodeOffset)
DJNE(LeftDouble, LeftDouble, CodeOffset)
DJGT(LeftDouble, LeftDouble, CodeOffset)
DJLT(LeftDouble, LeftDouble, CodeOffset)
Trait Implementations
sourceimpl Clone for Instruction
impl Clone for Instruction
sourcefn clone(&self) -> Instruction
fn clone(&self) -> Instruction
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for Instruction
impl Debug for Instruction
sourceimpl PartialEq<Instruction> for Instruction
impl PartialEq<Instruction> for Instruction
sourcefn eq(&self, other: &Instruction) -> bool
fn eq(&self, other: &Instruction) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &Instruction) -> bool
fn ne(&self, other: &Instruction) -> bool
This method tests for !=
.
impl StructuralPartialEq for Instruction
Auto Trait Implementations
impl RefUnwindSafe for Instruction
impl Send for Instruction
impl Sync for Instruction
impl Unpin for Instruction
impl UnwindSafe for Instruction
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more