9#include "type_list.hpp"
33template <
typename Proc>
35 { p.flush() } -> std::same_as<void>;
64template <
typename Proc,
typename Event>
66 { p.handle(std::move(e)) } -> std::same_as<void>;
90template <
typename Proc,
typename Event>
92 { p.handle(e) } -> std::same_as<void>;
117template <
typename Proc,
typename... Events>
142template <
typename Proc,
typename... Events>
149template <
typename Proc,
typename TypeList>
struct handles_event_list_impl {
153template <
typename Proc,
typename... Events>
154struct handles_event_list_impl<Proc,
type_list<Events...>>
155 : std::bool_constant<handler_for<Proc, Events...>> {};
193template <
typename Proc,
typename EventList>
195 internal::handles_event_list_impl<Proc, EventList>::value;
201template <
typename Proc,
typename TypeList>
struct is_processor_of_list_impl {
205template <
typename Proc,
typename... Events>
206struct is_processor_of_list_impl<Proc,
type_list<Events...>>
207 : std::bool_constant<processor<Proc, Events...>> {};
245template <
typename Proc,
typename EventList>
247 internal::is_processor_of_list_impl<Proc, EventList>::value;
Concept that is satisfied when a processor handles an event type by const lvalue reference.
Definition processor.hpp:91
Concept that is satisfied when a processor handles flushing.
Definition processor.hpp:34
Concept that is satisfied when a processor handles the given event types.
Definition processor.hpp:118
Concept that is satisfied when a processor handles the given event types and flush.
Definition processor.hpp:143
Concept that is satisfied when a processor handles an event type by rvalue reference.
Definition processor.hpp:65
Concept that is satisfied when a type is a tcspc::type_list specialization.
Definition type_list.hpp:64
constexpr bool is_processor_of_list_v
Trait variable to check whether a processor handles a list of event types and flush.
Definition processor.hpp:246
constexpr bool handles_event_list_v
Trait variable to check whether a processor handles a list of event types.
Definition processor.hpp:194
libtcspc namespace.
Definition acquire.hpp:29
Compile-time representation of a list of types.
Definition type_list.hpp:38