libzypp 17.37.17
zyppng::detail::make_state_set_helper< VariantSoFar, Head, Transitions > Struct Template Reference

Iterates over the list of Transitions and collects them all in a std::variant<State1, State2, ...> type. More...

#include <zypp-core/zyppng/base/statemachine.h>

Public Types

using WithSource = typename add_type_to_collection< std::variant, typename Head::SourceType, VariantSoFar, !VariantHasType<VariantSoFar, typename Head::SourceType>() >::Type
using WithTarget = typename add_type_to_collection< std::variant, typename Head::TargetType, WithSource, !VariantHasType<WithSource, typename Head::TargetType>() >::Type
using Type = typename make_state_set_helper<WithTarget, Transitions...>::Type

Detailed Description

template<typename VariantSoFar, typename Head, typename ... Transitions>
struct zyppng::detail::make_state_set_helper< VariantSoFar, Head, Transitions >

Iterates over the list of Transitions and collects them all in a std::variant<State1, State2, ...> type.

Definition at line 142 of file statemachine.h.

Member Typedef Documentation

◆ WithSource

template<typename VariantSoFar, typename Head, typename ... Transitions>
using zyppng::detail::make_state_set_helper< VariantSoFar, Head, Transitions >::WithSource = typename add_type_to_collection< std::variant, typename Head::SourceType, VariantSoFar, !VariantHasType<VariantSoFar, typename Head::SourceType>() >::Type

Definition at line 143 of file statemachine.h.

◆ WithTarget

template<typename VariantSoFar, typename Head, typename ... Transitions>
using zyppng::detail::make_state_set_helper< VariantSoFar, Head, Transitions >::WithTarget = typename add_type_to_collection< std::variant, typename Head::TargetType, WithSource, !VariantHasType<WithSource, typename Head::TargetType>() >::Type

Definition at line 144 of file statemachine.h.

◆ Type

template<typename VariantSoFar, typename Head, typename ... Transitions>
using zyppng::detail::make_state_set_helper< VariantSoFar, Head, Transitions >::Type = typename make_state_set_helper<WithTarget, Transitions...>::Type

Definition at line 145 of file statemachine.h.


The documentation for this struct was generated from the following file: