capstone.api

Idiomatic lifting of Capstone's C API to D

Members

Aliases

Callback
alias Callback = size_t delegate(in ubyte[] code, size_t offset) nothrow @(nogc)

User-defined callback function type for SKIPDATA mode of operation

CapstoneArm
alias CapstoneArm = CapstoneImpl!(Arch.arm)
Undocumented in source.
CapstoneArm64
alias CapstoneArm64 = CapstoneImpl!(Arch.arm64)
Undocumented in source.
CapstoneMips
alias CapstoneMips = CapstoneImpl!(Arch.mips)
Undocumented in source.
CapstonePpc
alias CapstonePpc = CapstoneImpl!(Arch.ppc)
Undocumented in source.
CapstoneSparc
alias CapstoneSparc = CapstoneImpl!(Arch.sparc)
Undocumented in source.
CapstoneSysz
alias CapstoneSysz = CapstoneImpl!(Arch.sysz)
Undocumented in source.
CapstoneX86
alias CapstoneX86 = CapstoneImpl!(Arch.x86)
Undocumented in source.
CapstoneXCore
alias CapstoneXCore = CapstoneImpl!(Arch.xcore)
Undocumented in source.
InstructionArm
alias InstructionArm = InstructionImpl!(Arch.arm)
Undocumented in source.
InstructionArm64
alias InstructionArm64 = InstructionImpl!(Arch.arm64)
Undocumented in source.
InstructionMips
alias InstructionMips = InstructionImpl!(Arch.mips)
Undocumented in source.
InstructionPpc
alias InstructionPpc = InstructionImpl!(Arch.ppc)
Undocumented in source.
InstructionSparc
alias InstructionSparc = InstructionImpl!(Arch.sparc)
Undocumented in source.
InstructionSysz
alias InstructionSysz = InstructionImpl!(Arch.sysz)
Undocumented in source.
InstructionX86
alias InstructionX86 = InstructionImpl!(Arch.x86)
Undocumented in source.
InstructionXCore
alias InstructionXCore = InstructionImpl!(Arch.xcore)
Undocumented in source.
ModeFlags
alias ModeFlags = BitFlags!(Mode, Yes.unsafe)

Type for combination of several modes

Classes

Capstone
class Capstone

Encapsulates an instance of the Capstone dissassembly engine

CapstoneImpl
class CapstoneImpl(Arch archParam)

Encapsulates an architecture-specific instance of the Capstone dissassembly engine

Instruction
class Instruction

Architecture-independent instruction

InstructionImpl
class InstructionImpl(Arch arch)

Architecture-specific instruction

InstructionImplRange
class InstructionImplRange(Arch arch)

An extended InstructionRange that provides architecture-specific instructions

InstructionRange
class InstructionRange

An input range that provides access to one disassembled Instruction at a time

Enums

Arch
enum Arch

Architecture type

Mode
enum Mode

Mode type

SupportQuery
enum SupportQuery

The support options that Capstone can be compiled with

Syntax
enum Syntax

Disassembly syntax variants

Functions

diet
auto diet()

Indicates whether the installed library was compiled in diet mode

supports
auto supports(SupportQuery query)

Indicates whether an architecture or particular option is supported by the installed Capstone library

versionOfBindings
auto versionOfBindings()

Determines the Version supported by these bindings

versionOfLibrary
auto versionOfLibrary()

Determines the Version supported by the installed library

Structs

Detail
struct Detail(Arch arch)

Instruction detail

Version
struct Version

Version consisting of major and minor numbers

Meta