Guest User

Untitled

a guest
Jul 16th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.76 KB | None | 0 0
  1. enum class info_filter : unsigned{
  2.     NONE = 0,
  3.     LIMITS = 1,
  4.     EXTENSIONS = 2,
  5.     COMPRESSED_FORMATS = 4,
  6.     BINARY_FORMATS = 8,
  7.     ALL = BINARY_FORMATS | COMPRESSED_FORMATS | EXTENSIONS | LIMITS
  8. };
  9.  
  10. void take_some_flags(bitflags<info_filter> filter) {
  11.  
  12.     if (filter.has_flag(info_filter::LIMITS)) {
  13.         std::cout << "Has limits" << std::endl;
  14.     }
  15.  
  16.     if (filter.has_flag(info_filter::COMPRESSED_FORMATS)) {
  17.         std::cout << "Compressed formats" << std::endl;
  18.     }
  19.  
  20.     if (filter.has_flag(info_filter::BINARY_FORMATS)) {
  21.         std::cout << "Binary formats" << std::endl;
  22.     }
  23.  
  24.     if (filter.has_flag(info_filter::EXTENSIONS)) {
  25.         std::cout << "Extensions" << std::endl;
  26.     }
  27. }
  28.  
  29. int main() {
  30.  
  31.     take_some_flags({info_filter::BINARY_FORMATS, info_filter::EXTENSIONS});
  32.     return 0;
  33. }
Add Comment
Please, Sign In to add comment