summaryrefslogtreecommitdiffstats
path: root/libs/hwui/utils
diff options
context:
space:
mode:
Diffstat (limited to 'libs/hwui/utils')
-rw-r--r--libs/hwui/utils/Macros.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/libs/hwui/utils/Macros.h b/libs/hwui/utils/Macros.h
index 2ed605e..9f7ac1c 100644
--- a/libs/hwui/utils/Macros.h
+++ b/libs/hwui/utils/Macros.h
@@ -36,9 +36,21 @@
#Type " must have standard layout")
#define MAKE_FLAGS_ENUM(enumType) \
+ inline int operator|=(int lhs, enumType rhs) { \
+ return lhs | static_cast<int>(rhs); \
+ } \
+ inline int operator|(int lhs, enumType rhs) { \
+ return lhs | static_cast<int>(rhs); \
+ } \
+ inline int operator|(enumType lhs, int rhs) { \
+ return static_cast<int>(lhs) | rhs; \
+ } \
inline int operator|(enumType lhs, enumType rhs) { \
return static_cast<int>(lhs) | static_cast<int>(rhs); \
} \
+ inline int operator&=(int lhs, enumType rhs) { \
+ return lhs & static_cast<int>(rhs); \
+ } \
inline int operator&(int lhs, enumType rhs) { \
return lhs & static_cast<int>(rhs); \
} \