Skip to main content

Instruction

Struct Instruction 

Source
pub struct Instruction { /* private fields */ }
Expand description

A disassembled instruction with human-friendly fields.

This type stores the instruction address, mnemonic and operands as strings so callers can format or inspect them without depending on capstone types.

Implementations§

Source§

impl Instruction

Source

pub fn new(insn: &Insn<'_>) -> Self

Create an Instruction from a capstone Insn.

Converts a capstone Insn into the crate’s lightweight Instruction representation by copying the instruction address, mnemonic and operand string. This allows callers to own and format instruction data without keeping capstone types around.

§Arguments
  • insn - A reference to a capstone Insn to convert.
§Returns

An owned Instruction containing the address, mnemonic and operands extracted from insn.

Source

pub fn address(&self) -> u64

Return the instruction address.

§Returns

The virtual memory address where this instruction is located.

Source

pub fn is_call(&self) -> bool

Return true when the mnemonic represents a call instruction.

§Returns

true when the instruction mnemonic contains the substring “call” (for example callq), otherwise false.

Trait Implementations§

Source§

impl Display for Instruction

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.