BVB Source Codes

mars Show bitmask.hpp Source code

Return Download mars: download bitmask.hpp Source code - Download mars Source code - Type:.hpp
  1. //  boost/detail/bitmask.hpp  ------------------------------------------------//
  2.  
  3. //  Copyright Beman Dawes 2006
  4.  
  5. //  Distributed under the Boost Software License, Version 1.0
  6. //  http://www.boost.org/LICENSE_1_0.txt
  7.  
  8. //  Usage:  enum foo { a=1, b=2, c=4 };
  9. //          BOOST_BITMASK( foo );
  10. //
  11. //          void f( foo arg );
  12. //          ...
  13. //          f( a | c );
  14.  
  15. #ifndef BOOST_BITMASK_HPP
  16. #define BOOST_BITMASK_HPP
  17.  
  18. #include <boost/cstdint.hpp>
  19.  
  20. #define BOOST_BITMASK(Bitmask)                                            \
  21.                                                                           \
  22.   inline Bitmask operator| (Bitmask x , Bitmask y )                       \
  23.   { return static_cast<Bitmask>( static_cast<mars_boost::int_least32_t>(x)     \
  24.       | static_cast<mars_boost::int_least32_t>(y)); }                          \
  25.                                                                           \
  26.   inline Bitmask operator& (Bitmask x , Bitmask y )                       \
  27.   { return static_cast<Bitmask>( static_cast<mars_boost::int_least32_t>(x)     \
  28.       & static_cast<mars_boost::int_least32_t>(y)); }                          \
  29.                                                                           \
  30.   inline Bitmask operator^ (Bitmask x , Bitmask y )                       \
  31.   { return static_cast<Bitmask>( static_cast<mars_boost::int_least32_t>(x)     \
  32.       ^ static_cast<mars_boost::int_least32_t>(y)); }                          \
  33.                                                                           \
  34.   inline Bitmask operator~ (Bitmask x )                                   \
  35.   { return static_cast<Bitmask>(~static_cast<mars_boost::int_least32_t>(x)); } \
  36.                                                                           \
  37.   inline Bitmask & operator&=(Bitmask & x , Bitmask y)                    \
  38.   { x = x & y ; return x ; }                                              \
  39.                                                                           \
  40.   inline Bitmask & operator|=(Bitmask & x , Bitmask y)                    \
  41.   { x = x | y ; return x ; }                                              \
  42.                                                                           \
  43.   inline Bitmask & operator^=(Bitmask & x , Bitmask y)                    \
  44.   { x = x ^ y ; return x ; }                                              
  45.  
  46. #endif // BOOST_BITMASK_HPP
  47.  
  48.  
downloadbitmask.hpp Source code - Download mars Source code
Related Source Codes/Software:
Hero - Elegant transition library for iOS & tvOS 2017-06-09
deep-photo-styletransfer - Code and data for paper "Deep Photo Style Transfer... 2017-06-09
mastodon - A GNU Social-compatible microblogging server ... 2017-06-09
plyr - A simple HTML5, YouTube and Vimeo player ... 2017-06-08
prepack - Prepack is a partial evaluator for JavaScript. Pre... 2017-06-08
Public-APIs - 2017-06-09
lottie-ios - An iOS library to natively render After Effects ve... 2017-06-09
Awesome-Hacking - A collection of various awesome lists for hackers,... 2017-06-09
algorithms - Minimal examples of data structures and algorithms... 2017-06-10
lectures - Oxford Deep NLP 2017 course 2017-06-10
CRYENGINE - CRYENGINE is a powerful real-time game development... 2017-06-11
postal - 2017-06-11
reactide - Reactide is the first dedicated IDE for React web ... 2017-06-11
rkt - rkt is a pod-native container engine for Linux. It... 2017-06-11
uWebSockets - Tiny WebSockets https://for... 2017-06-11
realworld - TodoMVC for the RealWorld - Exemplary fullstack Me... 2017-06-11
goreplay - GoReplay is an open-source tool for capturing and ... 2017-06-10
pyenv - Simple Python version management 2017-06-10
redux-saga - An alternative side effect model for Redux apps ... 2017-06-10
angular-starter - 2017-06-10

 Back to top