|
scc
2024.06
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 | |
| struct | ::std::hash< delegate > |
a fast alternative to std::function
Definition at line 37 of file delegate.h.