epoc32/include/stdapis/boost/mpl/aux_/preprocessed/plain/apply.hpp
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
     1 
     2 // Copyright Aleksey Gurtovoy 2000-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 "boost/mpl/apply.hpp" header
    10 // -- DO NOT modify by hand!
    11 
    12 namespace boost { namespace mpl {
    13 
    14 template<
    15       typename F
    16     >
    17 struct apply0
    18 
    19     : apply_wrap0<
    20           typename lambda<F>::type
    21        
    22         >
    23 {
    24 };
    25 
    26 template<
    27       typename F
    28     >
    29 struct apply< F,na,na,na,na,na >
    30     : apply0<F>
    31 {
    32 };
    33 
    34 template<
    35       typename F, typename T1
    36     >
    37 struct apply1
    38 
    39     : apply_wrap1<
    40           typename lambda<F>::type
    41         , T1
    42         >
    43 {
    44 };
    45 
    46 template<
    47       typename F, typename T1
    48     >
    49 struct apply< F,T1,na,na,na,na >
    50     : apply1< F,T1 >
    51 {
    52 };
    53 
    54 template<
    55       typename F, typename T1, typename T2
    56     >
    57 struct apply2
    58 
    59     : apply_wrap2<
    60           typename lambda<F>::type
    61         , T1, T2
    62         >
    63 {
    64 };
    65 
    66 template<
    67       typename F, typename T1, typename T2
    68     >
    69 struct apply< F,T1,T2,na,na,na >
    70     : apply2< F,T1,T2 >
    71 {
    72 };
    73 
    74 template<
    75       typename F, typename T1, typename T2, typename T3
    76     >
    77 struct apply3
    78 
    79     : apply_wrap3<
    80           typename lambda<F>::type
    81         , T1, T2, T3
    82         >
    83 {
    84 };
    85 
    86 template<
    87       typename F, typename T1, typename T2, typename T3
    88     >
    89 struct apply< F,T1,T2,T3,na,na >
    90     : apply3< F,T1,T2,T3 >
    91 {
    92 };
    93 
    94 template<
    95       typename F, typename T1, typename T2, typename T3, typename T4
    96     >
    97 struct apply4
    98 
    99     : apply_wrap4<
   100           typename lambda<F>::type
   101         , T1, T2, T3, T4
   102         >
   103 {
   104 };
   105 
   106 template<
   107       typename F, typename T1, typename T2, typename T3, typename T4
   108     >
   109 struct apply< F,T1,T2,T3,T4,na >
   110     : apply4< F,T1,T2,T3,T4 >
   111 {
   112 };
   113 
   114 template<
   115       typename F, typename T1, typename T2, typename T3, typename T4
   116     , typename T5
   117     >
   118 struct apply5
   119 
   120     : apply_wrap5<
   121           typename lambda<F>::type
   122         , T1, T2, T3, T4, T5
   123         >
   124 {
   125 };
   126 
   127 /// primary template (not a specialization!)
   128 
   129 template<
   130       typename F, typename T1, typename T2, typename T3, typename T4
   131     , typename T5
   132     >
   133 struct apply
   134     : apply5< F,T1,T2,T3,T4,T5 >
   135 {
   136 };
   137 
   138 }}
   139