Classes | |
struct | eagine::instead_of< Src, Dst > |
struct | eagine::mp_plus< T1, T2 > |
Implementation of addition on types representing numbers. More... | |
struct | eagine::mp_minus< T1, T2 > |
Implementation of subtraction on types representing numbers. More... | |
struct | eagine::mp_negate< T1 > |
Implementation of negation on types representing numbers. More... | |
struct | eagine::mp_list< C > |
Compile-time type list template. More... | |
struct | eagine::mp_is_empty< TL > |
Implements the is_empty operation on compile-time type lists. More... | |
struct | eagine::mp_contains< TL, T > |
Implements the contains operation on compile-time type lists. More... | |
struct | eagine::mp_union_add< TL1, TL2, TL3 > |
Implements the union operation on compile-time type lists. More... | |
struct | eagine::selector< V > |
Template used to construct tag-types used mostly in tag-dispatching. More... | |
struct | eagine::type_identity< T > |
Template type used mostly for function type-tag dispatching. More... | |
struct | eagine::get_type< T, F > |
Implementation detail of the type_t template. More... | |
Typedefs | |
template<typename Src , typename Dst > | |
using | eagine::instead_of_t = typename instead_of< Src, Dst >::type |
template<typename T1 , typename T2 > | |
using | eagine::mp_plus_t = typename mp_plus< T1, T2 >::type |
Addition operation on types representing numbers. More... | |
template<typename T1 , typename T2 > | |
using | eagine::mp_minus_t = typename mp_minus< T1, T2 >::type |
Subtraction operation on types representing numbers. More... | |
template<typename T1 > | |
using | eagine::mp_negate_t = typename mp_negate< T1 >::type |
Unary negation operation on types representing numbers. More... | |
template<typename TL , typename T > | |
using | eagine::mp_contains_t = typename mp_contains< TL, T >::type |
Trait indicating whether a type list contains a specified type. More... | |
template<typename TL1 , typename TL2 > | |
using | eagine::mp_union = mp_union_add< TL1, TL2, mp_list<> > |
Implements the union operation on compile-time type lists. More... | |
template<typename TL1 , typename TL2 > | |
using | eagine::mp_union_t = typename mp_union< TL1, TL2 >::type |
Trait returning the union of types in two type lists. More... | |
using | eagine::default_selector_t = selector< 0U > |
Type alias for the default overload selector type. More... | |
using | eagine::construct_from_t = selector< 0xFU > |
Type alias for the construct-from tag-dispatch selector. More... | |
template<typename T , typename F = void> | |
using | eagine::type_t = typename get_type< T, F >::type |
Template returning nested alias type of type T or void . | |
Functions | |
template<typename T > | |
static constexpr auto | eagine::make_identity (const T &) noexcept -> type_identity< T > |
Makes type_identity for type T of the argument. | |
Variables | |
template<typename T1 , typename T2 > | |
constexpr auto | eagine::mp_plus_v |
Addition operation on types representing numbers. More... | |
template<typename T1 , typename T2 > | |
constexpr auto | eagine::mp_minus_v |
Subtraction operation on types representing numbers. More... | |
template<typename T1 > | |
constexpr auto | eagine::mp_negate_v |
Unary negation operation on types representing numbers. More... | |
template<typename TL > | |
constexpr const auto | eagine::mp_is_empty_v |
Trait indicating whether a type list is empty. More... | |
template<typename TL , typename T > | |
constexpr const auto | eagine::mp_contains_v |
Trait indicating whether a type list contains a specified type. More... | |
constexpr const default_selector_t | eagine::default_selector |
The default overload selector constant. More... | |
constexpr const construct_from_t | eagine::construct_from |
The construct-from tag-dispatch constant. More... | |
using eagine::construct_from_t = typedef selector<0xFU> |
Type alias for the construct-from tag-dispatch selector.
This type is typically used as an additional parameter in templated constructors to avoid conflicts with copy/move constructors.
using eagine::default_selector_t = typedef selector<0U> |
Type alias for the default overload selector type.
using eagine::instead_of_t = typedef typename instead_of<Src, Dst>::type |
Dst
type instead of Src
type. using eagine::mp_contains_t = typedef typename mp_contains<TL, T>::type |
Trait indicating whether a type list contains a specified type.
using eagine::mp_minus_t = typedef typename mp_minus<T1, T2>::type |
Subtraction operation on types representing numbers.
using eagine::mp_negate_t = typedef typename mp_negate<T1>::type |
Unary negation operation on types representing numbers.
using eagine::mp_plus_t = typedef typename mp_plus<T1, T2>::type |
Addition operation on types representing numbers.
using eagine::mp_union = typedef mp_union_add<TL1, TL2, mp_list<> > |
Implements the union operation on compile-time type lists.
using eagine::mp_union_t = typedef typename mp_union<TL1, TL2>::type |
Trait returning the union of types in two type lists.
|
constexpr |
The construct-from tag-dispatch constant.
|
constexpr |
The default overload selector constant.
Referenced by eagine::valtree::compound::fetch_value(), eagine::valtree::compound_attribute::fetch_value(), eagine::from_string(), eagine::program_arg::parse(), and eagine::program_arg::parse_next().
|
constexpr |
Trait indicating whether a type list contains a specified type.
|
constexpr |
Trait indicating whether a type list is empty.
|
constexpr |
Subtraction operation on types representing numbers.
|
constexpr |
Unary negation operation on types representing numbers.
|
constexpr |
Addition operation on types representing numbers.