E-MailRelay

Classes | Namespaces | Typedefs | Functions
gslot.h File Reference
`#include "gdef.h"`
`#include "gexception.h"`
`#include "gassert.h"`
`#include <functional>`
`#include <memory>`

Go to the source code of this file.

## Classes
struct | G::Slot::Binder< T, Args >
| A functor class template that contains the target object pointer and method pointer, similar to c++20 bind_front(&T::fn,tp). More...
struct | G::Slot::Slot< Args >
| A slot class template that is parameterised only on the target method's signature (with an implicit void return) and not on the target class. More...
struct | G::Slot::SignalImp
| A slot/signal scoping class. More...
struct | G::Slot::Signal< SlotArgs >
| A slot holder, with connect() and emit() methods. More...

## Namespaces
namespace | G
| Low-level classes.
namespace | G::Slot
| A callback mechanism that isolates event sinks from event sources.

## Typedefs
using | G::Slot::Signal0 = Signal<>
template<typename T >
using | G::Slot::Signal1 = Signal< T >
template<typename T1 , typename T2 >
using | G::Slot::Signal2 = Signal< T1, T2 >
template<typename T1 , typename T2 , typename T3 >
using | G::Slot::Signal3 = Signal< T1, T2, T3 >
template<typename T1 , typename T2 , typename T3 , typename T4 >
using | G::Slot::Signal4 = Signal< T1, T2, T3, T4 >
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
using | G::Slot::Signal5 = Signal< T1, T2, T3, T4, T5 >
using | G::Slot::Slot0 = Slot<>
template<typename T >
using | G::Slot::Slot1 = Slot< T >
template<typename T1 , typename T2 >
using | G::Slot::Slot2 = Slot< T1, T2 >
template<typename T1 , typename T2 , typename T3 >
using | G::Slot::Slot3 = Slot< T1, T2, T3 >
template<typename T1 , typename T2 , typename T3 , typename T4 >
using | G::Slot::Slot4 = Slot< T1, T2, T3, T4 >
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
using | G::Slot::Slot5 = Slot< T1, T2, T3, T4, T5 >

## Functions
template<typename TSink , typename... Args>
Slot< Args... > | G::Slot::slot (TSink &sink, void(TSink::*method)(Args...))
| A factory function for Slot objects. More...