Changeset 461046f for src/AST/Bitfield.hpp
- Timestamp:
- May 22, 2019, 1:00:28 PM (5 years ago)
- Branches:
- ADT, arm-eh, ast-experimental, cleanup-dtors, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
- Children:
- 3f840e3
- Parents:
- ca8704f
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/AST/Bitfield.hpp
rca8704f r461046f 57 57 }; 58 58 59 /// Adds default printing operator to a bitfield type. 60 /// Include in definition to add print function, requires other bitfield operators. 61 /// @param N Number of bits in bitfield 62 #define MakeBitfieldPrint( N ) \ 63 static const char* Names[]; \ 64 \ 65 void print( std::ostream & os ) const { \ 66 if ( (*this).any() ) { \ 67 for ( unsigned int i = 0; i < N; i += 1 ) { \ 68 if ( (*this)[i] ) { \ 69 os << Names[i] << ' '; \ 70 } \ 71 } \ 72 } \ 73 } 59 template<typename T> 60 inline bool operator== ( const bitfield<T> & a, const bitfield<T> & b ) { 61 return a.val == b.val; 62 } 63 64 template<typename T> 65 inline bool operator!= ( const bitfield<T> & a, const bitfield<T> & b ) { 66 return !(a == b); 67 } 74 68 75 69 // Local Variables: //
Note: See TracChangeset
for help on using the changeset viewer.