Toolbox snapshot
The Reactive C++ Toolbox
Loading...
Searching...
No Matches
Public Member Functions | Friends | List of all members
toolbox::util::BasicSlot< RetT(ArgsT...)> Class Template Reference

#include <toolbox/util/Slot.hpp>

Public Member Functions

constexpr BasicSlot (std::nullptr_t=nullptr) noexcept
 
 ~BasicSlot ()=default
 
constexpr BasicSlot (const BasicSlot &) noexcept=default
 
constexpr BasicSlotoperator= (const BasicSlot &) noexcept=default
 
constexpr BasicSlot (BasicSlot &&) noexcept=default
 
constexpr BasicSlotoperator= (BasicSlot &&) noexcept=default
 
RetT invoke (ArgsT... args) const
 
RetT operator() (ArgsT... args) const
 
constexpr bool empty () const noexcept
 
constexpr operator bool () const noexcept
 
template<RetT(*)(ArgsT...) FnT>
constexpr auto & bind () noexcept
 
template<typename ClassT >
constexpr auto & bind (ClassT *obj) noexcept
 
template<auto MemFnT, typename ClassT = typename FunctionTraits<decltype(MemFnT)>::ClassType>
constexpr auto & bind (ClassT *obj) noexcept
 
void reset (std::nullptr_t=nullptr) noexcept
 

Friends

constexpr bool operator== (BasicSlot lhs, BasicSlot rhs) noexcept
 
constexpr bool operator!= (BasicSlot lhs, BasicSlot rhs) noexcept
 

Detailed Description

template<typename RetT, typename... ArgsT>
class toolbox::util::BasicSlot< RetT(ArgsT...)>

Definition at line 29 of file Slot.hpp.

Constructor & Destructor Documentation

◆ BasicSlot() [1/3]

template<typename RetT , typename... ArgsT>
constexpr toolbox::util::BasicSlot< RetT(ArgsT...)>::BasicSlot ( std::nullptr_t  = nullptr)
inlineexplicitconstexprnoexcept

Definition at line 39 of file Slot.hpp.

◆ ~BasicSlot()

template<typename RetT , typename... ArgsT>
toolbox::util::BasicSlot< RetT(ArgsT...)>::~BasicSlot ( )
default

◆ BasicSlot() [2/3]

template<typename RetT , typename... ArgsT>
constexpr toolbox::util::BasicSlot< RetT(ArgsT...)>::BasicSlot ( const BasicSlot< RetT(ArgsT...)> &  )
constexprdefaultnoexcept

◆ BasicSlot() [3/3]

template<typename RetT , typename... ArgsT>
constexpr toolbox::util::BasicSlot< RetT(ArgsT...)>::BasicSlot ( BasicSlot< RetT(ArgsT...)> &&  )
constexprdefaultnoexcept

Member Function Documentation

◆ operator=() [1/2]

template<typename RetT , typename... ArgsT>
constexpr BasicSlot & toolbox::util::BasicSlot< RetT(ArgsT...)>::operator= ( const BasicSlot< RetT(ArgsT...)> &  )
constexprdefaultnoexcept

◆ operator=() [2/2]

template<typename RetT , typename... ArgsT>
constexpr BasicSlot & toolbox::util::BasicSlot< RetT(ArgsT...)>::operator= ( BasicSlot< RetT(ArgsT...)> &&  )
constexprdefaultnoexcept

◆ invoke()

template<typename RetT , typename... ArgsT>
RetT toolbox::util::BasicSlot< RetT(ArgsT...)>::invoke ( ArgsT...  args) const
inline

Definition at line 50 of file Slot.hpp.

◆ operator()()

template<typename RetT , typename... ArgsT>
RetT toolbox::util::BasicSlot< RetT(ArgsT...)>::operator() ( ArgsT...  args) const
inline

Definition at line 51 of file Slot.hpp.

◆ empty()

template<typename RetT , typename... ArgsT>
constexpr bool toolbox::util::BasicSlot< RetT(ArgsT...)>::empty ( ) const
inlineconstexprnoexcept

Definition at line 52 of file Slot.hpp.

◆ operator bool()

template<typename RetT , typename... ArgsT>
constexpr toolbox::util::BasicSlot< RetT(ArgsT...)>::operator bool ( ) const
inlineexplicitconstexprnoexcept

Definition at line 53 of file Slot.hpp.

◆ bind() [1/3]

template<typename RetT , typename... ArgsT>
template<RetT(*)(ArgsT...) FnT>
constexpr auto & toolbox::util::BasicSlot< RetT(ArgsT...)>::bind ( )
inlineconstexprnoexcept

Definition at line 57 of file Slot.hpp.

◆ bind() [2/3]

template<typename RetT , typename... ArgsT>
template<typename ClassT >
constexpr auto & toolbox::util::BasicSlot< RetT(ArgsT...)>::bind ( ClassT *  obj)
inlineconstexprnoexcept

Definition at line 67 of file Slot.hpp.

◆ bind() [3/3]

template<typename RetT , typename... ArgsT>
template<auto MemFnT, typename ClassT = typename FunctionTraits<decltype(MemFnT)>::ClassType>
constexpr auto & toolbox::util::BasicSlot< RetT(ArgsT...)>::bind ( ClassT *  obj)
inlineconstexprnoexcept

Definition at line 77 of file Slot.hpp.

◆ reset()

template<typename RetT , typename... ArgsT>
void toolbox::util::BasicSlot< RetT(ArgsT...)>::reset ( std::nullptr_t  = nullptr)
inlinenoexcept

Definition at line 85 of file Slot.hpp.

Friends And Related Symbol Documentation

◆ operator==

template<typename RetT , typename... ArgsT>
constexpr bool operator== ( BasicSlot< RetT(ArgsT...)>  lhs,
BasicSlot< RetT(ArgsT...)>  rhs 
)
friend

Definition at line 31 of file Slot.hpp.

◆ operator!=

template<typename RetT , typename... ArgsT>
constexpr bool operator!= ( BasicSlot< RetT(ArgsT...)>  lhs,
BasicSlot< RetT(ArgsT...)>  rhs 
)
friend

Definition at line 35 of file Slot.hpp.


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