WrapperFunction< SPSRetTagT(SPSTagTs...)> Class Template Reference (original) (raw)
#include "[llvm/ExecutionEngine/Orc/Shared/WrapperFunctionUtils.h](WrapperFunctionUtils%5F8h%5Fsource.html)"
| Static Public Member Functions | |
|---|---|
| template<typename CallerFn, typename RetT, typename... ArgTs> | |
| static Error | call (const CallerFn &Caller, RetT &Result, const ArgTs &...Args) |
| Call a wrapper function. | |
| template<typename AsyncCallerFn, typename SendDeserializedResultFn, typename... ArgTs> | |
| static void | callAsync (AsyncCallerFn &&Caller, SendDeserializedResultFn &&SendDeserializedResult, const ArgTs &...Args) |
| Call an async wrapper function. | |
| template | |
| static WrapperFunctionResult | handle (const char *ArgData, size_t ArgSize, HandlerT &&Handler) |
| Handle a call to a wrapper function. | |
| template<typename HandlerT, typename SendResultT> | |
| static void | handleAsync (const char *ArgData, size_t ArgSize, SendResultT &&SendResult, HandlerT &&Handler) |
| Handle a call to an async wrapper function. |
template<typename SPSRetTagT, typename... SPSTagTs>
class llvm::orc::shared::WrapperFunction< SPSRetTagT(SPSTagTs...)>
Definition at line 437 of file WrapperFunctionUtils.h.
◆ call()
template<typename SPSRetTagT, typename... SPSTagTs>
template<typename CallerFn, typename RetT, typename... ArgTs>
Call a wrapper function.
Caller should be callable as WrapperFunctionResult Fn(const char *ArgData, size_t ArgSize);
Definition at line 446 of file WrapperFunctionUtils.h.
References llvm::orc::shared::WrapperFunctionResult::data(), llvm::orc::shared::detail::ResultDeserializer< SPSRetTagT, RetT >::deserialize(), llvm::orc::shared::WrapperFunctionResult::getOutOfBandError(), llvm::inconvertibleErrorCode(), llvm::make_error(), llvm::orc::shared::detail::ResultDeserializer< SPSRetTagT, RetT >::makeSafe(), llvm::orc::Result, llvm::orc::shared::detail::serializeViaSPSToWrapperFunctionResult(), and llvm::orc::shared::WrapperFunctionResult::size().
◆ callAsync()
template<typename SPSRetTagT, typename... SPSTagTs>
template<typename AsyncCallerFn, typename SendDeserializedResultFn, typename... ArgTs>
Call an async wrapper function.
Caller should be callable as void Fn(unique_function<void(WrapperFunctionResult)> SendResult, WrapperFunctionResult ArgBuffer);
Definition at line 475 of file WrapperFunctionUtils.h.
References llvm::orc::shared::detail::ResultDeserializer< SPSRetTagT, RetT >::deserialize(), llvm::inconvertibleErrorCode(), llvm::make_error(), llvm::orc::shared::detail::ResultDeserializer< SPSRetTagT, RetT >::makeSafe(), llvm::orc::shared::detail::ResultDeserializer< SPSRetTagT, RetT >::makeValue(), llvm::orc::shared::detail::serializeViaSPSToWrapperFunctionResult(), and llvm::Error::success().
◆ handle()
template<typename SPSRetTagT, typename... SPSTagTs>
template
◆ handleAsync()
template<typename SPSRetTagT, typename... SPSTagTs>
template<typename HandlerT, typename SendResultT>
The documentation for this class was generated from the following file:
- include/llvm/ExecutionEngine/Orc/Shared/WrapperFunctionUtils.h