BVB Source Codes

mars Show inherit.hpp Source code

Return Download mars: download inherit.hpp Source code - Download mars Source code - Type:.hpp
  1.  
  2. // Copyright Aleksey Gurtovoy 2001-2004
  3. //
  4. // Distributed under the Boost Software License, Version 1.0.
  5. // (See accompanying file LICENSE_1_0.txt or copy at
  6. // http://www.boost.org/LICENSE_1_0.txt)
  7. //
  8.  
  9. // *Preprocessed* version of the main "inherit.hpp" header
  10. // -- DO NOT modify by hand!
  11.  
  12. namespace mars_boost {} namespace boost = mars_boost; namespace mars_boost { namespace mpl {
  13.  
  14. template<
  15.       typename BOOST_MPL_AUX_NA_PARAM(T1)
  16.     , typename BOOST_MPL_AUX_NA_PARAM(T2)
  17.     >
  18. struct inherit2
  19.     : T1, T2
  20. {
  21.     typedef inherit2 type;
  22.     BOOST_MPL_AUX_LAMBDA_SUPPORT(2, inherit2, (T1, T2))
  23. };
  24.  
  25. template< typename T1 >
  26. struct inherit2< T1,empty_base >
  27. {
  28.     typedef T1 type;
  29.     BOOST_MPL_AUX_LAMBDA_SUPPORT_SPEC(2, inherit2, (T1, empty_base))
  30. };
  31.  
  32. template< typename T2 >
  33. struct inherit2< empty_base,T2 >
  34. {
  35.     typedef T2 type;
  36.     BOOST_MPL_AUX_LAMBDA_SUPPORT_SPEC(2, inherit2, (empty_base, T2))
  37. };
  38.  
  39. template<>
  40. struct inherit2< empty_base,empty_base >
  41. {
  42.     typedef empty_base type;
  43.     BOOST_MPL_AUX_LAMBDA_SUPPORT_SPEC(2, inherit2, (empty_base, empty_base))
  44. };
  45.  
  46. BOOST_MPL_AUX_NA_SPEC(2, inherit2)
  47.  
  48. template<
  49.       typename T1 = na, typename T2 = na, typename T3 = na
  50.     >
  51. struct inherit3
  52.     : inherit2<
  53.           typename inherit2<
  54.               T1, T2
  55.             >::type
  56.         , T3
  57.         >
  58. {
  59.     BOOST_MPL_AUX_LAMBDA_SUPPORT(
  60.           3
  61.         , inherit3
  62.         , ( T1, T2, T3)
  63.         )
  64. };
  65.  
  66. BOOST_MPL_AUX_NA_SPEC(3, inherit3)
  67.  
  68. template<
  69.       typename T1 = na, typename T2 = na, typename T3 = na, typename T4 = na
  70.     >
  71. struct inherit4
  72.     : inherit2<
  73.           typename inherit3<
  74.               T1, T2, T3
  75.             >::type
  76.         , T4
  77.         >
  78. {
  79.     BOOST_MPL_AUX_LAMBDA_SUPPORT(
  80.           4
  81.         , inherit4
  82.         , ( T1, T2, T3, T4)
  83.         )
  84. };
  85.  
  86. BOOST_MPL_AUX_NA_SPEC(4, inherit4)
  87.  
  88. template<
  89.       typename T1 = na, typename T2 = na, typename T3 = na, typename T4 = na
  90.     , typename T5 = na
  91.     >
  92. struct inherit5
  93.     : inherit2<
  94.           typename inherit4<
  95.               T1, T2, T3, T4
  96.             >::type
  97.         , T5
  98.         >
  99. {
  100.     BOOST_MPL_AUX_LAMBDA_SUPPORT(
  101.           5
  102.         , inherit5
  103.         , ( T1, T2, T3, T4, T5)
  104.         )
  105. };
  106.  
  107. BOOST_MPL_AUX_NA_SPEC(5, inherit5)
  108.  
  109. /// primary template
  110.  
  111. template<
  112.       typename T1 = empty_base, typename T2 = empty_base
  113.     , typename T3 = empty_base, typename T4 = empty_base
  114.     , typename T5 = empty_base
  115.     >
  116. struct inherit
  117.     : inherit5< T1,T2,T3,T4,T5 >
  118. {
  119. };
  120.  
  121. template<>
  122. struct inherit< na,na,na,na,na >
  123. {
  124.     template<
  125.  
  126.           typename T1, typename T2, typename T3, typename T4, typename T5
  127.  
  128.         >
  129.     struct apply
  130.         : inherit< T1,T2,T3,T4,T5 >
  131.     {
  132.     };
  133. };
  134.  
  135. BOOST_MPL_AUX_NA_SPEC_LAMBDA(5, inherit)
  136. BOOST_MPL_AUX_NA_SPEC_ARITY(5, inherit)
  137. BOOST_MPL_AUX_NA_SPEC_TEMPLATE_ARITY(5, 5, inherit)
  138. }}
  139.  
  140.  
downloadinherit.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