Direct-BT v3.3.0-1-gc2d430c
Direct-BT - Direct Bluetooth Programming.
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
jau::func::std_target_t< R, A > Class Template Referencefinal

func::std_target_t implementation for std::function instances, identifiable as func::target_type::std via jau::function<R(A...)>::type(). More...

#include <functional.hpp>

Inheritance diagram for jau::func::std_target_t< R, A >:
Collaboration diagram for jau::func::std_target_t< R, A >:

Public Types

typedef delegate_t< R, A... > delegate_type
 

Public Member Functions

 std_target_t (uint64_t _id) noexcept
 
 std_target_t (uint64_t _id, std::function< R(A...)> _function) noexcept
 
operator() (A... args) override
 
bool operator== (const target_t< R, A... > &rhs) const noexcept override
 
- Public Member Functions inherited from jau::func::target_t< R, A... >
 target_t (const target_t &o) noexcept=default
 
 target_t (target_t &&o) noexcept=default
 
virtual ~target_t () noexcept
 
virtual R operator() (A... args)=0
 
target_toperator= (const target_t &o) noexcept=default
 
target_toperator= (target_t &&o) noexcept=default
 
virtual bool operator== (const target_t< R, A... > &rhs) const noexcept=0
 
constexpr target_type type () const noexcept
 Return the func::target_type of this invocation function wrapper. More...
 

Static Public Member Functions

static delegate_type delegate (uint64_t id, std::function< R(A...)> function) noexcept
 

Additional Inherited Members

- Protected Member Functions inherited from jau::func::target_t< R, A... >
 target_t (target_type ttype_) noexcept
 

Detailed Description

template<typename R, typename... A>
class jau::func::std_target_t< R, A >

func::std_target_t implementation for std::function instances, identifiable as func::target_type::std via jau::function<R(A...)>::type().

Notable, instance is holding a unique uint64_t identifier to allow implementing the equality operator, not supported by std::function.

Template Parameters
Rfunction return type
Afunction arguments
See also
Function Overview

Definition at line 1153 of file functional.hpp.

Member Typedef Documentation

◆ delegate_type

template<typename R , typename... A>
typedef delegate_t<R, A...> jau::func::std_target_t< R, A >::delegate_type

Definition at line 1155 of file functional.hpp.

Constructor & Destructor Documentation

◆ std_target_t() [1/2]

template<typename R , typename... A>
jau::func::std_target_t< R, A >::std_target_t ( uint64_t  _id,
std::function< R(A...)>  _function 
)
inlinenoexcept

Definition at line 561 of file functional2.hpp.

◆ std_target_t() [2/2]

template<typename R , typename... A>
jau::func::std_target_t< R, A >::std_target_t ( uint64_t  _id)
inlinenoexcept

Definition at line 565 of file functional2.hpp.

Member Function Documentation

◆ delegate()

template<typename R , typename... A>
static delegate_type jau::func::std_target_t< R, A >::delegate ( uint64_t  id,
std::function< R(A...)>  function 
)
inlinestaticnoexcept

Definition at line 1188 of file functional.hpp.

Here is the caller graph for this function:

◆ operator()()

template<typename R , typename... A>
R jau::func::std_target_t< R, A >::operator() ( A...  args)
inlineoverridevirtual

Implements jau::func::target_t< R, A... >.

Definition at line 569 of file functional2.hpp.

◆ operator==()

template<typename R , typename... A>
bool jau::func::std_target_t< R, A >::operator== ( const target_t< R, A... > &  rhs) const
inlineoverridevirtualnoexcept

Implements jau::func::target_t< R, A... >.

Definition at line 573 of file functional2.hpp.


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