File indexing completed on 2025-01-18 09:41:40
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 namespace boost { namespace mpl {
0014
0015 template<>
0016 struct m_at_impl<0>
0017 {
0018 template< typename Map > struct result_
0019 {
0020 typedef typename Map::item0 type;
0021 };
0022 };
0023
0024 template<>
0025 struct m_item_impl<1>
0026 {
0027 template< typename Key, typename T, typename Base > struct result_
0028 : m_item_< Key,T,Base >
0029 {
0030 typedef pair< Key,T > item0;
0031 };
0032 };
0033
0034 template<
0035 typename P0
0036 >
0037 struct map1
0038 : m_item<
0039 1
0040 , typename P0::first
0041 , typename P0::second
0042 , map0< >
0043 >
0044 {
0045 typedef map1 type;
0046 };
0047
0048 template<>
0049 struct m_at_impl<1>
0050 {
0051 template< typename Map > struct result_
0052 {
0053 typedef typename Map::item1 type;
0054 };
0055 };
0056
0057 template<>
0058 struct m_item_impl<2>
0059 {
0060 template< typename Key, typename T, typename Base > struct result_
0061 : m_item_< Key,T,Base >
0062 {
0063 typedef pair< Key,T > item1;
0064 };
0065 };
0066
0067 template<
0068 typename P0, typename P1
0069 >
0070 struct map2
0071 : m_item<
0072 2
0073 , typename P1::first
0074 , typename P1::second
0075 , map1<P0>
0076 >
0077 {
0078 typedef map2 type;
0079 };
0080
0081 template<>
0082 struct m_at_impl<2>
0083 {
0084 template< typename Map > struct result_
0085 {
0086 typedef typename Map::item2 type;
0087 };
0088 };
0089
0090 template<>
0091 struct m_item_impl<3>
0092 {
0093 template< typename Key, typename T, typename Base > struct result_
0094 : m_item_< Key,T,Base >
0095 {
0096 typedef pair< Key,T > item2;
0097 };
0098 };
0099
0100 template<
0101 typename P0, typename P1, typename P2
0102 >
0103 struct map3
0104 : m_item<
0105 3
0106 , typename P2::first
0107 , typename P2::second
0108 , map2< P0,P1 >
0109 >
0110 {
0111 typedef map3 type;
0112 };
0113
0114 template<>
0115 struct m_at_impl<3>
0116 {
0117 template< typename Map > struct result_
0118 {
0119 typedef typename Map::item3 type;
0120 };
0121 };
0122
0123 template<>
0124 struct m_item_impl<4>
0125 {
0126 template< typename Key, typename T, typename Base > struct result_
0127 : m_item_< Key,T,Base >
0128 {
0129 typedef pair< Key,T > item3;
0130 };
0131 };
0132
0133 template<
0134 typename P0, typename P1, typename P2, typename P3
0135 >
0136 struct map4
0137 : m_item<
0138 4
0139 , typename P3::first
0140 , typename P3::second
0141 , map3< P0,P1,P2 >
0142 >
0143 {
0144 typedef map4 type;
0145 };
0146
0147 template<>
0148 struct m_at_impl<4>
0149 {
0150 template< typename Map > struct result_
0151 {
0152 typedef typename Map::item4 type;
0153 };
0154 };
0155
0156 template<>
0157 struct m_item_impl<5>
0158 {
0159 template< typename Key, typename T, typename Base > struct result_
0160 : m_item_< Key,T,Base >
0161 {
0162 typedef pair< Key,T > item4;
0163 };
0164 };
0165
0166 template<
0167 typename P0, typename P1, typename P2, typename P3, typename P4
0168 >
0169 struct map5
0170 : m_item<
0171 5
0172 , typename P4::first
0173 , typename P4::second
0174 , map4< P0,P1,P2,P3 >
0175 >
0176 {
0177 typedef map5 type;
0178 };
0179
0180 template<>
0181 struct m_at_impl<5>
0182 {
0183 template< typename Map > struct result_
0184 {
0185 typedef typename Map::item5 type;
0186 };
0187 };
0188
0189 template<>
0190 struct m_item_impl<6>
0191 {
0192 template< typename Key, typename T, typename Base > struct result_
0193 : m_item_< Key,T,Base >
0194 {
0195 typedef pair< Key,T > item5;
0196 };
0197 };
0198
0199 template<
0200 typename P0, typename P1, typename P2, typename P3, typename P4
0201 , typename P5
0202 >
0203 struct map6
0204 : m_item<
0205 6
0206 , typename P5::first
0207 , typename P5::second
0208 , map5< P0,P1,P2,P3,P4 >
0209 >
0210 {
0211 typedef map6 type;
0212 };
0213
0214 template<>
0215 struct m_at_impl<6>
0216 {
0217 template< typename Map > struct result_
0218 {
0219 typedef typename Map::item6 type;
0220 };
0221 };
0222
0223 template<>
0224 struct m_item_impl<7>
0225 {
0226 template< typename Key, typename T, typename Base > struct result_
0227 : m_item_< Key,T,Base >
0228 {
0229 typedef pair< Key,T > item6;
0230 };
0231 };
0232
0233 template<
0234 typename P0, typename P1, typename P2, typename P3, typename P4
0235 , typename P5, typename P6
0236 >
0237 struct map7
0238 : m_item<
0239 7
0240 , typename P6::first
0241 , typename P6::second
0242 , map6< P0,P1,P2,P3,P4,P5 >
0243 >
0244 {
0245 typedef map7 type;
0246 };
0247
0248 template<>
0249 struct m_at_impl<7>
0250 {
0251 template< typename Map > struct result_
0252 {
0253 typedef typename Map::item7 type;
0254 };
0255 };
0256
0257 template<>
0258 struct m_item_impl<8>
0259 {
0260 template< typename Key, typename T, typename Base > struct result_
0261 : m_item_< Key,T,Base >
0262 {
0263 typedef pair< Key,T > item7;
0264 };
0265 };
0266
0267 template<
0268 typename P0, typename P1, typename P2, typename P3, typename P4
0269 , typename P5, typename P6, typename P7
0270 >
0271 struct map8
0272 : m_item<
0273 8
0274 , typename P7::first
0275 , typename P7::second
0276 , map7< P0,P1,P2,P3,P4,P5,P6 >
0277 >
0278 {
0279 typedef map8 type;
0280 };
0281
0282 template<>
0283 struct m_at_impl<8>
0284 {
0285 template< typename Map > struct result_
0286 {
0287 typedef typename Map::item8 type;
0288 };
0289 };
0290
0291 template<>
0292 struct m_item_impl<9>
0293 {
0294 template< typename Key, typename T, typename Base > struct result_
0295 : m_item_< Key,T,Base >
0296 {
0297 typedef pair< Key,T > item8;
0298 };
0299 };
0300
0301 template<
0302 typename P0, typename P1, typename P2, typename P3, typename P4
0303 , typename P5, typename P6, typename P7, typename P8
0304 >
0305 struct map9
0306 : m_item<
0307 9
0308 , typename P8::first
0309 , typename P8::second
0310 , map8< P0,P1,P2,P3,P4,P5,P6,P7 >
0311 >
0312 {
0313 typedef map9 type;
0314 };
0315
0316 template<>
0317 struct m_at_impl<9>
0318 {
0319 template< typename Map > struct result_
0320 {
0321 typedef typename Map::item9 type;
0322 };
0323 };
0324
0325 template<>
0326 struct m_item_impl<10>
0327 {
0328 template< typename Key, typename T, typename Base > struct result_
0329 : m_item_< Key,T,Base >
0330 {
0331 typedef pair< Key,T > item9;
0332 };
0333 };
0334
0335 template<
0336 typename P0, typename P1, typename P2, typename P3, typename P4
0337 , typename P5, typename P6, typename P7, typename P8, typename P9
0338 >
0339 struct map10
0340 : m_item<
0341 10
0342 , typename P9::first
0343 , typename P9::second
0344 , map9< P0,P1,P2,P3,P4,P5,P6,P7,P8 >
0345 >
0346 {
0347 typedef map10 type;
0348 };
0349
0350 }}