#include "di/meta/algorithm.h"
#include "di/meta/language.h"
#include "di/util/get.h"
#include "di/vocab/optional/prelude.h"
#include "di/vocab/variant/variant_like.h"
#include "di/vocab/variant/variant_types.h"
#include "di/vocab/variant/variant_value.h"
Go to the source code of this file.
Namespaces | |
namespace | di |
namespace | di::vocab |
Functions | |
template<size_t index, concepts::VariantLike Var, typename Res = meta::VariantValue<Var, index>> | |
constexpr auto | di::vocab::get_if (Var &&variant) -> Optional< meta::RemoveRValueReference< Res > > |
template<typename T, concepts::VariantLike Var, typename List = meta::VariantTypes<Var>, auto index = meta::Lookup<T, List>, typename Res = meta::VariantValue<Var, index>> requires (meta::UniqueType<T, List>) | |
constexpr auto | di::vocab::get_if (Var &&variant) -> Optional< meta::RemoveRValueReference< Res > > |
template<size_t index, concepts::VariantLike Var, typename Res = meta::VariantValue<Var, index>> | |
constexpr auto | di::get_if (Var &&variant) -> Optional< meta::RemoveRValueReference< Res > > |