LLVM 22.0.0git
llvm::orc::LibraryResolver::SymbolQuery Class Reference

Tracks a set of symbols and the libraries where they are resolved. More...

#include "llvm/ExecutionEngine/Orc/TargetProcess/LibraryResolver.h"

Classes

struct  Result
 Holds the result for a single symbol. More...

Public Member Functions

 SymbolQuery (const std::vector< std::string > &Symbols)
SmallVector< StringRefgetUnresolvedSymbols () const
void resolve (StringRef Sym, const std::string &LibPath)
bool allResolved () const
bool hasUnresolved () const
std::optional< StringRefgetResolvedLib (StringRef Sym) const
bool isResolved (StringRef Sym) const
std::vector< const Result * > getAllResults () const

Detailed Description

Tracks a set of symbols and the libraries where they are resolved.

SymbolQuery is used to keep track of which symbols have been resolved to which libraries. It supports concurrent read/write access using a shared mutex, allowing multiple readers or a single writer at a time.

Definition at line 312 of file LibraryResolver.h.

Constructor & Destructor Documentation

◆ SymbolQuery()

llvm::orc::LibraryResolver::SymbolQuery::SymbolQuery ( const std::vector< std::string > & Symbols)
inlineexplicit

Definition at line 326 of file LibraryResolver.h.

Member Function Documentation

◆ allResolved()

bool llvm::orc::LibraryResolver::SymbolQuery::allResolved ( ) const
inline

◆ getAllResults()

std::vector< const Result * > llvm::orc::LibraryResolver::SymbolQuery::getAllResults ( ) const
inline

Definition at line 374 of file LibraryResolver.h.

References _.

Referenced by llvm::orc::LibraryResolver::searchSymbolsInLibraries().

◆ getResolvedLib()

std::optional< StringRef > llvm::orc::LibraryResolver::SymbolQuery::getResolvedLib ( StringRef Sym) const
inline

Definition at line 360 of file LibraryResolver.h.

◆ getUnresolvedSymbols()

SmallVector< StringRef > llvm::orc::LibraryResolver::SymbolQuery::getUnresolvedSymbols ( ) const
inline

◆ hasUnresolved()

bool llvm::orc::LibraryResolver::SymbolQuery::hasUnresolved ( ) const
inline

Definition at line 356 of file LibraryResolver.h.

◆ isResolved()

bool llvm::orc::LibraryResolver::SymbolQuery::isResolved ( StringRef Sym) const
inline

Definition at line 368 of file LibraryResolver.h.

References llvm::StringRef::str().

◆ resolve()

void llvm::orc::LibraryResolver::SymbolQuery::resolve ( StringRef Sym,
const std::string & LibPath )
inline

Definition at line 343 of file LibraryResolver.h.


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