scc
2022.4.0
SystemC components library
|
a fast alternative to std::function More...
#include <delegate.h>
Public Types | |
template<class C > | |
using | member_pair = ::std::pair< C *const, R(C::*const)(A...)> |
template<class C > | |
using | const_member_pair = ::std::pair< C const *const, R(C::*const)(A...) const > |
Public Member Functions | |
delegate (delegate const &)=default | |
delegate (delegate &&)=default | |
delegate (::std::nullptr_t const) noexcept | |
template<class C , typename = typename ::std::enable_if<::std::is_class<C>{}>::type> | |
delegate (C const *const o) noexcept | |
template<class C , typename = typename ::std::enable_if<::std::is_class<C>{}>::type> | |
delegate (C const &o) noexcept | |
template<class C > | |
delegate (C *const object_ptr, R(C::*const method_ptr)(A...)) | |
template<class C > | |
delegate (C *const object_ptr, R(C::*const method_ptr)(A...) const) | |
template<class C > | |
delegate (C &object, R(C::*const method_ptr)(A...)) | |
template<class C > | |
delegate (C const &object, R(C::*const method_ptr)(A...) const) | |
template<typename T , typename = typename ::std::enable_if<!::std::is_same<delegate, typename ::std::decay<T>::type>{}>::type> | |
delegate (T &&f) | |
delegate & | operator= (delegate const &)=default |
delegate & | operator= (delegate &&)=default |
template<class C > | |
delegate & | operator= (R(C::*const rhs)(A...)) |
template<class C > | |
delegate & | operator= (R(C::*const rhs)(A...) const) |
template<typename T , typename = typename ::std::enable_if<!::std::is_same<delegate, typename ::std::decay<T>::type>{}>::type> | |
delegate & | operator= (T &&f) |
void | reset () |
void | reset_stub () noexcept |
void | swap (delegate &other) noexcept |
bool | operator== (delegate const &rhs) const noexcept |
bool | operator!= (delegate const &rhs) const noexcept |
bool | operator< (delegate const &rhs) const noexcept |
bool | operator== (::std::nullptr_t const) const noexcept |
bool | operator!= (::std::nullptr_t const) const noexcept |
operator bool () const noexcept | |
R | operator() (A... args) const |
Static Public Member Functions | |
template<R(*)(A...) function_ptr> | |
static delegate | from () noexcept |
template<class C , R(C::*)(A...) method_ptr> | |
static delegate | from (C *const object_ptr) noexcept |
template<class C , R(C::*)(A...) const method_ptr> | |
static delegate | from (C const *const object_ptr) noexcept |
template<class C , R(C::*)(A...) method_ptr> | |
static delegate | from (C &object) noexcept |
template<class C , R(C::*)(A...) const method_ptr> | |
static delegate | from (C const &object) noexcept |
template<typename T > | |
static delegate | from (T &&f) |
static delegate | from (R(*const function_ptr)(A...)) |
template<class C > | |
static delegate | from (C *const object_ptr, R(C::*const method_ptr)(A...)) |
template<class C > | |
static delegate | from (C const *const object_ptr, R(C::*const method_ptr)(A...) const) |
template<class C > | |
static delegate | from (C &object, R(C::*const method_ptr)(A...)) |
template<class C > | |
static delegate | from (C const &object, R(C::*const method_ptr)(A...) const) |
Friends | |
class | ::std::hash< delegate > |
a fast alternative to std::function
Definition at line 37 of file delegate.h.