1 2 3 4 5 6
#define UNC_DECLARE_FLAGS(flag_type, enum_type) \ using flag_type = flags<enum_type> #define UNC_DECLARE_OPERATORS_FOR_FLAGS(flag_type) \ inline flag_type operator&(flag_type::enum_t f1, flag_type::enum_t f2) \ { return(flag_type { f1 } & f2); }