NDDEM
|
Checks if a type is an enum. More...
#include <common.hpp>
Public Types | |
using | type = StrippedT |
using | base_type = typename enum_underlying_type< StrippedT, value >::type |
Static Public Attributes | |
static const bool | value = std::is_enum<StrippedT>::value |
Private Types | |
using | DecayedT = typename std::decay< T >::type |
using | StrippedT = typename ::cereal::traits::strip_minimal< DecayedT >::type |
Checks if a type is an enum.
This is needed over simply calling std::is_enum because the type traits checking at compile time will attempt to call something like load_minimal with a special NoConvertRef struct that wraps up the true type.
This will strip away any of that and also expose the true underlying type.
using cereal::common_detail::is_enum< T >::base_type = typename enum_underlying_type<StrippedT, value>::type |
|
private |
|
private |
using cereal::common_detail::is_enum< T >::type = StrippedT |
|
static |