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

Class which represents a PE Export entry (cf. PE::Export) More...

#include <ExportEntry.hpp>

Inheritance diagram for LIEF::PE::ExportEntry:
Collaboration diagram for LIEF::PE::ExportEntry:

Classes

struct  forward_information_t
 

Public Member Functions

 ExportEntry ()=default
 
 ExportEntry (uint32_t address, bool is_extern, uint16_t ordinal, uint32_t function_rva)
 
 ExportEntry (const ExportEntry &)=default
 
ExportEntryoperator= (const ExportEntry &)=default
 
 ~ExportEntry () override=default
 
std::string demangled_name () const
 Demangled representation of the symbol or an empty string if it can't be demangled.
 
uint16_t ordinal () const
 
uint32_t address () const
 
bool is_extern () const
 
bool is_forwarded () const
 
forward_information_t forward_information () const
 
uint32_t function_rva () const
 
void ordinal (uint16_t ordinal)
 
void address (uint32_t address)
 
void is_extern (bool is_extern)
 
uint64_t value () const override
 
void value (uint64_t value) override
 
void set_forward_info (std::string lib, std::string function)
 
void accept (Visitor &visitor) const override
 
- Public Member Functions inherited from LIEF::Symbol
 Symbol ()=default
 
 Symbol (std::string name)
 
 Symbol (std::string name, uint64_t value)
 
 Symbol (std::string name, uint64_t value, uint64_t size)
 
 Symbol (const Symbol &)=default
 
Symboloperator= (const Symbol &)=default
 
 ~Symbol () override=default
 
void swap (Symbol &other) noexcept
 
virtual const std::string & name () const
 Return the symbol's name.
 
virtual std::string & name ()
 
virtual void name (std::string name)
 Set symbol name.
 
virtual uint64_t size () const
 This size of the symbol (when applicable)
 
virtual void size (uint64_t value)
 
void accept (Visitor &visitor) const override
 Method so that the visitor can visit us.
 
- Public Member Functions inherited from LIEF::Object
 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
 
virtual ~Object ()
 

Additional Inherited Members

- 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>>>
 

Detailed Description

Class which represents a PE Export entry (cf. PE::Export)

Constructor & Destructor Documentation

◆ ExportEntry() [1/3]

LIEF::PE::ExportEntry::ExportEntry ( )
default

◆ ExportEntry() [2/3]

LIEF::PE::ExportEntry::ExportEntry ( uint32_t address,
bool is_extern,
uint16_t ordinal,
uint32_t function_rva )
inline

◆ ExportEntry() [3/3]

LIEF::PE::ExportEntry::ExportEntry ( const ExportEntry & )
default

◆ ~ExportEntry()

LIEF::PE::ExportEntry::~ExportEntry ( )
overridedefault

Member Function Documentation

◆ accept()

void LIEF::PE::ExportEntry::accept ( Visitor & visitor) const
overridevirtual

Implements LIEF::Object.

◆ address() [1/2]

uint32_t LIEF::PE::ExportEntry::address ( ) const
inline

◆ address() [2/2]

void LIEF::PE::ExportEntry::address ( uint32_t address)
inline

◆ demangled_name()

std::string LIEF::PE::ExportEntry::demangled_name ( ) const

Demangled representation of the symbol or an empty string if it can't be demangled.

◆ forward_information()

forward_information_t LIEF::PE::ExportEntry::forward_information ( ) const
inline

◆ function_rva()

uint32_t LIEF::PE::ExportEntry::function_rva ( ) const
inline

◆ is_extern() [1/2]

bool LIEF::PE::ExportEntry::is_extern ( ) const
inline

◆ is_extern() [2/2]

void LIEF::PE::ExportEntry::is_extern ( bool is_extern)
inline

◆ is_forwarded()

bool LIEF::PE::ExportEntry::is_forwarded ( ) const
inline

◆ operator=()

ExportEntry & LIEF::PE::ExportEntry::operator= ( const ExportEntry & )
default

◆ ordinal() [1/2]

uint16_t LIEF::PE::ExportEntry::ordinal ( ) const
inline

◆ ordinal() [2/2]

void LIEF::PE::ExportEntry::ordinal ( uint16_t ordinal)
inline

◆ set_forward_info()

void LIEF::PE::ExportEntry::set_forward_info ( std::string lib,
std::string function )
inline

◆ value() [1/2]

uint64_t LIEF::PE::ExportEntry::value ( ) const
inlineoverridevirtual

Reimplemented from LIEF::Symbol.

◆ value() [2/2]

void LIEF::PE::ExportEntry::value ( uint64_t value)
inlineoverridevirtual

Reimplemented from LIEF::Symbol.


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