Compile time utilities for working with relationship pairs.
More...
|
using | flecs::pair< First, Second >::type = conditional_t<!is_empty< First >::value||is_empty< Second >::value, First, Second > |
|
using | flecs::pair< First, Second >::first = First |
|
using | flecs::pair< First, Second >::second = Second |
|
template<typename First , typename Second , if_t< is_empty< First >::value > = 0> |
using | flecs::pair_object = pair< First, Second > |
|
template<typename P > |
using | flecs::pair_first_t = transcribe_cv_t< remove_reference_t< P >, typename remove_reference_t< P >::first > |
| Get pair::first from pair while preserving cv qualifiers. More...
|
|
template<typename P > |
using | flecs::pair_second_t = transcribe_cv_t< remove_reference_t< P >, typename remove_reference_t< P >::second > |
| Get pair::second from pair while preserving cv qualifiers. More...
|
|
template<typename P > |
using | flecs::pair_type_t = transcribe_cv_t< remove_reference_t< P >, typename remove_reference_t< P >::type > |
| Get pair::type type from pair while preserving cv qualifiers. More...
|
|
using | flecs::actual_type< T, if_not_t< is_pair< T >::value > >::type = T |
|
using | flecs::actual_type< T, if_t< is_pair< T >::value > >::type = pair_type_t< T > |
|
template<typename T > |
using | flecs::actual_type_t = typename actual_type< T >::type |
|
using | flecs::base_type< T >::type = decay_t< remove_pointer_t< actual_type_t< T > > > |
|
template<typename T > |
using | flecs::base_type_t = typename base_type< T >::type |
|
using | flecs::base_arg_type< T >::type = remove_pointer_t< remove_reference_t< actual_type_t< T > > > |
|
template<typename T > |
using | flecs::base_arg_type_t = typename base_arg_type< T >::type |
|
Compile time utilities for working with relationship pairs.
◆ actual_type_t
template<typename T >
using flecs::actual_type_t = typedef typename actual_type<T>::type |
◆ base_arg_type_t
template<typename T >
using flecs::base_arg_type_t = typedef typename base_arg_type<T>::type |
◆ base_type_t
template<typename T >
using flecs::base_type_t = typedef typename base_type<T>::type |
◆ first
template<typename First , typename Second >
◆ pair_first_t
template<typename P >
using flecs::pair_first_t = typedef transcribe_cv_t<remove_reference_t<P>, typename remove_reference_t<P>::first> |
Get pair::first from pair while preserving cv qualifiers.
Definition at line 87 of file pair.hpp.
◆ pair_object
template<typename First , typename Second , if_t< is_empty< First >::value > = 0>
◆ pair_second_t
template<typename P >
using flecs::pair_second_t = typedef transcribe_cv_t<remove_reference_t<P>, typename remove_reference_t<P>::second> |
Get pair::second from pair while preserving cv qualifiers.
Definition at line 91 of file pair.hpp.
◆ pair_type_t
template<typename P >
using flecs::pair_type_t = typedef transcribe_cv_t<remove_reference_t<P>, typename remove_reference_t<P>::type> |
Get pair::type type from pair while preserving cv qualifiers.
Definition at line 95 of file pair.hpp.
◆ second
template<typename First , typename Second >
◆ type [1/5]
template<typename First , typename Second >
using flecs::pair< First, Second >::type = conditional_t<!is_empty<First>::value || is_empty<Second>::value, First, Second> |
◆ type [2/5]
◆ type [3/5]
◆ type [4/5]
template<typename T >
using flecs::base_type< T >::type = decay_t< remove_pointer_t< actual_type_t<T> > > |
◆ type [5/5]
◆ operator const type &()
template<typename First , typename Second >
flecs::pair< First, Second >::operator const type & |
( |
| ) |
const |
|
inline |
◆ operator type &()
template<typename First , typename Second >
◆ operator*() [1/2]
template<typename First , typename Second >
◆ operator*() [2/2]
template<typename First , typename Second >
const type & flecs::pair< First, Second >::operator* |
( |
| ) |
const |
|
inline |
◆ operator->() [1/2]
template<typename First , typename Second >
◆ operator->() [2/2]
template<typename First , typename Second >
const type * flecs::pair< First, Second >::operator-> |
( |
| ) |
const |
|
inline |
◆ pair() [1/2]
template<typename First , typename Second >
◆ pair() [2/2]
template<typename First , typename Second >
◆ value [1/2]
◆ value [2/2]
Initial value:=
std::is_same<T, actual_type_t<T> >::value && !is_enum<T>::value
Definition at line 138 of file pair.hpp.