annotate DEPENDENCIES/generic/include/boost/bind/storage.hpp @ 125:34e428693f5d vext

Vext -> Repoint
author Chris Cannam
date Thu, 14 Jun 2018 11:15:39 +0100
parents 2665513ce2d3
children
rev   line source
Chris@16 1 #ifndef BOOST_BIND_STORAGE_HPP_INCLUDED
Chris@16 2 #define BOOST_BIND_STORAGE_HPP_INCLUDED
Chris@16 3
Chris@16 4 // MS compatible compilers support #pragma once
Chris@16 5
Chris@16 6 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
Chris@16 7 # pragma once
Chris@16 8 #endif
Chris@16 9
Chris@16 10 //
Chris@16 11 // bind/storage.hpp
Chris@16 12 //
Chris@16 13 // boost/bind.hpp support header, optimized storage
Chris@16 14 //
Chris@16 15 // Copyright (c) 2006 Peter Dimov
Chris@16 16 //
Chris@16 17 // Distributed under the Boost Software License, Version 1.0.
Chris@16 18 // See accompanying file LICENSE_1_0.txt or copy at
Chris@16 19 // http://www.boost.org/LICENSE_1_0.txt
Chris@16 20 //
Chris@16 21 // See http://www.boost.org/libs/bind/bind.html for documentation.
Chris@16 22 //
Chris@16 23
Chris@16 24 #include <boost/config.hpp>
Chris@16 25 #include <boost/bind/arg.hpp>
Chris@16 26
Chris@16 27 #ifdef BOOST_MSVC
Chris@16 28 # pragma warning(push)
Chris@16 29 # pragma warning(disable: 4512) // assignment operator could not be generated
Chris@16 30 #endif
Chris@16 31
Chris@16 32 namespace boost
Chris@16 33 {
Chris@16 34
Chris@16 35 namespace _bi
Chris@16 36 {
Chris@16 37
Chris@16 38 // 1
Chris@16 39
Chris@16 40 template<class A1> struct storage1
Chris@16 41 {
Chris@16 42 explicit storage1( A1 a1 ): a1_( a1 ) {}
Chris@16 43
Chris@16 44 template<class V> void accept(V & v) const
Chris@16 45 {
Chris@16 46 BOOST_BIND_VISIT_EACH(v, a1_, 0);
Chris@16 47 }
Chris@16 48
Chris@16 49 A1 a1_;
Chris@16 50 };
Chris@16 51
Chris@16 52 #if !defined( BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION ) && !defined( __BORLANDC__ )
Chris@16 53
Chris@16 54 template<int I> struct storage1< boost::arg<I> >
Chris@16 55 {
Chris@16 56 explicit storage1( boost::arg<I> ) {}
Chris@16 57
Chris@16 58 template<class V> void accept(V &) const { }
Chris@16 59
Chris@16 60 static boost::arg<I> a1_() { return boost::arg<I>(); }
Chris@16 61 };
Chris@16 62
Chris@16 63 template<int I> struct storage1< boost::arg<I> (*) () >
Chris@16 64 {
Chris@16 65 explicit storage1( boost::arg<I> (*) () ) {}
Chris@16 66
Chris@16 67 template<class V> void accept(V &) const { }
Chris@16 68
Chris@16 69 static boost::arg<I> a1_() { return boost::arg<I>(); }
Chris@16 70 };
Chris@16 71
Chris@16 72 #endif
Chris@16 73
Chris@16 74 // 2
Chris@16 75
Chris@16 76 template<class A1, class A2> struct storage2: public storage1<A1>
Chris@16 77 {
Chris@16 78 typedef storage1<A1> inherited;
Chris@16 79
Chris@16 80 storage2( A1 a1, A2 a2 ): storage1<A1>( a1 ), a2_( a2 ) {}
Chris@16 81
Chris@16 82 template<class V> void accept(V & v) const
Chris@16 83 {
Chris@16 84 inherited::accept(v);
Chris@16 85 BOOST_BIND_VISIT_EACH(v, a2_, 0);
Chris@16 86 }
Chris@16 87
Chris@16 88 A2 a2_;
Chris@16 89 };
Chris@16 90
Chris@16 91 #if !defined( BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION )
Chris@16 92
Chris@16 93 template<class A1, int I> struct storage2< A1, boost::arg<I> >: public storage1<A1>
Chris@16 94 {
Chris@16 95 typedef storage1<A1> inherited;
Chris@16 96
Chris@16 97 storage2( A1 a1, boost::arg<I> ): storage1<A1>( a1 ) {}
Chris@16 98
Chris@16 99 template<class V> void accept(V & v) const
Chris@16 100 {
Chris@16 101 inherited::accept(v);
Chris@16 102 }
Chris@16 103
Chris@16 104 static boost::arg<I> a2_() { return boost::arg<I>(); }
Chris@16 105 };
Chris@16 106
Chris@16 107 template<class A1, int I> struct storage2< A1, boost::arg<I> (*) () >: public storage1<A1>
Chris@16 108 {
Chris@16 109 typedef storage1<A1> inherited;
Chris@16 110
Chris@16 111 storage2( A1 a1, boost::arg<I> (*) () ): storage1<A1>( a1 ) {}
Chris@16 112
Chris@16 113 template<class V> void accept(V & v) const
Chris@16 114 {
Chris@16 115 inherited::accept(v);
Chris@16 116 }
Chris@16 117
Chris@16 118 static boost::arg<I> a2_() { return boost::arg<I>(); }
Chris@16 119 };
Chris@16 120
Chris@16 121 #endif
Chris@16 122
Chris@16 123 // 3
Chris@16 124
Chris@16 125 template<class A1, class A2, class A3> struct storage3: public storage2< A1, A2 >
Chris@16 126 {
Chris@16 127 typedef storage2<A1, A2> inherited;
Chris@16 128
Chris@16 129 storage3( A1 a1, A2 a2, A3 a3 ): storage2<A1, A2>( a1, a2 ), a3_( a3 ) {}
Chris@16 130
Chris@16 131 template<class V> void accept(V & v) const
Chris@16 132 {
Chris@16 133 inherited::accept(v);
Chris@16 134 BOOST_BIND_VISIT_EACH(v, a3_, 0);
Chris@16 135 }
Chris@16 136
Chris@16 137 A3 a3_;
Chris@16 138 };
Chris@16 139
Chris@16 140 #if !defined( BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION )
Chris@16 141
Chris@16 142 template<class A1, class A2, int I> struct storage3< A1, A2, boost::arg<I> >: public storage2< A1, A2 >
Chris@16 143 {
Chris@16 144 typedef storage2<A1, A2> inherited;
Chris@16 145
Chris@16 146 storage3( A1 a1, A2 a2, boost::arg<I> ): storage2<A1, A2>( a1, a2 ) {}
Chris@16 147
Chris@16 148 template<class V> void accept(V & v) const
Chris@16 149 {
Chris@16 150 inherited::accept(v);
Chris@16 151 }
Chris@16 152
Chris@16 153 static boost::arg<I> a3_() { return boost::arg<I>(); }
Chris@16 154 };
Chris@16 155
Chris@16 156 template<class A1, class A2, int I> struct storage3< A1, A2, boost::arg<I> (*) () >: public storage2< A1, A2 >
Chris@16 157 {
Chris@16 158 typedef storage2<A1, A2> inherited;
Chris@16 159
Chris@16 160 storage3( A1 a1, A2 a2, boost::arg<I> (*) () ): storage2<A1, A2>( a1, a2 ) {}
Chris@16 161
Chris@16 162 template<class V> void accept(V & v) const
Chris@16 163 {
Chris@16 164 inherited::accept(v);
Chris@16 165 }
Chris@16 166
Chris@16 167 static boost::arg<I> a3_() { return boost::arg<I>(); }
Chris@16 168 };
Chris@16 169
Chris@16 170 #endif
Chris@16 171
Chris@16 172 // 4
Chris@16 173
Chris@16 174 template<class A1, class A2, class A3, class A4> struct storage4: public storage3< A1, A2, A3 >
Chris@16 175 {
Chris@16 176 typedef storage3<A1, A2, A3> inherited;
Chris@16 177
Chris@16 178 storage4( A1 a1, A2 a2, A3 a3, A4 a4 ): storage3<A1, A2, A3>( a1, a2, a3 ), a4_( a4 ) {}
Chris@16 179
Chris@16 180 template<class V> void accept(V & v) const
Chris@16 181 {
Chris@16 182 inherited::accept(v);
Chris@16 183 BOOST_BIND_VISIT_EACH(v, a4_, 0);
Chris@16 184 }
Chris@16 185
Chris@16 186 A4 a4_;
Chris@16 187 };
Chris@16 188
Chris@16 189 #if !defined( BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION )
Chris@16 190
Chris@16 191 template<class A1, class A2, class A3, int I> struct storage4< A1, A2, A3, boost::arg<I> >: public storage3< A1, A2, A3 >
Chris@16 192 {
Chris@16 193 typedef storage3<A1, A2, A3> inherited;
Chris@16 194
Chris@16 195 storage4( A1 a1, A2 a2, A3 a3, boost::arg<I> ): storage3<A1, A2, A3>( a1, a2, a3 ) {}
Chris@16 196
Chris@16 197 template<class V> void accept(V & v) const
Chris@16 198 {
Chris@16 199 inherited::accept(v);
Chris@16 200 }
Chris@16 201
Chris@16 202 static boost::arg<I> a4_() { return boost::arg<I>(); }
Chris@16 203 };
Chris@16 204
Chris@16 205 template<class A1, class A2, class A3, int I> struct storage4< A1, A2, A3, boost::arg<I> (*) () >: public storage3< A1, A2, A3 >
Chris@16 206 {
Chris@16 207 typedef storage3<A1, A2, A3> inherited;
Chris@16 208
Chris@16 209 storage4( A1 a1, A2 a2, A3 a3, boost::arg<I> (*) () ): storage3<A1, A2, A3>( a1, a2, a3 ) {}
Chris@16 210
Chris@16 211 template<class V> void accept(V & v) const
Chris@16 212 {
Chris@16 213 inherited::accept(v);
Chris@16 214 }
Chris@16 215
Chris@16 216 static boost::arg<I> a4_() { return boost::arg<I>(); }
Chris@16 217 };
Chris@16 218
Chris@16 219 #endif
Chris@16 220
Chris@16 221 // 5
Chris@16 222
Chris@16 223 template<class A1, class A2, class A3, class A4, class A5> struct storage5: public storage4< A1, A2, A3, A4 >
Chris@16 224 {
Chris@16 225 typedef storage4<A1, A2, A3, A4> inherited;
Chris@16 226
Chris@16 227 storage5( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5 ): storage4<A1, A2, A3, A4>( a1, a2, a3, a4 ), a5_( a5 ) {}
Chris@16 228
Chris@16 229 template<class V> void accept(V & v) const
Chris@16 230 {
Chris@16 231 inherited::accept(v);
Chris@16 232 BOOST_BIND_VISIT_EACH(v, a5_, 0);
Chris@16 233 }
Chris@16 234
Chris@16 235 A5 a5_;
Chris@16 236 };
Chris@16 237
Chris@16 238 #if !defined( BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION )
Chris@16 239
Chris@16 240 template<class A1, class A2, class A3, class A4, int I> struct storage5< A1, A2, A3, A4, boost::arg<I> >: public storage4< A1, A2, A3, A4 >
Chris@16 241 {
Chris@16 242 typedef storage4<A1, A2, A3, A4> inherited;
Chris@16 243
Chris@16 244 storage5( A1 a1, A2 a2, A3 a3, A4 a4, boost::arg<I> ): storage4<A1, A2, A3, A4>( a1, a2, a3, a4 ) {}
Chris@16 245
Chris@16 246 template<class V> void accept(V & v) const
Chris@16 247 {
Chris@16 248 inherited::accept(v);
Chris@16 249 }
Chris@16 250
Chris@16 251 static boost::arg<I> a5_() { return boost::arg<I>(); }
Chris@16 252 };
Chris@16 253
Chris@16 254 template<class A1, class A2, class A3, class A4, int I> struct storage5< A1, A2, A3, A4, boost::arg<I> (*) () >: public storage4< A1, A2, A3, A4 >
Chris@16 255 {
Chris@16 256 typedef storage4<A1, A2, A3, A4> inherited;
Chris@16 257
Chris@16 258 storage5( A1 a1, A2 a2, A3 a3, A4 a4, boost::arg<I> (*) () ): storage4<A1, A2, A3, A4>( a1, a2, a3, a4 ) {}
Chris@16 259
Chris@16 260 template<class V> void accept(V & v) const
Chris@16 261 {
Chris@16 262 inherited::accept(v);
Chris@16 263 }
Chris@16 264
Chris@16 265 static boost::arg<I> a5_() { return boost::arg<I>(); }
Chris@16 266 };
Chris@16 267
Chris@16 268 #endif
Chris@16 269
Chris@16 270 // 6
Chris@16 271
Chris@16 272 template<class A1, class A2, class A3, class A4, class A5, class A6> struct storage6: public storage5< A1, A2, A3, A4, A5 >
Chris@16 273 {
Chris@16 274 typedef storage5<A1, A2, A3, A4, A5> inherited;
Chris@16 275
Chris@16 276 storage6( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6 ): storage5<A1, A2, A3, A4, A5>( a1, a2, a3, a4, a5 ), a6_( a6 ) {}
Chris@16 277
Chris@16 278 template<class V> void accept(V & v) const
Chris@16 279 {
Chris@16 280 inherited::accept(v);
Chris@16 281 BOOST_BIND_VISIT_EACH(v, a6_, 0);
Chris@16 282 }
Chris@16 283
Chris@16 284 A6 a6_;
Chris@16 285 };
Chris@16 286
Chris@16 287 #if !defined( BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION )
Chris@16 288
Chris@16 289 template<class A1, class A2, class A3, class A4, class A5, int I> struct storage6< A1, A2, A3, A4, A5, boost::arg<I> >: public storage5< A1, A2, A3, A4, A5 >
Chris@16 290 {
Chris@16 291 typedef storage5<A1, A2, A3, A4, A5> inherited;
Chris@16 292
Chris@16 293 storage6( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, boost::arg<I> ): storage5<A1, A2, A3, A4, A5>( a1, a2, a3, a4, a5 ) {}
Chris@16 294
Chris@16 295 template<class V> void accept(V & v) const
Chris@16 296 {
Chris@16 297 inherited::accept(v);
Chris@16 298 }
Chris@16 299
Chris@16 300 static boost::arg<I> a6_() { return boost::arg<I>(); }
Chris@16 301 };
Chris@16 302
Chris@16 303 template<class A1, class A2, class A3, class A4, class A5, int I> struct storage6< A1, A2, A3, A4, A5, boost::arg<I> (*) () >: public storage5< A1, A2, A3, A4, A5 >
Chris@16 304 {
Chris@16 305 typedef storage5<A1, A2, A3, A4, A5> inherited;
Chris@16 306
Chris@16 307 storage6( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, boost::arg<I> (*) () ): storage5<A1, A2, A3, A4, A5>( a1, a2, a3, a4, a5 ) {}
Chris@16 308
Chris@16 309 template<class V> void accept(V & v) const
Chris@16 310 {
Chris@16 311 inherited::accept(v);
Chris@16 312 }
Chris@16 313
Chris@16 314 static boost::arg<I> a6_() { return boost::arg<I>(); }
Chris@16 315 };
Chris@16 316
Chris@16 317 #endif
Chris@16 318
Chris@16 319 // 7
Chris@16 320
Chris@16 321 template<class A1, class A2, class A3, class A4, class A5, class A6, class A7> struct storage7: public storage6< A1, A2, A3, A4, A5, A6 >
Chris@16 322 {
Chris@16 323 typedef storage6<A1, A2, A3, A4, A5, A6> inherited;
Chris@16 324
Chris@16 325 storage7( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7 ): storage6<A1, A2, A3, A4, A5, A6>( a1, a2, a3, a4, a5, a6 ), a7_( a7 ) {}
Chris@16 326
Chris@16 327 template<class V> void accept(V & v) const
Chris@16 328 {
Chris@16 329 inherited::accept(v);
Chris@16 330 BOOST_BIND_VISIT_EACH(v, a7_, 0);
Chris@16 331 }
Chris@16 332
Chris@16 333 A7 a7_;
Chris@16 334 };
Chris@16 335
Chris@16 336 #if !defined( BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION )
Chris@16 337
Chris@16 338 template<class A1, class A2, class A3, class A4, class A5, class A6, int I> struct storage7< A1, A2, A3, A4, A5, A6, boost::arg<I> >: public storage6< A1, A2, A3, A4, A5, A6 >
Chris@16 339 {
Chris@16 340 typedef storage6<A1, A2, A3, A4, A5, A6> inherited;
Chris@16 341
Chris@16 342 storage7( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, boost::arg<I> ): storage6<A1, A2, A3, A4, A5, A6>( a1, a2, a3, a4, a5, a6 ) {}
Chris@16 343
Chris@16 344 template<class V> void accept(V & v) const
Chris@16 345 {
Chris@16 346 inherited::accept(v);
Chris@16 347 }
Chris@16 348
Chris@16 349 static boost::arg<I> a7_() { return boost::arg<I>(); }
Chris@16 350 };
Chris@16 351
Chris@16 352 template<class A1, class A2, class A3, class A4, class A5, class A6, int I> struct storage7< A1, A2, A3, A4, A5, A6, boost::arg<I> (*) () >: public storage6< A1, A2, A3, A4, A5, A6 >
Chris@16 353 {
Chris@16 354 typedef storage6<A1, A2, A3, A4, A5, A6> inherited;
Chris@16 355
Chris@16 356 storage7( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, boost::arg<I> (*) () ): storage6<A1, A2, A3, A4, A5, A6>( a1, a2, a3, a4, a5, a6 ) {}
Chris@16 357
Chris@16 358 template<class V> void accept(V & v) const
Chris@16 359 {
Chris@16 360 inherited::accept(v);
Chris@16 361 }
Chris@16 362
Chris@16 363 static boost::arg<I> a7_() { return boost::arg<I>(); }
Chris@16 364 };
Chris@16 365
Chris@16 366 #endif
Chris@16 367
Chris@16 368 // 8
Chris@16 369
Chris@16 370 template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8> struct storage8: public storage7< A1, A2, A3, A4, A5, A6, A7 >
Chris@16 371 {
Chris@16 372 typedef storage7<A1, A2, A3, A4, A5, A6, A7> inherited;
Chris@16 373
Chris@16 374 storage8( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8 ): storage7<A1, A2, A3, A4, A5, A6, A7>( a1, a2, a3, a4, a5, a6, a7 ), a8_( a8 ) {}
Chris@16 375
Chris@16 376 template<class V> void accept(V & v) const
Chris@16 377 {
Chris@16 378 inherited::accept(v);
Chris@16 379 BOOST_BIND_VISIT_EACH(v, a8_, 0);
Chris@16 380 }
Chris@16 381
Chris@16 382 A8 a8_;
Chris@16 383 };
Chris@16 384
Chris@16 385 #if !defined( BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION )
Chris@16 386
Chris@16 387 template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, int I> struct storage8< A1, A2, A3, A4, A5, A6, A7, boost::arg<I> >: public storage7< A1, A2, A3, A4, A5, A6, A7 >
Chris@16 388 {
Chris@16 389 typedef storage7<A1, A2, A3, A4, A5, A6, A7> inherited;
Chris@16 390
Chris@16 391 storage8( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, boost::arg<I> ): storage7<A1, A2, A3, A4, A5, A6, A7>( a1, a2, a3, a4, a5, a6, a7 ) {}
Chris@16 392
Chris@16 393 template<class V> void accept(V & v) const
Chris@16 394 {
Chris@16 395 inherited::accept(v);
Chris@16 396 }
Chris@16 397
Chris@16 398 static boost::arg<I> a8_() { return boost::arg<I>(); }
Chris@16 399 };
Chris@16 400
Chris@16 401 template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, int I> struct storage8< A1, A2, A3, A4, A5, A6, A7, boost::arg<I> (*) () >: public storage7< A1, A2, A3, A4, A5, A6, A7 >
Chris@16 402 {
Chris@16 403 typedef storage7<A1, A2, A3, A4, A5, A6, A7> inherited;
Chris@16 404
Chris@16 405 storage8( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, boost::arg<I> (*) () ): storage7<A1, A2, A3, A4, A5, A6, A7>( a1, a2, a3, a4, a5, a6, a7 ) {}
Chris@16 406
Chris@16 407 template<class V> void accept(V & v) const
Chris@16 408 {
Chris@16 409 inherited::accept(v);
Chris@16 410 }
Chris@16 411
Chris@16 412 static boost::arg<I> a8_() { return boost::arg<I>(); }
Chris@16 413 };
Chris@16 414
Chris@16 415 #endif
Chris@16 416
Chris@16 417 // 9
Chris@16 418
Chris@16 419 template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9> struct storage9: public storage8< A1, A2, A3, A4, A5, A6, A7, A8 >
Chris@16 420 {
Chris@16 421 typedef storage8<A1, A2, A3, A4, A5, A6, A7, A8> inherited;
Chris@16 422
Chris@16 423 storage9( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9 ): storage8<A1, A2, A3, A4, A5, A6, A7, A8>( a1, a2, a3, a4, a5, a6, a7, a8 ), a9_( a9 ) {}
Chris@16 424
Chris@16 425 template<class V> void accept(V & v) const
Chris@16 426 {
Chris@16 427 inherited::accept(v);
Chris@16 428 BOOST_BIND_VISIT_EACH(v, a9_, 0);
Chris@16 429 }
Chris@16 430
Chris@16 431 A9 a9_;
Chris@16 432 };
Chris@16 433
Chris@16 434 #if !defined( BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION )
Chris@16 435
Chris@16 436 template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, int I> struct storage9< A1, A2, A3, A4, A5, A6, A7, A8, boost::arg<I> >: public storage8< A1, A2, A3, A4, A5, A6, A7, A8 >
Chris@16 437 {
Chris@16 438 typedef storage8<A1, A2, A3, A4, A5, A6, A7, A8> inherited;
Chris@16 439
Chris@16 440 storage9( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, boost::arg<I> ): storage8<A1, A2, A3, A4, A5, A6, A7, A8>( a1, a2, a3, a4, a5, a6, a7, a8 ) {}
Chris@16 441
Chris@16 442 template<class V> void accept(V & v) const
Chris@16 443 {
Chris@16 444 inherited::accept(v);
Chris@16 445 }
Chris@16 446
Chris@16 447 static boost::arg<I> a9_() { return boost::arg<I>(); }
Chris@16 448 };
Chris@16 449
Chris@16 450 template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, int I> struct storage9< A1, A2, A3, A4, A5, A6, A7, A8, boost::arg<I> (*) () >: public storage8< A1, A2, A3, A4, A5, A6, A7, A8 >
Chris@16 451 {
Chris@16 452 typedef storage8<A1, A2, A3, A4, A5, A6, A7, A8> inherited;
Chris@16 453
Chris@16 454 storage9( A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, boost::arg<I> (*) () ): storage8<A1, A2, A3, A4, A5, A6, A7, A8>( a1, a2, a3, a4, a5, a6, a7, a8 ) {}
Chris@16 455
Chris@16 456 template<class V> void accept(V & v) const
Chris@16 457 {
Chris@16 458 inherited::accept(v);
Chris@16 459 }
Chris@16 460
Chris@16 461 static boost::arg<I> a9_() { return boost::arg<I>(); }
Chris@16 462 };
Chris@16 463
Chris@16 464 #endif
Chris@16 465
Chris@16 466 } // namespace _bi
Chris@16 467
Chris@16 468 } // namespace boost
Chris@16 469
Chris@16 470 #ifdef BOOST_MSVC
Chris@16 471 # pragma warning(default: 4512) // assignment operator could not be generated
Chris@16 472 # pragma warning(pop)
Chris@16 473 #endif
Chris@16 474
Chris@16 475 #endif // #ifndef BOOST_BIND_STORAGE_HPP_INCLUDED