9#include "type_list.hpp"
14namespace tcspc::internal {
16template <
typename Event>
17concept abstime_stamped =
requires { Event::abstime; };
20concept ostreamable =
requires(std::ostream &s, E
const &e) {
21 { s << e } -> std::same_as<std::ostream &>;
24template <
typename EventList>
25inline constexpr bool is_ostreamable_list_v =
false;
27template <
typename... Es>
28inline constexpr bool is_ostreamable_list_v<type_list<Es...>> =
29 (ostreamable<Es> && ...);