Go to the documentation of this file.
15#ifndef LIEF_ASM_ENGINE_H
16#define LIEF_ASM_ENGINE_H
34 public:
using instructions_it = iterator_range<Instruction::Iterator>;
39 Engine(std::unique_ptr<details::Engine> impl);
45 Engine& operator=(Engine&&) noexcept;
46 instructions_it disassemble(const uint8_t* buffer,
size_t size, uint64_t addr);
50 instructions_it disassemble(const std::vector<uint8_t>& bytes, uint64_t addr) {
54 return disassemble(bytes.data(), bytes.size(), addr);
58 const details::Engine& impl()
const {
63 details::Engine& impl() {
70 std::unique_ptr<details::Engine> impl_;
This class interfaces the assembler/disassembler support.
Definition Engine.hpp:33
Engine(const Engine &)=delete
Engine & operator=(const Engine &)=delete
Engine(std::unique_ptr< details::Engine > impl)
Engine(Engine &&) noexcept
Namespace related to assembly/disassembly support.
Definition Abstract/Binary.hpp:43
LIEF namespace.
Definition Abstract/Binary.hpp:36
#define LIEF_API
Definition visibility.h:41