Changes in src/ResolvExpr/WidenMode.h [5bf3976:2908f08]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/ResolvExpr/WidenMode.h
r5bf3976 r2908f08 17 17 18 18 namespace ResolvExpr { 19 struct WidenMode {20 WidenMode( bool first, bool second ): first( first ), second( second ) {}21 19 22 WidenMode &operator|=( const WidenMode &other ) { 23 first |= other.first; second |= other.second; return *this; 24 } 20 struct WidenMode { 21 WidenMode( bool first, bool second ): first( first ), second( second ) {} 25 22 26 WidenMode &operator&=( const WidenMode &other ) {27 first &= other.first; second &= other.second; return *this;28 23 WidenMode &operator|=( const WidenMode &other ) { 24 first |= other.first; second |= other.second; return *this; 25 } 29 26 30 WidenMode operator|( const WidenMode &other ) {31 WidenMode newWM( *this ); newWM |= other; return newWM;32 27 WidenMode &operator&=( const WidenMode &other ) { 28 first &= other.first; second &= other.second; return *this; 29 } 33 30 34 WidenMode operator&( const WidenMode &other ) {35 WidenMode newWM( *this ); newWM &= other; return newWM;36 31 WidenMode operator|( const WidenMode &other ) { 32 WidenMode newWM( *this ); newWM |= other; return newWM; 33 } 37 34 38 operator bool() { return first && second; } 35 WidenMode operator&( const WidenMode &other ) { 36 WidenMode newWM( *this ); newWM &= other; return newWM; 37 } 39 38 40 bool first : 1, second : 1; 41 }; 39 operator bool() { return first && second; } 42 40 43 static inline WidenMode noWiden() { return { false, false }; } 41 bool first : 1, second : 1; 42 }; 43 44 static inline WidenMode noWiden() { return { false, false }; } 45 44 46 } // namespace ResolvExpr 45 47
Note: See TracChangeset
for help on using the changeset viewer.