LLVM 22.0.0git
llvm::orc::DylibManager Class Referenceabstract

#include "llvm/ExecutionEngine/Orc/DylibManager.h"

Inheritance diagram for llvm::orc::DylibManager:
[legend]

Classes

struct  LookupRequest
 A pair of a dylib and a set of symbols to be looked up. More...

Public Types

using SymbolLookupCompleteFn

Public Member Functions

virtual ~DylibManager ()
virtual Expected< tpctypes::DylibHandleloadDylib (const char *DylibPath)=0
 Load the dynamic library at the given path and return a handle to it.
Expected< std::vector< tpctypes::LookupResult > > lookupSymbols (ArrayRef< LookupRequest > Request)
 Search for symbols in the target process.
virtual void lookupSymbolsAsync (ArrayRef< LookupRequest > Request, SymbolLookupCompleteFn F)=0
 Search for symbols in the target process.

Detailed Description

Definition at line 29 of file DylibManager.h.

Member Typedef Documentation

◆ SymbolLookupCompleteFn

Initial value:
unique_function<void(Expected<std::vector<tpctypes::LookupResult>>)>
Tagged union holding either a T or a Error.
Definition Error.h:485
unique_function is a type-erasing functor similar to std::function.

Definition at line 61 of file DylibManager.h.

Constructor & Destructor Documentation

◆ ~DylibManager()

llvm::orc::DylibManager::~DylibManager ( )
virtualdefault

Member Function Documentation

◆ loadDylib()

virtual Expected< tpctypes::DylibHandle > llvm::orc::DylibManager::loadDylib ( const char * DylibPath)
pure virtual

Load the dynamic library at the given path and return a handle to it.

If LibraryPath is null this function will return the global handle for the target process.

Referenced by llvm::orc::EPCDynamicLibrarySearchGenerator::Load().

◆ lookupSymbols()

Expected< std::vector< tpctypes::LookupResult > > llvm::orc::DylibManager::lookupSymbols ( ArrayRef< LookupRequest > Request)
inline

Search for symbols in the target process.

The result of the lookup is a 2-dimensional array of target addresses that correspond to the lookup order. If a required symbol is not found then this method will return an error. If a weakly referenced symbol is not found then it be assigned a '0' value.

Definition at line 53 of file DylibManager.h.

References lookupSymbolsAsync(), and llvm::orc::Result.

Referenced by llvm::orc::lookupAndRecordAddrs().

◆ lookupSymbolsAsync()

virtual void llvm::orc::DylibManager::lookupSymbolsAsync ( ArrayRef< LookupRequest > Request,
SymbolLookupCompleteFn F )
pure virtual

Search for symbols in the target process.

The result of the lookup is a 2-dimensional array of target addresses that correspond to the lookup order. If a required symbol is not found then this method will return an error. If a weakly referenced symbol is not found then it be assigned a '0' value.

References F.

Referenced by lookupSymbols().


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