Iros
 
Loading...
Searching...
No Matches
variant_types.h
Go to the documentation of this file.
1#pragma once
2
4#include "di/meta/algorithm.h"
5#include "di/meta/core.h"
6#include "di/types/prelude.h"
7
8namespace di::vocab {
9namespace detail {
11 template<typename Variant>
13 constexpr auto operator()(InPlaceType<Variant>) const -> concepts::TypeList auto {
15 }
16 };
17}
18
20}
21
22namespace di::meta {
23template<typename T>
25}
Definition tag_invoke.h:33
Definition core.h:164
constexpr tag_invoke_detail::TagInvokeFn tag_invoke
Definition tag_invoke.h:22
Definition merge_interfaces.h:6
RemoveCV< RemoveReference< T > > RemoveCVRef
Definition core.h:74
decltype(vocab::variant_types(in_place_type< meta::RemoveCVRef< T > >)) VariantTypes
Definition variant_types.h:24
Definition erasure_cast.h:7
Definition lazy.h:165
constexpr auto variant_types
Definition variant_types.h:19
constexpr auto in_place_type
Definition in_place_type.h:12
Definition in_place_type.h:5
Definition variant_types.h:10