LIEF: Library to Instrument Executable Formats Version 0.15.0
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: