Proteus
Programmable JIT compilation and optimization for C/C++ using LLVM
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
proteus::detail::LambdaFunctorWrapper< T > Struct Template Reference

#include <JitInterface.h>

Public Types

using LambdaType = Lambda
 

Public Member Functions

template<typename... Args>
PROTEUS_HOST_DEVICE __attribute__ ((annotate("jit"))) __attribute__((annotate("proteus.wrapper_call"
 
PROTEUS_HOST_DEVICE functor_id decltype(auto) operator() (Args &&...args) const noexcept
 

Public Attributes

LambdaType lambda
 

Static Public Attributes

static constexpr std::uint64_t functor_id = FunctorID
 

Member Typedef Documentation

◆ LambdaType

template<typename T >
using proteus::detail::LambdaFunctorWrapper< T >::LambdaType = Lambda

Member Function Documentation

◆ __attribute__()

template<typename T >
template<typename... Args>
PROTEUS_HOST_DEVICE proteus::detail::LambdaFunctorWrapper< T >::__attribute__ ( (annotate("jit"))  )

◆ operator()()

template<typename T >
PROTEUS_HOST_DEVICE functor_id decltype(auto) proteus::detail::LambdaFunctorWrapper< T >::operator() ( Args &&...  args) const
inlinenoexcept

Member Data Documentation

◆ functor_id

template<typename T >
constexpr std::uint64_t proteus::detail::LambdaFunctorWrapper< T >::functor_id = FunctorID
staticconstexpr

◆ lambda

template<typename T >
LambdaType proteus::detail::LambdaFunctorWrapper< T >::lambda

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