LIEF: Library to Instrument Executable Formats Version 0.17.0
Loading...
Searching...
No Matches
LIEF::assembly::Engine Class Reference

This class interfaces the assembler/disassembler support. More...

#include <Engine.hpp>

Public Types

using instructions_it = iterator_range<Instruction::Iterator>
 Disassembly instruction iterator.
 

Public Member Functions

 Engine ()=delete
 
 Engine (std::unique_ptr< details::Engine > impl)
 
 Engine (const Engine &)=delete
 
Engineoperator= (const Engine &)=delete
 
 Engine (Engine &&) noexcept
 
Engineoperator= (Engine &&) noexcept
 
instructions_it disassemble (const uint8_t *buffer, size_t size, uint64_t addr)
 Disassemble the provided buffer with the address specified in the second parameter.
 
instructions_it disassemble (const std::vector< uint8_t > &bytes, uint64_t addr)
 Disassemble the given vector of bytes with the address specified in the second parameter.
 
std::vector< uint8_t > assemble (uint64_t address, const std::string &Asm)
 
std::vector< uint8_t > assemble (uint64_t address, const std::string &Asm, LIEF::Binary &bin)
 
 ~Engine ()
 

Detailed Description

This class interfaces the assembler/disassembler support.

Member Typedef Documentation

◆ instructions_it

Constructor & Destructor Documentation

◆ Engine() [1/4]

LIEF::assembly::Engine::Engine ( )
delete

◆ Engine() [2/4]

LIEF::assembly::Engine::Engine ( std::unique_ptr< details::Engine > impl)

◆ Engine() [3/4]

LIEF::assembly::Engine::Engine ( const Engine & )
delete

◆ Engine() [4/4]

LIEF::assembly::Engine::Engine ( Engine && )
noexcept

◆ ~Engine()

LIEF::assembly::Engine::~Engine ( )

Member Function Documentation

◆ assemble() [1/2]

std::vector< uint8_t > LIEF::assembly::Engine::assemble ( uint64_t address,
const std::string & Asm )

◆ assemble() [2/2]

std::vector< uint8_t > LIEF::assembly::Engine::assemble ( uint64_t address,
const std::string & Asm,
LIEF::Binary & bin )

◆ disassemble() [1/2]

instructions_it LIEF::assembly::Engine::disassemble ( const std::vector< uint8_t > & bytes,
uint64_t addr )
inline

Disassemble the given vector of bytes with the address specified in the second parameter.

◆ disassemble() [2/2]

instructions_it LIEF::assembly::Engine::disassemble ( const uint8_t * buffer,
size_t size,
uint64_t addr )

Disassemble the provided buffer with the address specified in the second parameter.

◆ operator=() [1/2]

Engine & LIEF::assembly::Engine::operator= ( const Engine & )
delete

◆ operator=() [2/2]

Engine & LIEF::assembly::Engine::operator= ( Engine && )
noexcept

The documentation for this class was generated from the following file: