Classes |
|
struct | EnumWrapper< ENUMCLASS > |
Namespaces |
|
details |
Macros |
|
#define | PRIVATE_MAXON_ENUM_TYPE0 (FRIEND, DECL, EXTRA, E, id) |
#define | PRIVATE_MAXON_ENUM_DATATYPE (FRIEND, DECL, E, N, id) |
#define | PRIVATE_MAXON_ENUM_TYPE1 (FRIEND, DECL, EXTRA, E, id) |
#define | PRIVATE_MAXON_ENUM_TYPE2 (FRIEND, DECL, EXTRA, E, id) |
#define | MAXON_DATATYPE_EARLY_ENUM (E, id) |
#define | PRIVATE_MAXON_ENUM_TYPE_C (nonempty, FRIEND, DECL, EXTRA, E, id) |
#define | PRIVATE_MAXON_ENUM_TYPE_B (nonempty, FRIEND, DECL, EXTRA, E, id) |
#define | PRIVATE_MAXON_ENUM_TYPE_A (nonempty, FRIEND, DECL, EXTRA, E, id) |
#define | PRIVATE_MAXON_ENUM_TYPE (FRIEND, DECL, EXTRA, E, ...) |
#define | MAXON_ENUM_ORDERED_LIST (E, ...) |
#define | MAXON_ENUM_ORDERED_LIST_CLASS (E, ...) |
#define | PRIVATE_MAXON_ENUM_UNORDERED_LIST (FRIEND, E) |
#define | MAXON_ENUM_LIST (E, ...) |
#define | MAXON_ENUM_LIST_CLASS (E, ...) |
#define | PRIVATE_MAXON_ENUM_FLAGS (FRIEND, E) |
#define | MAXON_ENUM_FLAGS (E, ...) |
#define | MAXON_ENUM_ORDERED_FLAGS (E, ...) |
#define | MAXON_ENUM_FLAGS_CLASS (E, ...) |
#define | MAXON_ENUM_ORDERED_FLAGS_CLASS (E, ...) |
Typedefs |
|
template<typename T > | |
using | UnderlyingType = typename std::conditional< STD_IS_REPLACEMENT (enum, T), typename std::underlying_type< typename std::conditional< STD_IS_REPLACEMENT (enum, T), T, ENUM_DONT_INITIALIZE >::type >::type, T >::type |
函数 |
|
template<typename E > | |
constexpr E | ConditionalFlag ( Bool condition, E value) |
template<typename E > | |
Bool | IsAllSet (E flags, E mask) |
#define PRIVATE_MAXON_ENUM_TYPE0 | ( | FRIEND, | |
DECL, | |||
EXTRA, | |||
E, | |||
id | |||
) |
#define PRIVATE_MAXON_ENUM_DATATYPE | ( | FRIEND, | |
DECL, | |||
E, | |||
N, | |||
id | |||
) |
#define PRIVATE_MAXON_ENUM_TYPE1 | ( | FRIEND, | |
DECL, | |||
EXTRA, | |||
E, | |||
id | |||
) |
#define PRIVATE_MAXON_ENUM_TYPE2 | ( | FRIEND, | |
DECL, | |||
EXTRA, | |||
E, | |||
id | |||
) |
#define MAXON_DATATYPE_EARLY_ENUM | ( | E, | |
id | |||
) |
#define PRIVATE_MAXON_ENUM_TYPE_C | ( | nonempty, | |
FRIEND, | |||
DECL, | |||
EXTRA, | |||
E, | |||
id | |||
) |
#define PRIVATE_MAXON_ENUM_TYPE_B | ( | nonempty, | |
FRIEND, | |||
DECL, | |||
EXTRA, | |||
E, | |||
id | |||
) |
#define PRIVATE_MAXON_ENUM_TYPE_A | ( | nonempty, | |
FRIEND, | |||
DECL, | |||
EXTRA, | |||
E, | |||
id | |||
) |
#define PRIVATE_MAXON_ENUM_TYPE | ( | FRIEND, | |
DECL, | |||
EXTRA, | |||
E, | |||
... | |||
) |
#define MAXON_ENUM_ORDERED_LIST | ( | E, | |
... | |||
) |
#define MAXON_ENUM_ORDERED_LIST_CLASS | ( | E, | |
... | |||
) |
#define PRIVATE_MAXON_ENUM_UNORDERED_LIST | ( | FRIEND, | |
E | |||
) |
#define MAXON_ENUM_LIST | ( | E, | |
... | |||
) |
#define MAXON_ENUM_LIST_CLASS | ( | E, | |
... | |||
) |
#define PRIVATE_MAXON_ENUM_FLAGS | ( | FRIEND, | |
E | |||
) |
#define MAXON_ENUM_FLAGS | ( | E, | |
... | |||
) |
#define MAXON_ENUM_ORDERED_FLAGS | ( | E, | |
... | |||
) |
#define MAXON_ENUM_FLAGS_CLASS | ( | E, | |
... | |||
) |
#define MAXON_ENUM_ORDERED_FLAGS_CLASS | ( | E, | |
... | |||
) |
using UnderlyingType = typename std::conditional< STD_IS_REPLACEMENT (enum, T), typename std::underlying_type<typename std::conditional< STD_IS_REPLACEMENT (enum, T), T, ENUM_DONT_INITIALIZE>::type>::type, T>::type |
A type alias for the underlying type of T if T is an enumeration type, or T itself.
|
constexpr |
Bool IsAllSet | ( | E | flags , |
E | mask | ||
) |