LIEF: Library to Instrument Executable Formats Version
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
LIEF::PE::Relocation Class Reference

Class which represents the Base Relocation Block We usually find this structure in the .reloc section. More...

#include <Relocation.hpp>

Inheritance diagram for LIEF::PE::Relocation:
Inheritance graph
[legend]
Collaboration diagram for LIEF::PE::Relocation:
Collaboration graph
[legend]

Public Types

using entries_t = std::vector< std::unique_ptr< RelocationEntry > >
 
using it_entries = ref_iterator< entries_t &, RelocationEntry * >
 
using it_const_entries = const_ref_iterator< const entries_t &, RelocationEntry * >
 
- Public Types inherited from LIEF::Object
template<class T >
using output_t = add_pointer_t< decay_t< T > >
 
template<class T >
using output_const_t = add_pointer_t< add_const_t< decay_t< T > > >
 

Public Member Functions

 Relocation (const Relocation &other)
 
Relocationoperator= (Relocation other)
 
 Relocation (const details::pe_base_relocation_block &header)
 
void swap (Relocation &other)
 
uint32_t virtual_address () const
 The RVA for which the offset of the relocation entries (RelocationEntry) is added.
 
uint32_t block_size () const
 The total number of bytes in the base relocation block. block_size = sizeof(BaseRelocationBlock) + nb_of_relocs * sizeof(uint16_t = RelocationEntry)
 
it_const_entries entries () const
 Iterator over the RelocationEntry.
 
it_entries entries ()
 
void virtual_address (uint32_t virtual_address)
 
void block_size (uint32_t block_size)
 
RelocationEntryadd_entry (const RelocationEntry &entry)
 
void accept (Visitor &visitor) const override
 
- Public Member Functions inherited from LIEF::Object
 Object (const Object &other)
 
Objectoperator= (const Object &other)
 
template<class T >
output_t< T > as ()
 
template<class T >
output_const_t< T > as () const
 
virtual bool operator== (const Object &other) const
 
virtual bool operator!= (const Object &other) const
 

Detailed Description

Class which represents the Base Relocation Block We usually find this structure in the .reloc section.

Member Function Documentation

◆ accept()

void LIEF::PE::Relocation::accept ( Visitor visitor) const
overridevirtual

Implements LIEF::Object.


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