di 0.1.0
Loading...
Searching...
No Matches
di::Atom< T > Struct Template Reference

#include <di/reflect/atom.h>

Public Types

using Type = T

Public Member Functions

auto operator== (Atom const &) const -> bool=default
auto operator<=> (Atom const &) const=default

Static Public Member Functions

template<typename U>
requires (concepts::ConstructibleFrom<T, U> || concepts::RemoveCVRefSameAs<T, U>)
static constexpr auto get (U &&value) -> decltype(auto)
static constexpr auto is_fields () -> bool
static constexpr auto is_field () -> bool
static constexpr auto is_enumerator () -> bool
static constexpr auto is_enumerators () -> bool
static constexpr auto is_atom () -> bool
static constexpr auto is_integer () -> bool
static constexpr auto is_bool () -> bool
static constexpr auto is_string () -> bool
static constexpr auto is_list () -> bool
static constexpr auto is_tuple () -> bool
static constexpr auto is_map () -> bool
static constexpr auto is_variant () -> bool
static constexpr auto is_box () -> bool
static constexpr auto is_custom_atom () -> bool

Member Typedef Documentation

◆ Type

template<typename T>
using di::reflection::Atom< T >::Type = T

Member Function Documentation

◆ get()

template<typename T>
template<typename U>
requires (concepts::ConstructibleFrom<T, U> || concepts::RemoveCVRefSameAs<T, U>)
constexpr auto di::reflection::Atom< T >::get ( U && value) ->decltype(auto)
inlinestaticconstexpr

◆ is_atom()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_atom ( ) ->bool
inlinestaticconstexpr

◆ is_bool()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_bool ( ) ->bool
inlinestaticconstexpr

◆ is_box()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_box ( ) ->bool
inlinestaticconstexpr

◆ is_custom_atom()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_custom_atom ( ) ->bool
inlinestaticconstexpr

◆ is_enumerator()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_enumerator ( ) ->bool
inlinestaticconstexpr

◆ is_enumerators()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_enumerators ( ) ->bool
inlinestaticconstexpr

◆ is_field()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_field ( ) ->bool
inlinestaticconstexpr

◆ is_fields()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_fields ( ) ->bool
inlinestaticconstexpr

◆ is_integer()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_integer ( ) ->bool
inlinestaticconstexpr

◆ is_list()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_list ( ) ->bool
inlinestaticconstexpr

◆ is_map()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_map ( ) ->bool
inlinestaticconstexpr

◆ is_string()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_string ( ) ->bool
inlinestaticconstexpr

◆ is_tuple()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_tuple ( ) ->bool
inlinestaticconstexpr

◆ is_variant()

template<typename T>
constexpr auto di::reflection::Atom< T >::is_variant ( ) ->bool
inlinestaticconstexpr

◆ operator<=>()

template<typename T>
auto di::reflection::Atom< T >::operator<=> ( Atom< T > const & ) const
default

◆ operator==()

template<typename T>
auto di::reflection::Atom< T >::operator== ( Atom< T > const & ) const->bool=default
default

The documentation for this struct was generated from the following file: