libzypp 17.37.10

statemachine.h File Reference
`#include <zypp-core/zyppng/base/signals.h>`
`#include <zypp-core/zyppng/base/Base>`
`#include <variant>`
`#include <tuple>`
`#include <functional>`
`#include <memory>`
`#include <optional>`

Go to the source code of this file.

## Classes
struct | zyppng::detail::StateWithTransitions< State, Transitions >
struct | zyppng::detail::add_type_to_collection< Templ, NewType, Templ< Types... >, true >
struct | zyppng::detail::add_type_to_collection< Templ, NewType, Templ< Types... >, false >
struct | zyppng::detail::collect_transitions_helper< State, TupleSoFar, Head, Transitions >
| collect all transitions that have the same SourceState as the first type argument More...
struct | zyppng::detail::collect_transitions_helper< State, TupleSoFar, Head >
struct | zyppng::detail::collect_transitions< State, 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. More...
struct | zyppng::detail::make_state_set_helper< VariantSoFar, Head >
struct | zyppng::detail::make_state_set< Head, Transitions >
struct | zyppng::detail::is_same_state< A, B >
| Evaluates to true if type A and type B wrap the same State type. More...
struct | zyppng::detail::make_statewithtransition< State, Transitions >
| Turns a State type into its StateWithTransitions counterpart. More...
struct | zyppng::detail::make_statewithtransition_set_helper< VariantSoFar, std::variant< HeadState, State... >, Transitions... >
struct | zyppng::detail::make_statewithtransition_set_helper< VariantSoFar, std::variant< HeadState >, Transitions... >
struct | zyppng::detail::make_statewithtransition_set< NoState, std::variant< HeadState, States... >, Transitions... >
struct | zyppng::Transition< Source, ev, Target, Cond, Op >
class | zyppng::Statemachine< Derived, StateId, Transitions >
| This defines the actual StateMachine. More...
struct | zyppng::Statemachine< Derived, StateId, Transitions >::_InitialState
class | zyppng::BasicState< StatemachineType, isFin >
class | zyppng::SimpleState< StatemachineType, sId, isFin >

## Namespaces
namespace | zyppng
namespace | zyppng::detail

## Typedefs
template<typename T>
using | zyppng::detail::EventSource = SignalProxy<void()> (T::*)()

## Functions
template<typename Variant, typename Type, template< typename, typename > typename Compare = std::is_same, size_t I = 0>
constexpr bool | zyppng::detail::VariantHasType ()
| Constexpr function that evaluates to true if a variant type Variant already contains the type Type.
constexpr bool | zyppng::DefaultStateCondition (true)
constexpr std::nullptr_t | zyppng::DefaultStateTransition (nullptr)