24 #ifndef LELY_IO2_EVENT_HPP_
25 #define LELY_IO2_EVENT_HPP_
78 operator~(Event rhs) {
79 return static_cast<Event
>(~static_cast<int>(rhs));
83 operator&(Event lhs, Event rhs) {
84 return static_cast<Event
>(
static_cast<int>(lhs) &
static_cast<int>(rhs));
88 operator^(Event lhs, Event rhs) {
89 return static_cast<Event>(
static_cast<int>(lhs) ^
static_cast<int>(rhs));
93 operator|(Event lhs, Event rhs) {
94 return static_cast<Event>(
static_cast<int>(lhs) |
static_cast<int>(rhs));
98 operator&=(Event& lhs, Event rhs) {
99 return lhs = lhs & rhs;
103 operator^=(Event& lhs, Event rhs) {
104 return lhs = lhs ^ rhs;
108 operator|=(Event& lhs, Event rhs) {
109 return lhs = lhs | rhs;
115 #endif // !LELY_IO2_EVENT_HPP_