1 #ifndef SIPLASPLAS_SIGNALS_SYNCSINK_HPP 2 #define SIPLASPLAS_SIGNALS_SYNCSINK_HPP 5 #include <siplasplas/typeerasure/function.hpp> 6 #include <siplasplas/signals/export.hpp> 32 template<
typename Caller,
typename Function>
48 template<
typename Caller,
typename Callee,
typename Function>
49 SyncSink(Caller& caller, Callee& callee, Function
function) :
68 void invoke(std::vector<cpp::SimpleAny32>&& args)
override;
69 bool invokeWithoutCallee()
const override;
77 #endif // SIPLASPLAS_SIGNALS_SYNCSINK_HPP Implements a direct connection to the destination function.
Definition: syncsink.hpp:20
Definition: canary_allocator.hpp:7
SyncSink(Caller &caller, Function function)
Creates a synchronous sink given a caller and a destination function.
Definition: syncsink.hpp:33
Interface to the signals sink API.
Definition: sink.hpp:39
SyncSink(Caller &caller, Callee &callee, Function function)
Creates a synchronous sink given a caller, a callee, and a destination function.
Definition: syncsink.hpp:49
Stores a type-erased callable of any signature and kind.
Definition: function.hpp:58
decltype(auto) invoke(Callable &&callable, const ::cpp::SimpleAny< Storages > &...args)
Invokes a callable object with the given type-erased arguments.
Definition: invoke.hpp:214