Iros
 
Loading...
Searching...
No Matches
di::concepts::VariantLike Concept Reference

#include <di/vocab/variant/variant_like.h>

Concept definition

template<typename T>
concept di::concepts::VariantLike = requires {
} && requires(T const& variant) {
{ vocab::variant_index(variant) } -> SameAs<size_t>;
} && detail::VariantLikeHelper<T, meta::MakeIndexSequence<meta::VariantSize<T>>>::value
Definition variant_like.h:37
RemoveCV< RemoveReference< T > > RemoveCVRef
Definition core.h:74
decltype(vocab::variant_types(in_place_type< meta::RemoveCVRef< T > >)) VariantTypes
Definition variant_types.h:24
constexpr auto in_place_type
Definition in_place_type.h:12
constexpr auto variant_index
Definition variant_index.h:27
constexpr auto variant_size
Definition variant_size.h:18