1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
//! Assembly/Disassembly Module
//!
//! ### Getting Started
//!
//! One can start disassembling code by using the different functions exposes in the
//! [`crate::generic::Binary`] trait:
//!
//! ```
//! fn disassemble(target: &dyn lief::generic::Binary) {
//! for inst in target.disassemble_symbol("_entrypoint") {
//! println!("{}", inst);
//! }
//! }
//! ```
//!
//! An instruction is represented by the enum: [`Instructions`] which implements the **trait**
//! [`Instruction`].
//!
//! For architecture-dependant API, you can check the following structures:
//!
//! - [`aarch64::Instruction`]
//! - [`x86::Instruction`]
//! - [`arm::Instruction`]
//! - [`powerpc::Instruction`]
//! - [`riscv::Instruction`]
//! - [`mips::Instruction`]
//! - [`ebpf::Instruction`]
pub use ;
pub use AssemblerConfig;