Macro aluvm::aluasm[][src]

macro_rules! aluasm {
    ($( $tt:tt )+) => { ... };
}
Expand description

Macro compiler for AluVM assembler.

Example


let code = aluasm! {
        clr     r1024[5]                        ;
        put     378,a16[8]                      ;
        putif   0xaf67937b5498dc,r128[5]        ;
        swp     a8[1],a8[2]                     ;
        swp     f256[8],f256[7]                 ;
        dup     a256[1],a256[7]                 ;
        mov     a16[1],a16[2]                   ;
        mov     r256[8],r256[7]                 ;
        cpy     a256[1],a256[7]                 ;
        ret                                     ;
        jmp     0                               ;
};

let lib = Lib::<ReservedOp>::assemble(&code).unwrap();
let mut vm = Vm::with(lib);
match vm.main() {
    true => println!("success"),
    false => println!("failure"),
}