|
struct | util::details::ClassNameStaticDumper< T > |
| Implementation detail of staticDumpClassName() . More...
|
|
struct | util::self_type< T > |
| Trait returning the very same type as in the template argument. More...
|
|
struct | util::always_false_type< typename > |
| A std::false_type with a template argument. More...
|
|
struct | util::always_true_type< typename > |
| A std::true_type with a template argument. More...
|
|
struct | util::find_next_type< T, StartFrom, Types > |
| Trait: index of the first occurrence of T among the specified Types , starting from the one with index StartFrom . More...
|
|
struct | util::is_any_of< T, Types > |
| Trait: whether T is among the specified Types . More...
|
|
struct | util::is_instance_of< Template, T > |
| Trait describing whether T is a template instance of Template . More...
|
|
struct | util::is_STLarray< T > |
| Identifies whether the specified type is a STL array. More...
|
|
struct | util::is_character_type< T > |
| Trait: whether type T is a character type. More...
|
|
struct | util::is_string_type< T > |
| Trait: whether type T is a character string type. More...
|
|
struct | util::is_basic_string_type< T > |
| Trait: whether type T is a STL string type. More...
|
|
struct | util::is_basic_string_view_type< T > |
| Trait: whether type T is a std::string_view type. More...
|
|
struct | util::with_const_as< Base, Key > |
| Trait with type Base , plus the constantness as in Key . More...
|
|
struct | util::strip_referenceness_type< T > |
| Trait with type T stripped of all known reference types. More...
|
|
struct | util::reference_addresser |
| Functor applying the proper referenced_address() function. More...
|
|
struct | util::lvalue_reference_into_wrapper_type< T > |
| Trait with type T into std::reference_wrapper if reference. More...
|
|
struct | util::details::find_type_impl< Index, Skip, T, Types > |
|
struct | util::details::find_type_impl< Index, Skip, T, Type, Others...> |
|
struct | util::details::find_type_impl< Index, Skip, T > |
|
struct | util::details::is_character_type_impl< T, typename > |
|
struct | util::details::is_string_type_impl< T, typename > |
|
struct | util::details::is_string_type_impl< T, std::enable_if_t< is_character_type_impl< typename T::value_type >::value > > |
|
struct | util::details::is_string_type_impl< T, std::enable_if_t< std::is_pointer_v< std::decay_t< T > > &&is_character_type_impl< std::remove_pointer_t< std::decay_t< T > > >::value > > |
|
struct | util::details::is_string_type_impl< T, std::enable_if_t< std::is_array_v< std::decay_t< T > > &&is_character_type_impl< std::remove_extent_t< std::decay_t< T > > >::value > > |
|
struct | util::details::is_basic_string_type_impl< T > |
|
struct | util::details::is_basic_string_type_impl< std::basic_string< Args...> > |
|
struct | util::details::is_basic_string_view_type_impl< T > |
|
struct | util::details::is_basic_string_view_type_impl< std::basic_string_view< Args...> > |
|
struct | util::details::ClassNameStaticDumper< T > |
| Implementation detail of staticDumpClassName() . More...
|
|
struct | util::details::with_const_as_impl< Base, typename, typename > |
|
struct | util::details::with_const_as_impl< Base, Key, std::enable_if_t< std::is_const_v< Key > > > |
|
struct | util::details::with_const_as_dispatch_ref< Base, Key, typename > |
|
struct | util::details::with_const_as_dispatch_ref< Base, Key, std::enable_if_t< std::is_lvalue_reference_v< Base > > > |
|
struct | util::details::with_const_as_dispatch_ref< Base, Key, std::enable_if_t< std::is_rvalue_reference_v< Base > > > |
|
struct | util::details::with_const_as_dispatch_keyref< Base, Key > |
|
struct | util::details::with_const_as_dispatcher< Base, Key > |
|
struct | util::details::is_instance_of_impl< Template, T > |
|
struct | util::details::is_instance_of_impl< Template, Template< Args...> > |
|
struct | util::details::strip_referenceness_type_impl< T > |
|
struct | util::details::strip_referenceness_type_impl_wrapref< T, typename > |
|
struct | util::details::strip_referenceness_type_impl_wrapref< T, std::enable_if_t< util::is_reference_wrapper_v< std::remove_cv_t< T > > > > |
|
struct | util::details::strip_referenceness_type_impl_ref< T > |
|
struct | util::details::strip_referenceness_type_impl_ref< T & > |
|
struct | util::details::strip_referenceness_type_impl_ref< T && > |
|
struct | util::details::strip_referenceness_type_impl< T > |
|
struct | util::details::referenced_address_impl< T, typename > |
|
struct | util::details::referenced_address_impl< T, std::enable_if_t< util::is_reference_wrapper_v< T > > > |
|
struct | util::details::lvalue_reference_into_wrapper_type_impl_final< T > |
|
struct | util::details::lvalue_reference_into_wrapper_type_impl_final< T & > |
|
struct | util::details::lvalue_reference_into_wrapper_type_impl_wrapper< T, typename > |
|
struct | util::details::lvalue_reference_into_wrapper_type_impl_wrapper< T, std::enable_if_t< util::is_reference_wrapper_v< T > > > |
|
struct | util::details::lvalue_reference_into_wrapper_type_impl< T > |
|
struct | util::is_instance_of< Template, T > |
| Trait describing whether T is a template instance of Template . More...
|
|
struct | util::find_next_type< T, StartFrom, Types > |
| Trait: index of the first occurrence of T among the specified Types , starting from the one with index StartFrom . More...
|
|
struct | util::is_any_of< T, Types > |
| Trait: whether T is among the specified Types . More...
|
|
struct | util::is_character_type< T > |
| Trait: whether type T is a character type. More...
|
|
struct | util::is_string_type< T > |
| Trait: whether type T is a character string type. More...
|
|
struct | util::is_basic_string_type< T > |
| Trait: whether type T is a STL string type. More...
|
|
struct | util::is_basic_string_view_type< T > |
| Trait: whether type T is a std::string_view type. More...
|
|
struct | util::is_STLarray< T > |
| Identifies whether the specified type is a STL array. More...
|
|
struct | util::is_STLarray< std::array< T, N > > |
|
struct | util::with_const_as< Base, Key > |
| Trait with type Base , plus the constantness as in Key . More...
|
|
struct | util::strip_referenceness_type< T > |
| Trait with type T stripped of all known reference types. More...
|
|
struct | util::lvalue_reference_into_wrapper_type< T > |
| Trait with type T into std::reference_wrapper if reference. More...
|
|
|
template<typename T > |
using | util::self_t = typename self_type< T >::type |
| The very same type as in the template argument. More...
|
|
using | util::type_traits = std::bool_constant< Value > |
|
template<typename A , typename B > |
using | util::is_not_same = std::negation< std::is_same< A, B >> |
| The negation of std::is_same . More...
|
|
template<typename T , typename... Types> |
using | util::find_type = find_next_type< T, 0U, Types...> |
| Trait: index of the first occurrence of T among the specified Types . More...
|
|
template<typename T > |
using | util::is_reference_wrapper = is_instance_of< std::reference_wrapper, T > |
| Identifies whether the specified type is a std::reference_wrapper . More...
|
|
template<typename T > |
using | util::is_unique_ptr = is_instance_of< std::unique_ptr, T > |
| Identifies whether the specified type is a std::unique_ptr . More...
|
|
template<typename Base , typename Key > |
using | util::with_const_as_t = typename with_const_as< Base, Key >::type |
| The type Base , plus the constantness as in Key . More...
|
|
template<typename T > |
using | util::strip_referenceness_t = typename strip_referenceness_type< T >::type |
| The type T stripped of all known reference types. More...
|
|
template<typename T > |
using | util::lvalue_reference_into_wrapper_t = typename lvalue_reference_into_wrapper_type< T >::type |
| The type T stripped of all known reference types. More...
|
|
|
template<typename > |
constexpr bool | util::always_false_v = false |
| A templated constant, always false. More...
|
|
template<typename > |
constexpr bool | util::always_true_v = true |
| A template constant always true. More...
|
|
template<typename T , std::size_t StartFrom, typename... Types> |
constexpr std::size_t | util::find_next_type_v = find_next_type<T, StartFrom, Types...>::value |
|
template<typename T , typename... Types> |
constexpr std::size_t | util::find_type_v = find_type<T, Types...>::value |
|
template<typename T , typename... Types> |
constexpr bool | util::is_any_of_v = is_any_of<T, Types...>::value |
| Whether T is among the specified Types (see util::is_any_of ). More...
|
|
template<typename T , typename U > |
constexpr auto | util::is_same_decay_v = std::is_same_v<std::decay_t<T>, std::decay_t<U>> |
| Whether T and U are the same type, after being applied std::decay . More...
|
|
template<template< typename...> typename Template, typename T > |
constexpr bool | util::is_instance_of_v = is_instance_of<Template, T>::value |
|
template<typename T > |
constexpr bool | util::is_STLarray_v = is_STLarray<T>::value |
| A constant describing whether the specified type is a STL array. More...
|
|
template<typename T > |
constexpr bool | util::is_reference_wrapper_v = is_reference_wrapper<T>::value |
| A constant describing whether the specified type is a std::reference_wrapper . More...
|
|
template<typename T > |
constexpr bool | util::is_unique_ptr_v = is_unique_ptr<T>::value |
| A constant describing whether the specified type is a std::unique_ptr . More...
|
|
template<typename T > |
constexpr bool | util::is_character_type_v = is_character_type<T>::value |
| Whether type T is a character type (see util::is_character_type ). More...
|
|
template<typename T > |
constexpr bool | util::is_string_type_v = is_string_type<T>::value |
| Whether type T is a character string type (see util::is_string_type ). More...
|
|
template<typename T > |
constexpr bool | util::is_basic_string_type_v = is_basic_string_type<T>::value |
|
template<typename T > |
constexpr bool | util::is_basic_string_view_type_v = is_basic_string_view_type<T>::value |
|
Basic C++ metaprogramming utilities.
- Author
- Gianluca Petrillo (petri.nosp@m.llo@.nosp@m.fnal..nosp@m.gov)
- Date
- January 12, 2017
Definition in file MetaUtils.h.