pub enum Instruction {
Show 77 variants Add { token: AddOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Addi { token: AddiOpcode, ret: Ident, lhs: Ident, rhs: AsmImmediate, }, And { token: AndOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Andi { token: AndiOpcode, ret: Ident, lhs: Ident, rhs: AsmImmediate, }, Div { token: DivOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Divi { token: DiviOpcode, ret: Ident, lhs: Ident, rhs: AsmImmediate, }, Eq { token: EqOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Exp { token: ExpOpcode, ret: Ident, base: Ident, power: Ident, }, Expi { token: ExpiOpcode, ret: Ident, base: Ident, power: AsmImmediate, }, Gt { token: GtOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Gtf { token: GtfOpcode, ret: Ident, index: Ident, tx_field_id: AsmImmediate, }, Lt { token: LtOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Mlog { token: MlogOpcode, ret: Ident, arg: Ident, base: Ident, }, Mod { token: ModOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Modi { token: ModiOpcode, ret: Ident, lhs: Ident, rhs: AsmImmediate, }, Move { token: MoveOpcode, ret: Ident, from: Ident, }, Movi { token: MoviOpcode, ret: Ident, arg: AsmImmediate, }, Mroo { token: MrooOpcode, ret: Ident, arg: Ident, root: Ident, }, Mul { token: MulOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Muli { token: MuliOpcode, ret: Ident, lhs: Ident, rhs: AsmImmediate, }, Noop { token: NoopOpcode, }, Not { token: NotOpcode, ret: Ident, arg: Ident, }, Or { token: OrOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Ori { token: OriOpcode, ret: Ident, lhs: Ident, rhs: AsmImmediate, }, Sll { token: SllOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Slli { token: SlliOpcode, ret: Ident, lhs: Ident, rhs: AsmImmediate, }, Smo { token: SmoOpcode, addr: Ident, len: Ident, output: Ident, coins: Ident, }, Srl { token: SrlOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Srli { token: SrliOpcode, ret: Ident, lhs: Ident, rhs: AsmImmediate, }, Sub { token: SubOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Subi { token: SubiOpcode, ret: Ident, lhs: Ident, rhs: AsmImmediate, }, Xor { token: XorOpcode, ret: Ident, lhs: Ident, rhs: Ident, }, Xori { token: XoriOpcode, ret: Ident, lhs: Ident, rhs: AsmImmediate, }, Cimv { token: CimvOpcode, ret: Ident, input: Ident, maturity: Ident, }, Ctmv { token: CtmvOpcode, ret: Ident, maturity: Ident, }, Ji { token: JiOpcode, offset: AsmImmediate, }, Jnei { token: JneiOpcode, lhs: Ident, rhs: Ident, offset: AsmImmediate, }, Ret { token: RetOpcode, value: Ident, }, Aloc { token: AlocOpcode, size: Ident, }, Cfei { token: CfeiOpcode, size: AsmImmediate, }, Cfsi { token: CfsiOpcode, size: AsmImmediate, }, Lb { token: LbOpcode, ret: Ident, addr: Ident, offset: AsmImmediate, }, Lw { token: LwOpcode, ret: Ident, addr: Ident, offset: AsmImmediate, }, Mcl { token: MclOpcode, addr: Ident, size: Ident, }, Mcli { token: McliOpcode, addr: Ident, size: AsmImmediate, }, Mcp { token: McpOpcode, dst_addr: Ident, src_addr: Ident, size: Ident, }, Mcpi { token: McpiOpcode, dst_addr: Ident, src_addr: Ident, size: AsmImmediate, }, Meq { token: MeqOpcode, ret: Ident, lhs_addr: Ident, rhs_addr: Ident, size: Ident, }, Sb { token: SbOpcode, addr: Ident, value: Ident, offset: AsmImmediate, }, Sw { token: SwOpcode, addr: Ident, value: Ident, offset: AsmImmediate, }, Bal { token: BalOpcode, ret: Ident, asset: Ident, contract: Ident, }, Bhei { token: BheiOpcode, ret: Ident, }, Bhsh { token: BhshOpcode, addr: Ident, height: Ident, }, Burn { token: BurnOpcode, coins: Ident, }, Call { token: CallOpcode, args_addr: Ident, coins: Ident, asset: Ident, gas: Ident, }, Cb { token: CbOpcode, addr: Ident, }, Ccp { token: CcpOpcode, dst_addr: Ident, contract: Ident, src_addr: Ident, size: Ident, }, Croo { token: CrooOpcode, addr: Ident, contract: Ident, }, Csiz { token: CsizOpcode, ret: Ident, contract: Ident, }, Ldc { token: LdcOpcode, contract: Ident, addr: Ident, size: Ident, }, Log { token: LogOpcode, reg_a: Ident, reg_b: Ident, reg_c: Ident, reg_d: Ident, }, Logd { token: LogdOpcode, reg_a: Ident, reg_b: Ident, addr: Ident, size: Ident, }, Mint { token: MintOpcode, coins: Ident, }, Retd { token: RetdOpcode, addr: Ident, size: Ident, }, Rvrt { token: RvrtOpcode, value: Ident, }, Sldc { token: SldcOpcode, contract: Ident, addr: Ident, size: Ident, }, Srw { token: SrwOpcode, ret: Ident, state_addr: Ident, }, Srwq { token: SrwqOpcode, addr: Ident, state_addr: Ident, }, Sww { token: SwwOpcode, state_addr: Ident, value: Ident, }, Swwq { token: SwwqOpcode, state_addr: Ident, addr: Ident, }, Tr { token: TrOpcode, contract: Ident, coins: Ident, asset: Ident, }, Tro { token: TroOpcode, addr: Ident, output: Ident, coins: Ident, asset: Ident, }, Ecr { token: EcrOpcode, addr: Ident, sig: Ident, hash: Ident, }, K256 { token: K256Opcode, addr: Ident, data: Ident, size: Ident, }, S256 { token: S256Opcode, addr: Ident, data: Ident, size: Ident, }, Flag { token: FlagOpcode, value: Ident, }, Gm { token: GmOpcode, ret: Ident, op: AsmImmediate, },
}

Variants

Add

Fields

token: AddOpcode
ret: Ident
lhs: Ident
rhs: Ident

Addi

Fields

token: AddiOpcode
ret: Ident
lhs: Ident

And

Fields

token: AndOpcode
ret: Ident
lhs: Ident
rhs: Ident

Andi

Fields

token: AndiOpcode
ret: Ident
lhs: Ident

Div

Fields

token: DivOpcode
ret: Ident
lhs: Ident
rhs: Ident

Divi

Fields

token: DiviOpcode
ret: Ident
lhs: Ident

Eq

Fields

token: EqOpcode
ret: Ident
lhs: Ident
rhs: Ident

Exp

Fields

token: ExpOpcode
ret: Ident
base: Ident
power: Ident

Expi

Fields

token: ExpiOpcode
ret: Ident
base: Ident
power: AsmImmediate

Gt

Fields

token: GtOpcode
ret: Ident
lhs: Ident
rhs: Ident

Gtf

Fields

token: GtfOpcode
ret: Ident
index: Ident
tx_field_id: AsmImmediate

Lt

Fields

token: LtOpcode
ret: Ident
lhs: Ident
rhs: Ident

Mlog

Fields

token: MlogOpcode
ret: Ident
arg: Ident
base: Ident

Mod

Fields

token: ModOpcode
ret: Ident
lhs: Ident
rhs: Ident

Modi

Fields

token: ModiOpcode
ret: Ident
lhs: Ident

Move

Fields

token: MoveOpcode
ret: Ident
from: Ident

Movi

Fields

token: MoviOpcode
ret: Ident

Mroo

Fields

token: MrooOpcode
ret: Ident
arg: Ident
root: Ident

Mul

Fields

token: MulOpcode
ret: Ident
lhs: Ident
rhs: Ident

Muli

Fields

token: MuliOpcode
ret: Ident
lhs: Ident

Noop

Fields

token: NoopOpcode

Not

Fields

token: NotOpcode
ret: Ident
arg: Ident

Or

Fields

token: OrOpcode
ret: Ident
lhs: Ident
rhs: Ident

Ori

Fields

token: OriOpcode
ret: Ident
lhs: Ident

Sll

Fields

token: SllOpcode
ret: Ident
lhs: Ident
rhs: Ident

Slli

Fields

token: SlliOpcode
ret: Ident
lhs: Ident

Smo

Fields

token: SmoOpcode
addr: Ident
len: Ident
output: Ident
coins: Ident

Srl

Fields

token: SrlOpcode
ret: Ident
lhs: Ident
rhs: Ident

Srli

Fields

token: SrliOpcode
ret: Ident
lhs: Ident

Sub

Fields

token: SubOpcode
ret: Ident
lhs: Ident
rhs: Ident

Subi

Fields

token: SubiOpcode
ret: Ident
lhs: Ident

Xor

Fields

token: XorOpcode
ret: Ident
lhs: Ident
rhs: Ident

Xori

Fields

token: XoriOpcode
ret: Ident
lhs: Ident

Cimv

Fields

token: CimvOpcode
ret: Ident
input: Ident
maturity: Ident

Ctmv

Fields

token: CtmvOpcode
ret: Ident
maturity: Ident

Ji

Fields

token: JiOpcode
offset: AsmImmediate

Jnei

Fields

token: JneiOpcode
lhs: Ident
rhs: Ident
offset: AsmImmediate

Ret

Fields

token: RetOpcode
value: Ident

Aloc

Fields

token: AlocOpcode
size: Ident

Cfei

Fields

token: CfeiOpcode

Cfsi

Fields

token: CfsiOpcode

Lb

Fields

token: LbOpcode
ret: Ident
addr: Ident
offset: AsmImmediate

Lw

Fields

token: LwOpcode
ret: Ident
addr: Ident
offset: AsmImmediate

Mcl

Fields

token: MclOpcode
addr: Ident
size: Ident

Mcli

Fields

token: McliOpcode
addr: Ident

Mcp

Fields

token: McpOpcode
dst_addr: Ident
src_addr: Ident
size: Ident

Mcpi

Fields

token: McpiOpcode
dst_addr: Ident
src_addr: Ident

Meq

Fields

token: MeqOpcode
ret: Ident
lhs_addr: Ident
rhs_addr: Ident
size: Ident

Sb

Fields

token: SbOpcode
addr: Ident
value: Ident
offset: AsmImmediate

Sw

Fields

token: SwOpcode
addr: Ident
value: Ident
offset: AsmImmediate

Bal

Fields

token: BalOpcode
ret: Ident
asset: Ident
contract: Ident

Bhei

Fields

token: BheiOpcode
ret: Ident

Bhsh

Fields

token: BhshOpcode
addr: Ident
height: Ident

Burn

Fields

token: BurnOpcode
coins: Ident

Call

Fields

token: CallOpcode
args_addr: Ident
coins: Ident
asset: Ident
gas: Ident

Cb

Fields

token: CbOpcode
addr: Ident

Ccp

Fields

token: CcpOpcode
dst_addr: Ident
contract: Ident
src_addr: Ident
size: Ident

Croo

Fields

token: CrooOpcode
addr: Ident
contract: Ident

Csiz

Fields

token: CsizOpcode
ret: Ident
contract: Ident

Ldc

Fields

token: LdcOpcode
contract: Ident
addr: Ident
size: Ident

Log

Fields

token: LogOpcode
reg_a: Ident
reg_b: Ident
reg_c: Ident
reg_d: Ident

Logd

Fields

token: LogdOpcode
reg_a: Ident
reg_b: Ident
addr: Ident
size: Ident

Mint

Fields

token: MintOpcode
coins: Ident

Retd

Fields

token: RetdOpcode
addr: Ident
size: Ident

Rvrt

Fields

token: RvrtOpcode
value: Ident

Sldc

Fields

token: SldcOpcode
contract: Ident
addr: Ident
size: Ident

Srw

Fields

token: SrwOpcode
ret: Ident
state_addr: Ident

Srwq

Fields

token: SrwqOpcode
addr: Ident
state_addr: Ident

Sww

Fields

token: SwwOpcode
state_addr: Ident
value: Ident

Swwq

Fields

token: SwwqOpcode
state_addr: Ident
addr: Ident

Tr

Fields

token: TrOpcode
contract: Ident
coins: Ident
asset: Ident

Tro

Fields

token: TroOpcode
addr: Ident
output: Ident
coins: Ident
asset: Ident

Ecr

Fields

token: EcrOpcode
addr: Ident
sig: Ident
hash: Ident

K256

Fields

token: K256Opcode
addr: Ident
data: Ident
size: Ident

S256

Fields

token: S256Opcode
addr: Ident
data: Ident
size: Ident

Flag

Fields

token: FlagOpcode
value: Ident

Gm

Fields

token: GmOpcode
ret: Ident

Implementations

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.