Direct-BT  2.3.1
Direct-BT - Direct Bluetooth Programming.
Classes | Namespaces | Functions
function_def.hpp File Reference
#include <cstring>
#include <string>
#include <memory>
#include <cstdint>
#include <vector>
#include <functional>
#include <jau/basic_types.hpp>
Include dependency graph for function_def.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  jau::InvocationFunc< R, A >
 One goal to produce the member-function type instance is to be class type agnostic for storing in the toolkit. More...
 
class  jau::NullInvocationFunc< R, A >
 
class  jau::ClassInvocationFunc< R, C, A >
 
class  jau::PlainInvocationFunc< R, A >
 
class  jau::CaptureInvocationFunc< R, I, A >
 
class  jau::StdInvocationFunc< R, A >
 
class  jau::FunctionDef< R, A >
 

Namespaces

 jau
 

Functions

template<typename R , typename C , typename... A>
jau::FunctionDef< R, A... > jau::bindMemberFunc (C *base, R(C::*mfunc)(A...)) noexcept
 
template<typename R , typename... A>
jau::FunctionDef< R, A... > jau::bindPlainFunc (R(*func)(A...)) noexcept
 
template<typename R , typename I , typename... A>
jau::FunctionDef< R, A... > jau::bindCaptureFunc (const I &data, R(*func)(I &, A...), bool dataIsIdentity=true) noexcept
 const I& data will be copied into the InvocationFunc<..> specialization and hence captured by copy. More...
 
template<typename R , typename I , typename... A>
jau::FunctionDef< R, A... > jau::bindCaptureFunc (I &&data, R(*func)(I &, A...), bool dataIsIdentity=true) noexcept
 I&& data will be moved into the InvocationFunc<..> specialization. More...
 
template<typename R , typename... A>
jau::FunctionDef< R, A... > jau::bindStdFunc (uint64_t id, std::function< R(A...)> func) noexcept
 
template<typename R , typename... A>
jau::FunctionDef< R, A... > jau::bindStdFunc (uint64_t id) noexcept