Capstone

 view release on metacpan or  search on metacpan

Capstone.xs  view on Meta::CPAN

    SV *code
    UV address
    size_t count
    int details

    PREINIT:
        size_t ret, i;
        HV *hash;
        cs_insn *insn;

    PPCODE:
        if(SvTYPE(code) != SVt_PV) {
            croak("<code> argument not an array scalar");
        }

        ret = cs_disasm(*handle, SvPVbyte(code, SvCUR(code)), SvCUR(code), address, count, &insn);

        for(i = 0; i < ret; i++) {
            hash = newHV();

            hv_store(hash, "id", 2, newSVuv(insn[i].id), 0);

Capstone.xs  view on Meta::CPAN

            cs_free(insn, ret);
        }

# Wrapper to cs_version()
SV*
version()

    PREINIT:
        int major, minor;

    PPCODE:
        cs_version(&major, &minor);

        EXTEND(SP, 2);
        XST_mIV(0, major);
        XST_mIV(1, minor);
        XSRETURN(2);


# Wrapper to cs_support()
int



( run in 1.239 second using v1.01-cache-2.11-cpan-71847e10f99 )