libtcspc C++ API
Streaming TCSPC and time tag data processing
Loading...
Searching...
No Matches
Visiting a variant-or-single event

Description

Equivalent of std::visit for tcspc::variant_or_single_event.

This overload set of functions together take any tcspc::variant_or_single_event as the second parameter.

(Currently there are only overloads for a single event argument, with no variadic version.)

Functions

template<typename Visitor, typename EventList>
constexpr auto tcspc::visit_variant_or_single_event (Visitor &&visitor, variant_event< EventList > &&event)
 Apply a visitor to a tcspc::variant_event (rvalue).
template<typename Visitor, typename EventList>
constexpr auto tcspc::visit_variant_or_single_event (Visitor &&visitor, variant_event< EventList > &event)
 Apply a visitor to a tcspc::variant_event (lvalue).
template<typename Visitor, typename EventList>
constexpr auto tcspc::visit_variant_or_single_event (Visitor &&visitor, variant_event< EventList > const &event)
 Apply a visitor to a tcspc::variant_event (const lvalue).
template<typename Visitor, typename Event>
constexpr auto tcspc::visit_variant_or_single_event (Visitor visitor, Event &&event)
 Apply a visitor to an event that is not a tcspc::variant_event.

Function Documentation

◆ visit_variant_or_single_event() [1/4]

template<typename Visitor, typename EventList>
auto tcspc::visit_variant_or_single_event ( Visitor && visitor,
variant_event< EventList > && event )
constexpr

Apply a visitor to a tcspc::variant_event (rvalue).

Calls std::visit, forwarding visitor and event as arguments.

◆ visit_variant_or_single_event() [2/4]

template<typename Visitor, typename EventList>
auto tcspc::visit_variant_or_single_event ( Visitor && visitor,
variant_event< EventList > & event )
constexpr

Apply a visitor to a tcspc::variant_event (lvalue).

Calls std::visit, forwarding visitor and event as arguments.

◆ visit_variant_or_single_event() [3/4]

template<typename Visitor, typename EventList>
auto tcspc::visit_variant_or_single_event ( Visitor && visitor,
variant_event< EventList > const & event )
constexpr

Apply a visitor to a tcspc::variant_event (const lvalue).

Calls std::visit, forwarding visitor and event as arguments.

◆ visit_variant_or_single_event() [4/4]

template<typename Visitor, typename Event>
auto tcspc::visit_variant_or_single_event ( Visitor visitor,
Event && event )
constexpr

Apply a visitor to an event that is not a tcspc::variant_event.

Calls visitor, forwarding event as its single argument.