LualikeIrOpcode class

Enumeration of the lualike IR instructions supported by the lualike VM.

The ordering and naming mirrors the Lua 5.5 instruction set (lopcodes.h) so that documentation and upstream tooling remain applicable. Not every opcode will be implemented in the first iteration, but the enum provides a stable surface for the emitter and VM.

Annotations
  • @immutable

Properties

hashCode int
The hash code for this object.
no setterinherited
name String
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

byName(String name) LualikeIrOpcode
tryByName(String name) LualikeIrOpcode?

Constants

add → const LualikeIrOpcode
addI → const LualikeIrOpcode
addK → const LualikeIrOpcode
band → const LualikeIrOpcode
bandK → const LualikeIrOpcode
bnot → const LualikeIrOpcode
bor → const LualikeIrOpcode
borK → const LualikeIrOpcode
bxor → const LualikeIrOpcode
bxorK → const LualikeIrOpcode
call → const LualikeIrOpcode
checkGlobal → const LualikeIrOpcode
A lualike IR extension opcode — not present in the Lua 5.5 instruction set. CHECKGLOBAL enforces global <const> * declarations by verifying that a global variable write is permitted at the call site. Consumers of values or byName that assume a strict mirror of upstream Lua bytecode must account for this extra entry.
close → const LualikeIrOpcode
closure → const LualikeIrOpcode
concat → const LualikeIrOpcode
div → const LualikeIrOpcode
divK → const LualikeIrOpcode
eq → const LualikeIrOpcode
eqI → const LualikeIrOpcode
eqK → const LualikeIrOpcode
extraArg → const LualikeIrOpcode
forLoop → const LualikeIrOpcode
forPrep → const LualikeIrOpcode
geI → const LualikeIrOpcode
getField → const LualikeIrOpcode
getI → const LualikeIrOpcode
getTable → const LualikeIrOpcode
getTabUp → const LualikeIrOpcode
getUpval → const LualikeIrOpcode
getVarArg → const LualikeIrOpcode
gtI → const LualikeIrOpcode
idiv → const LualikeIrOpcode
idivK → const LualikeIrOpcode
jmp → const LualikeIrOpcode
le → const LualikeIrOpcode
leI → const LualikeIrOpcode
len → const LualikeIrOpcode
lFalseSkip → const LualikeIrOpcode
loadF → const LualikeIrOpcode
loadFalse → const LualikeIrOpcode
loadI → const LualikeIrOpcode
loadK → const LualikeIrOpcode
loadKx → const LualikeIrOpcode
loadNil → const LualikeIrOpcode
loadTrue → const LualikeIrOpcode
lt → const LualikeIrOpcode
ltI → const LualikeIrOpcode
mmBin → const LualikeIrOpcode
mmBinI → const LualikeIrOpcode
mmBinK → const LualikeIrOpcode
mod → const LualikeIrOpcode
modK → const LualikeIrOpcode
move → const LualikeIrOpcode
mul → const LualikeIrOpcode
mulK → const LualikeIrOpcode
newTable → const LualikeIrOpcode
notOp → const LualikeIrOpcode
pow → const LualikeIrOpcode
powK → const LualikeIrOpcode
ret → const LualikeIrOpcode
return0 → const LualikeIrOpcode
return1 → const LualikeIrOpcode
selfOp → const LualikeIrOpcode
setField → const LualikeIrOpcode
setI → const LualikeIrOpcode
setList → const LualikeIrOpcode
setTable → const LualikeIrOpcode
setTabUp → const LualikeIrOpcode
setUpval → const LualikeIrOpcode
shl → const LualikeIrOpcode
shlI → const LualikeIrOpcode
shr → const LualikeIrOpcode
shrI → const LualikeIrOpcode
sub → const LualikeIrOpcode
subI → const LualikeIrOpcode
subK → const LualikeIrOpcode
tailCall → const LualikeIrOpcode
tbc → const LualikeIrOpcode
test → const LualikeIrOpcode
testSet → const LualikeIrOpcode
tForCall → const LualikeIrOpcode
tForLoop → const LualikeIrOpcode
tForPrep → const LualikeIrOpcode
unm → const LualikeIrOpcode
values → const List<LualikeIrOpcode>
varArg → const LualikeIrOpcode
varArgPrep → const LualikeIrOpcode