Types

Link copied to clipboard
data class Call(val nargs: Int, val selfProvided: Boolean) : Insn
Link copied to clipboard
data class CloseUpvalue(val upvalue: Upvalue) : Insn
Link copied to clipboard
data class CopyUnder(val index: Int) : Insn
Link copied to clipboard
data class GetGlobal(val name: String) : Insn
Link copied to clipboard
data class GetLocal(val index: Int) : Insn
Link copied to clipboard
data class GetUpvalue(val index: Int) : Insn
Link copied to clipboard
interface IllegalInsn : Insn

Used to mark instructions that should only be used internally by the compiler, and should never be emitted.

Link copied to clipboard
data class Import(val name: String) : Insn
Link copied to clipboard
data object Index : Insn
Link copied to clipboard
data object Is : Insn
Link copied to clipboard
data class Jump(val offset: Int) : Insn
Link copied to clipboard
data class JumpIf(val offset: Int, val condition: Boolean, val consume: Boolean = true) : Insn
Link copied to clipboard
class Label : Insn
Link copied to clipboard
data class MetaCall(val nargs: Int, val metamethod: String) : Insn
Link copied to clipboard
data object NoOp : Insn.IllegalInsn
Link copied to clipboard
data object Not : Insn
Link copied to clipboard
data object Pop : Insn
Link copied to clipboard
data object PopErrorHandler : Insn
Link copied to clipboard
data object PopFinally : Insn
Link copied to clipboard
data class PostImport(val name: String, val global: Boolean) : Insn
Link copied to clipboard
data class Push(val value: Value) : Insn
Link copied to clipboard
data class PushClosure(val chunk: Chunk) : Insn
Link copied to clipboard
data class PushError(val type: String) : Insn
Link copied to clipboard
data class PushErrorHandler(val handler: ErrorHandler) : Insn
Link copied to clipboard
data class PushFinally(val label: Insn.Label) : Insn
Link copied to clipboard
data class PushList(val size: Int) : Insn
Link copied to clipboard
data class PushTable(val size: Int) : Insn
Link copied to clipboard
data object Raise : Insn
Link copied to clipboard
data class RawJump(val label: Insn.Label) : Insn.IllegalInsn
Link copied to clipboard
data class RawJumpIf(val label: Insn.Label, val condition: Boolean, val consume: Boolean = true) : Insn.IllegalInsn
Link copied to clipboard
data object Return : Insn
Link copied to clipboard
data object Set : Insn
Link copied to clipboard
data class SetGlobal(val name: String) : Insn
Link copied to clipboard
data class SetLocal(val index: Int) : Insn
Link copied to clipboard
data class SetUpvalue(val index: Int) : Insn
Link copied to clipboard
data object ToBeUsed : Insn

Used to mark a value as being used, so that it doesn't get popped. Used in the implementations of return and raise.

Link copied to clipboard
data class UpdateGlobal(val name: String) : Insn