#include <vthreepy_types.h>
|
template<typename Tret , typename T > |
static Tret | lambda_ptr_exec () |
|
template<typename Tret , typename T , typename ... In> |
static Tret | lambda_ptr_exec (In... arguments) |
|
template<typename Tret = void, typename T > |
static auto | vptr (T &t) |
|
template<typename Tret = void, typename ... In, typename T > |
static auto | ptr (T &t) |
|
template<typename T > |
static void * | fn (void *new_fn=nullptr) |
|
Definition at line 456 of file vthreepy_types.h.
◆ fn()
template<typename T >
static void * CLambda::fn |
( |
void * |
new_fn = nullptr | ) |
|
|
inlinestatic |
printf(" %s \n", typeid(T).name());
Definition at line 488 of file vthreepy_types.h.
488 {
491 if (new_fn != nullptr)
494 }
static void * fn(void *new_fn=nullptr)
◆ lambda_ptr_exec() [1/2]
template<typename Tret , typename T >
static Tret CLambda::lambda_ptr_exec |
( |
| ) |
|
|
inlinestatic |
Definition at line 460 of file vthreepy_types.h.
460 {
461 return (Tret)(*(T*)fn<T>())();
462 }
◆ lambda_ptr_exec() [2/2]
template<typename Tret , typename T , typename ... In>
static Tret CLambda::lambda_ptr_exec |
( |
In... |
arguments | ) |
|
|
inlinestatic |
Definition at line 467 of file vthreepy_types.h.
467 {
468 return (Tret)(*(T*)fn<T>())(arguments...);
469 }
◆ ptr()
template<typename Tret = void, typename ... In, typename T >
static auto CLambda::ptr |
( |
T & |
t | ) |
|
|
inlinestatic |
Definition at line 481 of file vthreepy_types.h.
481 {
482 using Tfp = Tret(*)(In ...);
483 fn<T>(&t);
485 }
static Tret lambda_ptr_exec()
◆ vptr()
template<typename Tret = void, typename T >
static auto CLambda::vptr |
( |
T & |
t | ) |
|
|
inlinestatic |
Definition at line 473 of file vthreepy_types.h.
473 {
474 using Tfp = Tret(*)(void);
475 fn<T>(&t);
476 return (Tfp)lambda_ptr_exec<Tret, T>;
477 }
The documentation for this struct was generated from the following file: