Trait sway_ast::expr::op_code::Inst

source ·
pub trait Inst {
    type Args;

    const LIT: &'static str;

    // Required method
    fn instruction(ident: Ident, args: Self::Args) -> Instruction;
}
Expand description

A specific instruction.

Required Associated Types§

source

type Args

Arguments to the instruction.

Required Associated Constants§

source

const LIT: &'static str

The instruction’s literal in source code.

Required Methods§

source

fn instruction(ident: Ident, args: Self::Args) -> Instruction

Object Safety§

This trait is not object safe.

Implementors§

source§

impl Inst for AddOpcode

source§

const LIT: &'static str = "add"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for AddiOpcode

source§

const LIT: &'static str = "addi"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for AlocOpcode

source§

const LIT: &'static str = "aloc"

§

type Args = (BaseIdent,)

source§

impl Inst for AndOpcode

source§

const LIT: &'static str = "and"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for AndiOpcode

source§

const LIT: &'static str = "andi"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for BalOpcode

source§

const LIT: &'static str = "bal"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for BheiOpcode

source§

const LIT: &'static str = "bhei"

§

type Args = (BaseIdent,)

source§

impl Inst for BhshOpcode

source§

const LIT: &'static str = "bhsh"

§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for BlobOpcode

source§

const LIT: &'static str = "blob"

§

type Args = (AsmImmediate,)

source§

impl Inst for BurnOpcode

source§

const LIT: &'static str = "burn"

§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for CallOpcode

source§

const LIT: &'static str = "call"

§

type Args = (BaseIdent, BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for CbOpcode

source§

const LIT: &'static str = "cb"

§

type Args = (BaseIdent,)

source§

impl Inst for CcpOpcode

source§

const LIT: &'static str = "ccp"

§

type Args = (BaseIdent, BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for CfeOpcode

source§

const LIT: &'static str = "cfe"

§

type Args = (BaseIdent,)

source§

impl Inst for CfeiOpcode

source§

const LIT: &'static str = "cfei"

§

type Args = (AsmImmediate,)

source§

impl Inst for CfsOpcode

source§

const LIT: &'static str = "cfs"

§

type Args = (BaseIdent,)

source§

impl Inst for CfsiOpcode

source§

const LIT: &'static str = "cfsi"

§

type Args = (AsmImmediate,)

source§

impl Inst for CrooOpcode

source§

const LIT: &'static str = "croo"

§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for CsizOpcode

source§

const LIT: &'static str = "csiz"

§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for DivOpcode

source§

const LIT: &'static str = "div"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for DiviOpcode

source§

const LIT: &'static str = "divi"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for Eck1Opcode

source§

const LIT: &'static str = "eck1"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for Ecr1Opcode

source§

const LIT: &'static str = "ecr1"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for Ed19Opcode

source§

const LIT: &'static str = "ed19"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for EqOpcode

source§

const LIT: &'static str = "eq"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for ExpOpcode

source§

const LIT: &'static str = "exp"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for ExpiOpcode

source§

const LIT: &'static str = "expi"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for FlagOpcode

source§

const LIT: &'static str = "flag"

§

type Args = (BaseIdent,)

source§

impl Inst for GmOpcode

source§

const LIT: &'static str = "gm"

§

type Args = (BaseIdent, AsmImmediate)

source§

impl Inst for GtOpcode

source§

const LIT: &'static str = "gt"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for GtfOpcode

source§

const LIT: &'static str = "gtf"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for JiOpcode

source§

const LIT: &'static str = "ji"

§

type Args = (AsmImmediate,)

source§

impl Inst for JmpOpcode

source§

const LIT: &'static str = "jmp"

§

type Args = (BaseIdent,)

source§

impl Inst for JneOpcode

source§

const LIT: &'static str = "jne"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for JneiOpcode

source§

const LIT: &'static str = "jnei"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for JnziOpcode

source§

const LIT: &'static str = "jnzi"

§

type Args = (BaseIdent, AsmImmediate)

source§

impl Inst for K256Opcode

source§

const LIT: &'static str = "k256"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for LbOpcode

source§

const LIT: &'static str = "lb"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for LdcOpcode

source§

const LIT: &'static str = "ldc"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for LogOpcode

source§

const LIT: &'static str = "log"

§

type Args = (BaseIdent, BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for LogdOpcode

source§

const LIT: &'static str = "logd"

§

type Args = (BaseIdent, BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for LtOpcode

source§

const LIT: &'static str = "lt"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for LwOpcode

source§

const LIT: &'static str = "lw"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for MclOpcode

source§

const LIT: &'static str = "mcl"

§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for McliOpcode

source§

const LIT: &'static str = "mcli"

§

type Args = (BaseIdent, AsmImmediate)

source§

impl Inst for McpOpcode

source§

const LIT: &'static str = "mcp"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for McpiOpcode

source§

const LIT: &'static str = "mcpi"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for MeqOpcode

source§

const LIT: &'static str = "meq"

§

type Args = (BaseIdent, BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for MintOpcode

source§

const LIT: &'static str = "mint"

§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for MlogOpcode

source§

const LIT: &'static str = "mlog"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for ModOpcode

source§

const LIT: &'static str = "mod"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for ModiOpcode

source§

const LIT: &'static str = "modi"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for MoveOpcode

source§

const LIT: &'static str = "move"

§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for MoviOpcode

source§

const LIT: &'static str = "movi"

§

type Args = (BaseIdent, AsmImmediate)

source§

impl Inst for MrooOpcode

source§

const LIT: &'static str = "mroo"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for MulOpcode

source§

const LIT: &'static str = "mul"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for MuliOpcode

source§

const LIT: &'static str = "muli"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for NoopOpcode

source§

const LIT: &'static str = "noop"

§

type Args = ()

source§

impl Inst for NotOpcode

source§

const LIT: &'static str = "not"

§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for OrOpcode

source§

const LIT: &'static str = "or"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for OriOpcode

source§

const LIT: &'static str = "ori"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for RetOpcode

source§

const LIT: &'static str = "ret"

§

type Args = (BaseIdent,)

source§

impl Inst for RetdOpcode

source§

const LIT: &'static str = "retd"

§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for RvrtOpcode

source§

const LIT: &'static str = "rvrt"

§

type Args = (BaseIdent,)

source§

impl Inst for S256Opcode

source§

const LIT: &'static str = "s256"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SbOpcode

source§

const LIT: &'static str = "sb"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for ScwqOpcode

source§

const LIT: &'static str = "scwq"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SllOpcode

source§

const LIT: &'static str = "sll"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SlliOpcode

source§

const LIT: &'static str = "slli"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for SmoOpcode

source§

const LIT: &'static str = "smo"

§

type Args = (BaseIdent, BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SrlOpcode

source§

const LIT: &'static str = "srl"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SrliOpcode

source§

const LIT: &'static str = "srli"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for SrwOpcode

source§

const LIT: &'static str = "srw"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SrwqOpcode

source§

const LIT: &'static str = "srwq"

§

type Args = (BaseIdent, BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SubOpcode

source§

const LIT: &'static str = "sub"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SubiOpcode

source§

const LIT: &'static str = "subi"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for SwOpcode

source§

const LIT: &'static str = "sw"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for SwwOpcode

source§

const LIT: &'static str = "sww"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SwwqOpcode

source§

const LIT: &'static str = "swwq"

§

type Args = (BaseIdent, BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for TimeOpcode

source§

const LIT: &'static str = "time"

§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for TrOpcode

source§

const LIT: &'static str = "tr"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for TroOpcode

source§

const LIT: &'static str = "tro"

§

type Args = (BaseIdent, BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for XorOpcode

source§

const LIT: &'static str = "xor"

§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for XoriOpcode

source§

const LIT: &'static str = "xori"

§

type Args = (BaseIdent, BaseIdent, AsmImmediate)