BVB Source Codes

mars Show bitand.hpp Source code

Return Download mars: download bitand.hpp Source code - Download mars Source code - Type:.hpp
  1.  
  2. // Copyright Aleksey Gurtovoy 2000-2004
  3. // Copyright Jaap Suter 2003
  4. //
  5. // Distributed under the Boost Software License, Version 1.0.
  6. // (See accompanying file LICENSE_1_0.txt or copy at
  7. // http://www.boost.org/LICENSE_1_0.txt)
  8. //
  9.  
  10. // Preprocessed version of "boost/mpl/bitand.hpp" header
  11. // -- DO NOT modify by hand!
  12.  
  13. namespace mars_boost {} namespace boost = mars_boost; namespace mars_boost { namespace mpl {
  14.  
  15. template<
  16.       typename Tag1
  17.     , typename Tag2
  18.     >
  19. struct bitand_impl
  20.     : if_c<
  21.           ( BOOST_MPL_AUX_NESTED_VALUE_WKND(int, Tag1)
  22.               > BOOST_MPL_AUX_NESTED_VALUE_WKND(int, Tag2)
  23.             )
  24.  
  25.         , aux::cast2nd_impl< bitand_impl< Tag1,Tag1 >,Tag1, Tag2 >
  26.         , aux::cast1st_impl< bitand_impl< Tag2,Tag2 >,Tag1, Tag2 >
  27.         >::type
  28. {
  29. };
  30.  
  31. /// for Digital Mars C++/compilers with no CTPS/TTP support
  32. template<> struct bitand_impl< na,na >
  33. {
  34.     template< typename U1, typename U2 > struct apply
  35.     {
  36.         typedef apply type;
  37.         BOOST_STATIC_CONSTANT(int, value  = 0);
  38.     };
  39. };
  40.  
  41. template< typename Tag > struct bitand_impl< na,Tag >
  42. {
  43.     template< typename U1, typename U2 > struct apply
  44.     {
  45.         typedef apply type;
  46.         BOOST_STATIC_CONSTANT(int, value  = 0);
  47.     };
  48. };
  49.  
  50. template< typename Tag > struct bitand_impl< Tag,na >
  51. {
  52.     template< typename U1, typename U2 > struct apply
  53.     {
  54.         typedef apply type;
  55.         BOOST_STATIC_CONSTANT(int, value  = 0);
  56.     };
  57. };
  58.  
  59. template< typename T > struct bitand_tag
  60. {
  61.     typedef typename T::tag type;
  62. };
  63.  
  64. template<
  65.       typename BOOST_MPL_AUX_NA_PARAM(N1)
  66.     , typename BOOST_MPL_AUX_NA_PARAM(N2)
  67.     , typename N3 = na, typename N4 = na, typename N5 = na
  68.     >
  69. struct bitand_
  70.     : bitand_< bitand_< bitand_< bitand_< N1,N2 >, N3>, N4>, N5>
  71. {
  72.     BOOST_MPL_AUX_LAMBDA_SUPPORT(
  73.           5
  74.         , bitand_
  75.         , ( N1, N2, N3, N4, N5 )
  76.         )
  77. };
  78.  
  79. template<
  80.       typename N1, typename N2, typename N3, typename N4
  81.     >
  82. struct bitand_< N1,N2,N3,N4,na >
  83.  
  84.     : bitand_< bitand_< bitand_< N1,N2 >, N3>, N4>
  85. {
  86.     BOOST_MPL_AUX_LAMBDA_SUPPORT_SPEC(
  87.           5
  88.         , bitand_
  89.         , ( N1, N2, N3, N4, na )
  90.         )
  91. };
  92.  
  93. template<
  94.       typename N1, typename N2, typename N3
  95.     >
  96. struct bitand_< N1,N2,N3,na,na >
  97.  
  98.     : bitand_< bitand_< N1,N2 >, N3>
  99. {
  100.     BOOST_MPL_AUX_LAMBDA_SUPPORT_SPEC(
  101.           5
  102.         , bitand_
  103.         , ( N1, N2, N3, na, na )
  104.         )
  105. };
  106.  
  107. template<
  108.       typename N1, typename N2
  109.     >
  110. struct bitand_< N1,N2,na,na,na >
  111.     : bitand_impl<
  112.           typename bitand_tag<N1>::type
  113.         , typename bitand_tag<N2>::type
  114.         >::template apply< N1,N2 >::type
  115. {
  116.     BOOST_MPL_AUX_LAMBDA_SUPPORT_SPEC(
  117.           5
  118.         , bitand_
  119.         , ( N1, N2, na, na, na )
  120.         )
  121.  
  122. };
  123.  
  124. BOOST_MPL_AUX_NA_SPEC2(2, 5, bitand_)
  125.  
  126. }}
  127.  
  128. namespace mars_boost {} namespace boost = mars_boost; namespace mars_boost { namespace mpl {
  129. template<>
  130. struct bitand_impl< integral_c_tag,integral_c_tag >
  131. {
  132.     template< typename N1, typename N2 > struct apply
  133.  
  134.         : integral_c<
  135.               typename aux::largest_int<
  136.                   typename N1::value_type
  137.                 , typename N2::value_type
  138.                 >::type
  139.             , ( BOOST_MPL_AUX_VALUE_WKND(N1)::value
  140.                   & BOOST_MPL_AUX_VALUE_WKND(N2)::value
  141.                 )
  142.             >
  143.     {
  144.     };
  145. };
  146.  
  147. }}
  148.  
downloadbitand.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