LLVM
8.0.1
|
A symbol query that returns results via a callback when results are ready. More...
#include "llvm/ExecutionEngine/Orc/Core.h"
Public Member Functions | |
AsynchronousSymbolQuery (const SymbolNameSet &Symbols, SymbolsResolvedCallback NotifySymbolsResolved, SymbolsReadyCallback NotifySymbolsReady) | |
Create a query for the given symbols, notify-resolved and notify-ready callbacks. More... | |
void | resolve (const SymbolStringPtr &Name, JITEvaluatedSymbol Sym) |
Set the resolved symbol information for the given symbol name. More... | |
bool | isFullyResolved () const |
Returns true if all symbols covered by this query have been resolved. More... | |
void | handleFullyResolved () |
Call the NotifySymbolsResolved callback. More... | |
void | notifySymbolReady () |
Notify the query that a requested symbol is ready for execution. More... | |
bool | isFullyReady () const |
Returns true if all symbols covered by this query are ready. More... | |
void | handleFullyReady () |
Calls the NotifySymbolsReady callback. More... | |
Friends | |
class | ExecutionSession |
class | JITDylib |
class | JITSymbolResolverAdapter |
A symbol query that returns results via a callback when results are ready.
makes a callback when all symbols are available.
llvm::orc::AsynchronousSymbolQuery::AsynchronousSymbolQuery | ( | const SymbolNameSet & | Symbols, |
SymbolsResolvedCallback | NotifySymbolsResolved, | ||
SymbolsReadyCallback | NotifySymbolsReady | ||
) |
Create a query for the given symbols, notify-resolved and notify-ready callbacks.
Definition at line 264 of file Core.cpp.
References llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::size().
void llvm::orc::AsynchronousSymbolQuery::handleFullyReady | ( | ) |
Calls the NotifySymbolsReady callback.
This should only be called if all symbols covered by this query are ready.
Definition at line 306 of file Core.cpp.
References assert(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::empty(), handleFullyResolved(), and llvm::Error::success().
Referenced by llvm::orc::ExecutionSession::lookup().
void llvm::orc::AsynchronousSymbolQuery::handleFullyResolved | ( | ) |
Call the NotifySymbolsResolved callback.
This should only be called if all symbols covered by the query have been resolved.
Definition at line 285 of file Core.cpp.
References assert().
Referenced by handleFullyReady(), and llvm::orc::ExecutionSession::lookup().
|
inline |
Returns true if all symbols covered by this query are ready.
Definition at line 464 of file Core.h.
References Name.
Referenced by llvm::orc::ExecutionSession::lookup().
|
inline |
Returns true if all symbols covered by this query have been resolved.
Definition at line 452 of file Core.h.
Referenced by llvm::orc::ExecutionSession::lookup().
void llvm::orc::AsynchronousSymbolQuery::notifySymbolReady | ( | ) |
Notify the query that a requested symbol is ready for execution.
Definition at line 301 of file Core.cpp.
References assert().
Referenced by llvm::orc::lookupWithLegacyFn().
void llvm::orc::AsynchronousSymbolQuery::resolve | ( | const SymbolStringPtr & | Name, |
JITEvaluatedSymbol | Sym | ||
) |
Set the resolved symbol information for the given symbol name.
Definition at line 275 of file Core.cpp.
References assert(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find(), and I.
Referenced by llvm::orc::lookupWithLegacyFn().
|
friend |
|
friend |