LLVM: llvm::orc::shared::MethodWrapperHandler< RetT, ClassT, ArgTs (original) (raw)

A function object that takes an ExecutorAddr as its first argument, casts that address to a ClassT*, then calls the given method on that pointer passing in the remaining function arguments. More...

template<typename RetT, typename ClassT, typename... ArgTs>
class llvm::orc::shared::MethodWrapperHandler< RetT, ClassT, ArgTs >

A function object that takes an ExecutorAddr as its first argument, casts that address to a ClassT*, then calls the given method on that pointer passing in the remaining function arguments.

This utility removes some of the boilerplate from writing wrappers for method calls.

class MyClass {

public:

std::string myMethod(uint32_t, bool) { ... }

};

using SPSMyMethodWrapperSignature =

WrapperFunctionResult

myMethodCallWrapper(const char *ArgData, size_t ArgSize) {

return WrapperFunction::handle(

}

Definition at line 604 of file WrapperFunctionUtils.h.