|
CbmRoot
|
Different metaprogramming utilities (type traits) for CBM experiment. More...
#include <optional>#include <type_traits>Go to the source code of this file.
Classes | |
| struct | cbm::util::is_in_sequence< What, Sequence > |
| Checks at the compile time, if the non-type template parameter is in a sequence of values. More... | |
| struct | cbm::util::is_all_same<... > |
| Checks, if the types in a sequence are all the same. More... | |
| struct | cbm::util::is_all_same<> |
| struct | cbm::util::is_all_same< T > |
| struct | cbm::util::is_all_same< T, T > |
| struct | cbm::util::is_all_same< T, T, Args... > |
| struct | cbm::util::is_std_optional< typename > |
| Checks, if a value is std::optional. More... | |
| struct | cbm::util::is_std_optional< std::optional< T > > |
| struct | cbm::util::is_pointer_to< T, Class > |
| Checks, if the template argument is a const/non-const pointer of a type. More... | |
| struct | cbm::util::is_pointer_to< const Class *, Class > |
| struct | cbm::util::is_pointer_to< Class *, Class > |
Namespaces | |
| namespace | cbm |
| namespace | cbm::util |
Variables | |
| template<auto... Args> | |
| constexpr bool | cbm::util::is_in_sequence_v = is_in_sequence<Args...>::value |
| template<auto... Values> | |
| constexpr bool | cbm::util::have_same_type_v = is_all_same<decltype(Values)...>::value |
| Checks, if non-type parameter pack has the same type. | |
| template<typename T> | |
| constexpr bool | cbm::util::is_std_optional_v = is_std_optional<T>::value |
| template<typename T, class Class> | |
| constexpr bool | cbm::util::is_pointer_to_v = is_pointer_to<T, Class>::value |
Different metaprogramming utilities (type traits) for CBM experiment.
Definition in file CbmTypeTraits.h.