|
| constexpr bool | donut::operator== (Monostate, Monostate) noexcept |
| | Compare two monostates for equality.
|
| |
| constexpr std::strong_ordering | donut::operator<=> (Monostate, Monostate) noexcept |
| | Compare two monostates.
|
| |
| template<typename Visitor , detail::derived_from_template_specialization_of< Variant > V> |
| constexpr decltype(auto) | donut::visit (Visitor &&visitor, V &&variant) |
| | Call a visitor functor with the currently active underlying value of a variant.
|
| |
| template<typename T , typename... Ts> |
| constexpr bool | donut::holds_alternative (const Variant< Ts... > &variant) noexcept |
| | Check if a variant currently holds the alternative with the given type.
|
| |
| template<typename T , typename... Ts> |
| constexpr T & | donut::get (Variant< Ts... > &variant) |
| | Access the underlying value with the given type of a variant.
|
| |
| template<typename T , typename... Ts> |
| constexpr const T & | donut::get (const Variant< Ts... > &variant) |
| | Access the underlying value with the given type of a variant.
|
| |
| template<std::size_t Index, typename... Ts> |
| constexpr variant_alternative_t< Index, Variant< Ts... > > & | donut::get (Variant< Ts... > &variant) |
| | Access the underlying value with the given index of a variant.
|
| |
| template<std::size_t Index, typename... Ts> |
| constexpr const variant_alternative_t< Index, Variant< Ts... > > & | donut::get (const Variant< Ts... > &variant) |
| | Access the underlying value with the given index of a variant.
|
| |
| template<typename T , typename... Ts> |
| constexpr T * | donut::get_if (Variant< Ts... > *variant) noexcept |
| | Access the underlying value with the given type of a variant if it is the currently active alternative.
|
| |
| template<typename T , typename... Ts> |
| constexpr const T * | donut::get_if (const Variant< Ts... > *variant) noexcept |
| | Access the underlying value with the given type of a variant if it is the currently active alternative.
|
| |
| template<std::size_t Index, typename... Ts> |
| constexpr variant_alternative_t< Index, Variant< Ts... > > * | donut::get_if (Variant< Ts... > *variant) noexcept |
| | Access the underlying value with the given index of a variant if it is the currently active alternative.
|
| |
| template<std::size_t Index, typename... Ts> |
| constexpr const variant_alternative_t< Index, Variant< Ts... > > * | donut::get_if (const Variant< Ts... > *variant) noexcept |
| | Access the underlying value with the given index of a variant if it is the currently active alternative.
|
| |
| template<typename... Ts> |
| constexpr bool | donut::operator== (const Variant< Ts... > &a, const Variant< Ts... > &b) |
| | Compare two variants for equality.
|
| |
| template<typename... Ts> |
| constexpr bool | donut::operator!= (const Variant< Ts... > &a, const Variant< Ts... > &b) |
| | Compare two variants for inequality.
|
| |
| template<typename... Ts> |
| constexpr bool | donut::operator< (const Variant< Ts... > &a, const Variant< Ts... > &b) |
| | Check if a variant is less than another variant.
|
| |
| template<typename... Ts> |
| constexpr bool | donut::operator<= (const Variant< Ts... > &a, const Variant< Ts... > &b) |
| | Check if a variant is less than or equal to another variant.
|
| |
| template<typename... Ts> |
| constexpr bool | donut::operator> (const Variant< Ts... > &a, const Variant< Ts... > &b) |
| | Check if a variant is greater than another variant.
|
| |
| template<typename... Ts> |
| constexpr bool | donut::operator>= (const Variant< Ts... > &a, const Variant< Ts... > &b) |
| | Check if a variant is greater than or equal to another variant.
|
| |
| template<typename... Ts> |
| constexpr std::common_comparison_category_t< std::compare_three_way_result_t< Ts >... > | donut::operator<=> (const Variant< Ts... > &a, const Variant< Ts... > &b) |
| | Compare two variants.
|
| |
| template<typename V > |
| constexpr detail::Matcher< V > | donut::match (V &&variant) |
| | Choose a function overload to execute based on the active alternative of a variant.
|
| |