emlabcpp
modern opinionated embedded C++ library
emlabcpp::detail::static_function_storage< T, ReturnType, ArgTypes > Class Template Reference

#include <static_function.h>

+ Collaboration diagram for emlabcpp::detail::static_function_storage< T, ReturnType, ArgTypes >:

Public Member Functions

 static_function_storage (T &&item)
 
 static_function_storage (T const &item)
 

Static Public Member Functions

static void * construct_at (void *ptr, T item)
 
static ReturnType invoke (void *const source, ArgTypes... args)
 
static void * handle (void *const source, void *target, static_function_operations const op)
 

Static Public Attributes

static constexpr static_function_vtable< ReturnType, ArgTypes... > vtable
 

Constructor & Destructor Documentation

◆ static_function_storage() [1/2]

template<typename T , typename ReturnType , typename... ArgTypes>
emlabcpp::detail::static_function_storage< T, ReturnType, ArgTypes >::static_function_storage ( T &&  item)
inlineexplicit

◆ static_function_storage() [2/2]

template<typename T , typename ReturnType , typename... ArgTypes>
emlabcpp::detail::static_function_storage< T, ReturnType, ArgTypes >::static_function_storage ( T const &  item)
inlineexplicit

Member Function Documentation

◆ construct_at()

template<typename T , typename ReturnType , typename... ArgTypes>
static void* emlabcpp::detail::static_function_storage< T, ReturnType, ArgTypes >::construct_at ( void *  ptr,
item 
)
inlinestatic

◆ handle()

template<typename T , typename ReturnType , typename... ArgTypes>
static void* emlabcpp::detail::static_function_storage< T, ReturnType, ArgTypes >::handle ( void *const  source,
void *  target,
static_function_operations const  op 
)
inlinestatic

◆ invoke()

template<typename T , typename ReturnType , typename... ArgTypes>
static ReturnType emlabcpp::detail::static_function_storage< T, ReturnType, ArgTypes >::invoke ( void *const  source,
ArgTypes...  args 
)
inlinestatic

References emlabcpp::args.

Member Data Documentation

◆ vtable

template<typename T , typename ReturnType , typename... ArgTypes>
constexpr static_function_vtable< ReturnType, ArgTypes... > emlabcpp::detail::static_function_storage< T, ReturnType, ArgTypes >::vtable
staticconstexpr
Initial value:
= {
static void * handle(void *const source, void *target, static_function_operations const op)
Definition: static_function.h:81
static ReturnType invoke(void *const source, ArgTypes... args)
Definition: static_function.h:74

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