Mundy: Multibody Nonlocal Dynamics Version of the Day
Loading...
Searching...
No Matches
variant.hpp File Reference

Classes

struct  mundy::variant< Alts >
struct  mundy::variant_size< variant< Alts... > >

Namespaces

namespace  mundy

Non-member functions

template<size_t J, class VariantType>
using mundy::variant_alternative_t = typename VariantType::template alternative_t<J>
 Get the J'th alternative type TODO(palmerb4): Make independent of concrete variant instance.
template<class T>
static constexpr size_t mundy::variant_size_v = variant_size<T>::value
template<class T, class... Alts>
constexpr size_t mundy::index_of ()
 Get the index of the given type.
template<class T, class... Alts>
constexpr bool mundy::holds_alternative (const variant< Alts... > &var)
 Check if a specific type is active.
template<class T, class... Alts>
constexpr T & mundy::get (variant< Alts... > &var)
 Get the value of the active type.
template<class T, class... Alts>
constexpr const T & mundy::get (const variant< Alts... > &var)
template<size_t ActiveIdx, class... Alts>
constexpr auto & mundy::get (variant< Alts... > &var)
 Get the value of the active type based on the active index.
template<size_t ActiveIdx, class... Alts>
constexpr const auto & mundy::get (const variant< Alts... > &var)
template<class Visitor, class... Alts>
constexpr decltype(auto) mundy::visit (Visitor &&visitor, variant< Alts... > &var)
 Visit the active value in the variant.
template<class Visitor, class... Alts>
constexpr decltype(auto) mundy::visit (Visitor &&visitor, const variant< Alts... > &var)