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

Class that provides an interface over the Dyld export info. More...

#include <ExportInfo.hpp>

Inheritance diagram for LIEF::MachO::ExportInfo:
Inheritance graph
[legend]
Collaboration diagram for LIEF::MachO::ExportInfo:
Collaboration graph
[legend]

Public Types

using flag_list_t = std::vector<EXPORT_SYMBOL_FLAGS>
 
- 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

 ExportInfo (uint64_t address, uint64_t flags, uint64_t offset=0)
 
ExportInfooperator= (ExportInfo copy)
 
 ExportInfo (const ExportInfo &copy)
 
void swap (ExportInfo &other)
 
uint64_t node_offset () const
 Original offset in the export Trie.
 
uint64_t flags () const
 Some information (EXPORT_SYMBOL_FLAGS) about the export (like weak export, reexport, ...)
 
void flags (uint64_t flags)
 
flag_list_t flags_list () const
 The export flags() as a list.
 
bool has (EXPORT_SYMBOL_FLAGS flag) const
 Check if the current entry contains the provided EXPORT_SYMBOL_FLAGS.
 
EXPORT_SYMBOL_KINDS kind () const
 The export's kind (regular, thread local, absolute, ...)
 
uint64_t other () const
 
uint64_t address () const
 The address of the export.
 
void address (uint64_t addr)
 
bool has_symbol () const
 Check if a symbol is associated with this export.
 
const Symbolsymbol () const
 MachO::Symbol associated with this export or a nullptr if no symbol.
 
Symbolsymbol ()
 
Symbolalias ()
 If the export is a EXPORT_SYMBOL_FLAGS::EXPORT_SYMBOL_FLAGS_REEXPORT, this returns the (optional) MachO::Symbol.
 
const Symbolalias () const
 
DylibCommandalias_library ()
 If the export is a EXPORT_SYMBOL_FLAGS::EXPORT_SYMBOL_FLAGS_REEXPORT, this returns the (optional) library (MachO::DylibCommand)
 
const DylibCommandalias_library () const
 
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 that provides an interface over the Dyld export info.

This class does not represent a structure that exists in the Mach-O format specification but provides a view on an entry of the Dyld export trie.

Member Function Documentation

◆ accept()

void LIEF::MachO::ExportInfo::accept ( Visitor & visitor) const
overridevirtual

Implements LIEF::Object.


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