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. };
  73.  
  74. template<
  75.       typename N1, typename N2, typename N3, typename N4
  76.     >
  77. struct bitand_< N1,N2,N3,N4,na >
  78.  
  79.     : bitand_< bitand_< bitand_< N1,N2 >, N3>, N4>
  80. {
  81.     BOOST_MPL_AUX_LAMBDA_SUPPORT_SPEC(
  82.           5
  83.         , bitand_
  84.         , ( N1, N2, N3, N4, na )
  85.         )
  86. };
  87.  
  88. template<
  89.       typename N1, typename N2, typename N3
  90.     >
  91. struct bitand_< N1,N2,N3,na,na >
  92.  
  93.     : bitand_< bitand_< N1,N2 >, N3>
  94. {
  95.     BOOST_MPL_AUX_LAMBDA_SUPPORT_SPEC(
  96.           5
  97.         , bitand_
  98.         , ( N1, N2, N3, na, na )
  99.         )
  100. };
  101.  
  102. template<
  103.       typename N1, typename N2
  104.     >
  105. struct bitand_< N1,N2,na,na,na >
  106.     : bitand_impl<
  107.           typename bitand_tag<N1>::type
  108.         , typename bitand_tag<N2>::type
  109.         >::template apply< N1,N2 >::type
  110. {
  111.     BOOST_MPL_AUX_LAMBDA_SUPPORT_SPEC(
  112.           5
  113.         , bitand_
  114.         , ( N1, N2, na, na, na )
  115.         )
  116.  
  117. };
  118.  
  119. BOOST_MPL_AUX_NA_SPEC2(2, 5, bitand_)
  120.  
  121. }}
  122.  
  123. namespace mars_boost {} namespace boost = mars_boost; namespace mars_boost { namespace mpl {
  124. template<>
  125. struct bitand_impl< integral_c_tag,integral_c_tag >
  126. {
  127.     template< typename N1, typename N2 > struct apply
  128.  
  129.         : integral_c<
  130.               typename aux::largest_int<
  131.                   typename N1::value_type
  132.                 , typename N2::value_type
  133.                 >::type
  134.             , ( BOOST_MPL_AUX_VALUE_WKND(N1)::value
  135.                   & BOOST_MPL_AUX_VALUE_WKND(N2)::value
  136.                 )
  137.             >
  138.     {
  139.     };
  140. };
  141.  
  142. }}
  143.  
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