sway_ast::expr::op_code

Trait 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 Constants§

source

const LIT: &'static str

The instruction’s literal in source code.

Required Associated Types§

source

type Args

Arguments to the instruction.

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"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for AddiOpcode

source§

const LIT: &'static str = "addi"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for AlocOpcode

source§

const LIT: &'static str = "aloc"

source§

type Args = (BaseIdent,)

source§

impl Inst for AndOpcode

source§

const LIT: &'static str = "and"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for AndiOpcode

source§

const LIT: &'static str = "andi"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for BalOpcode

source§

const LIT: &'static str = "bal"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for BheiOpcode

source§

const LIT: &'static str = "bhei"

source§

type Args = (BaseIdent,)

source§

impl Inst for BhshOpcode

source§

const LIT: &'static str = "bhsh"

source§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for BlddOpcode

source§

const LIT: &'static str = "bldd"

source§

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

source§

impl Inst for BlobOpcode

source§

const LIT: &'static str = "blob"

source§

type Args = (AsmImmediate,)

source§

impl Inst for BsizOpcode

source§

const LIT: &'static str = "bsiz"

source§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for BurnOpcode

source§

const LIT: &'static str = "burn"

source§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for CallOpcode

source§

const LIT: &'static str = "call"

source§

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

source§

impl Inst for CbOpcode

source§

const LIT: &'static str = "cb"

source§

type Args = (BaseIdent,)

source§

impl Inst for CcpOpcode

source§

impl Inst for CfeOpcode

source§

const LIT: &'static str = "cfe"

source§

type Args = (BaseIdent,)

source§

impl Inst for CfeiOpcode

source§

const LIT: &'static str = "cfei"

source§

type Args = (AsmImmediate,)

source§

impl Inst for CfsOpcode

source§

const LIT: &'static str = "cfs"

source§

type Args = (BaseIdent,)

source§

impl Inst for CfsiOpcode

source§

const LIT: &'static str = "cfsi"

source§

type Args = (AsmImmediate,)

source§

impl Inst for CrooOpcode

source§

const LIT: &'static str = "croo"

source§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for CsizOpcode

source§

const LIT: &'static str = "csiz"

source§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for DivOpcode

source§

const LIT: &'static str = "div"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for DiviOpcode

source§

const LIT: &'static str = "divi"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for Eck1Opcode

source§

const LIT: &'static str = "eck1"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for Ecr1Opcode

source§

const LIT: &'static str = "ecr1"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for Ed19Opcode

source§

const LIT: &'static str = "ed19"

source§

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

source§

impl Inst for EqOpcode

source§

const LIT: &'static str = "eq"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for ExpOpcode

source§

const LIT: &'static str = "exp"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for ExpiOpcode

source§

const LIT: &'static str = "expi"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for FlagOpcode

source§

const LIT: &'static str = "flag"

source§

type Args = (BaseIdent,)

source§

impl Inst for GmOpcode

source§

const LIT: &'static str = "gm"

source§

type Args = (BaseIdent, AsmImmediate)

source§

impl Inst for GtOpcode

source§

const LIT: &'static str = "gt"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for GtfOpcode

source§

const LIT: &'static str = "gtf"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for JiOpcode

source§

const LIT: &'static str = "ji"

source§

type Args = (AsmImmediate,)

source§

impl Inst for JmpOpcode

source§

const LIT: &'static str = "jmp"

source§

type Args = (BaseIdent,)

source§

impl Inst for JneOpcode

source§

const LIT: &'static str = "jne"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for JneiOpcode

source§

const LIT: &'static str = "jnei"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for JnziOpcode

source§

const LIT: &'static str = "jnzi"

source§

type Args = (BaseIdent, AsmImmediate)

source§

impl Inst for K256Opcode

source§

const LIT: &'static str = "k256"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for LbOpcode

source§

const LIT: &'static str = "lb"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for LdcOpcode

source§

impl Inst for LogOpcode

source§

impl Inst for LogdOpcode

source§

const LIT: &'static str = "logd"

source§

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

source§

impl Inst for LtOpcode

source§

const LIT: &'static str = "lt"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for LwOpcode

source§

const LIT: &'static str = "lw"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for MclOpcode

source§

const LIT: &'static str = "mcl"

source§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for McliOpcode

source§

const LIT: &'static str = "mcli"

source§

type Args = (BaseIdent, AsmImmediate)

source§

impl Inst for McpOpcode

source§

const LIT: &'static str = "mcp"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for McpiOpcode

source§

const LIT: &'static str = "mcpi"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for MeqOpcode

source§

impl Inst for MintOpcode

source§

const LIT: &'static str = "mint"

source§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for MlogOpcode

source§

const LIT: &'static str = "mlog"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for ModOpcode

source§

const LIT: &'static str = "mod"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for ModiOpcode

source§

const LIT: &'static str = "modi"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for MoveOpcode

source§

const LIT: &'static str = "move"

source§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for MoviOpcode

source§

const LIT: &'static str = "movi"

source§

type Args = (BaseIdent, AsmImmediate)

source§

impl Inst for MrooOpcode

source§

const LIT: &'static str = "mroo"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for MulOpcode

source§

const LIT: &'static str = "mul"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for MuliOpcode

source§

const LIT: &'static str = "muli"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for NoopOpcode

source§

const LIT: &'static str = "noop"

source§

type Args = ()

source§

impl Inst for NotOpcode

source§

const LIT: &'static str = "not"

source§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for OrOpcode

source§

const LIT: &'static str = "or"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for OriOpcode

source§

const LIT: &'static str = "ori"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for RetOpcode

source§

const LIT: &'static str = "ret"

source§

type Args = (BaseIdent,)

source§

impl Inst for RetdOpcode

source§

const LIT: &'static str = "retd"

source§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for RvrtOpcode

source§

const LIT: &'static str = "rvrt"

source§

type Args = (BaseIdent,)

source§

impl Inst for S256Opcode

source§

const LIT: &'static str = "s256"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SbOpcode

source§

const LIT: &'static str = "sb"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for ScwqOpcode

source§

const LIT: &'static str = "scwq"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SllOpcode

source§

const LIT: &'static str = "sll"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SlliOpcode

source§

const LIT: &'static str = "slli"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for SmoOpcode

source§

impl Inst for SrlOpcode

source§

const LIT: &'static str = "srl"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SrliOpcode

source§

const LIT: &'static str = "srli"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for SrwOpcode

source§

const LIT: &'static str = "srw"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SrwqOpcode

source§

const LIT: &'static str = "srwq"

source§

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

source§

impl Inst for SubOpcode

source§

const LIT: &'static str = "sub"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SubiOpcode

source§

const LIT: &'static str = "subi"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for SwOpcode

source§

const LIT: &'static str = "sw"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)

source§

impl Inst for SwwOpcode

source§

const LIT: &'static str = "sww"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for SwwqOpcode

source§

const LIT: &'static str = "swwq"

source§

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

source§

impl Inst for TimeOpcode

source§

const LIT: &'static str = "time"

source§

type Args = (BaseIdent, BaseIdent)

source§

impl Inst for TrOpcode

source§

const LIT: &'static str = "tr"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for TroOpcode

source§

impl Inst for WqamOpcode

source§

const LIT: &'static str = "wqam"

source§

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

source§

impl Inst for WqcmOpcode

source§

impl Inst for WqdvOpcode

source§

impl Inst for WqmdOpcode

source§

const LIT: &'static str = "wqmd"

source§

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

source§

impl Inst for WqmlOpcode

source§

impl Inst for WqmmOpcode

source§

const LIT: &'static str = "wqmm"

source§

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

source§

impl Inst for WqopOpcode

source§

impl Inst for XorOpcode

source§

const LIT: &'static str = "xor"

source§

type Args = (BaseIdent, BaseIdent, BaseIdent)

source§

impl Inst for XoriOpcode

source§

const LIT: &'static str = "xori"

source§

type Args = (BaseIdent, BaseIdent, AsmImmediate)