media/mtransport/runnable_utils_generated.h

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

michael@0 1 /* This Source Code Form is subject to the terms of the Mozilla Public
michael@0 2 * License, v. 2.0. If a copy of the MPL was not distributed with this
michael@0 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
michael@0 4
michael@0 5
michael@0 6 // 0 arguments --
michael@0 7 template<typename M> class runnable_args_nm_0 : public runnable_args_base {
michael@0 8 public:
michael@0 9 runnable_args_nm_0(M m) :
michael@0 10 m_(m) {}
michael@0 11
michael@0 12 NS_IMETHOD Run() {
michael@0 13 m_();
michael@0 14 return NS_OK;
michael@0 15 }
michael@0 16
michael@0 17 private:
michael@0 18 M m_;
michael@0 19 };
michael@0 20
michael@0 21
michael@0 22
michael@0 23 // 0 arguments --
michael@0 24 template<typename M, typename R> class runnable_args_nm_0_ret : public runnable_args_base {
michael@0 25 public:
michael@0 26 runnable_args_nm_0_ret(M m, R *r) :
michael@0 27 m_(m), r_(r) {}
michael@0 28 virtual bool returns_value() const { return true; }
michael@0 29
michael@0 30 NS_IMETHOD Run() {
michael@0 31 *r_ = m_();
michael@0 32 return NS_OK;
michael@0 33 }
michael@0 34
michael@0 35 private:
michael@0 36 M m_;
michael@0 37 R* r_;
michael@0 38 };
michael@0 39
michael@0 40
michael@0 41
michael@0 42 // 0 arguments --
michael@0 43 template<typename C, typename M> class runnable_args_m_0 : public runnable_args_base {
michael@0 44 public:
michael@0 45 runnable_args_m_0(C o, M m) :
michael@0 46 o_(o), m_(m) {}
michael@0 47
michael@0 48 NS_IMETHOD Run() {
michael@0 49 ((*o_).*m_)();
michael@0 50 return NS_OK;
michael@0 51 }
michael@0 52
michael@0 53 private:
michael@0 54 C o_;
michael@0 55 M m_;
michael@0 56 };
michael@0 57
michael@0 58
michael@0 59
michael@0 60 // 0 arguments --
michael@0 61 template<typename C, typename M, typename R> class runnable_args_m_0_ret : public runnable_args_base {
michael@0 62 public:
michael@0 63 runnable_args_m_0_ret(C o, M m, R *r) :
michael@0 64 o_(o), m_(m), r_(r) {}
michael@0 65 virtual bool returns_value() const { return true; }
michael@0 66
michael@0 67 NS_IMETHOD Run() {
michael@0 68 *r_ = ((*o_).*m_)();
michael@0 69 return NS_OK;
michael@0 70 }
michael@0 71
michael@0 72 private:
michael@0 73 C o_;
michael@0 74 M m_;
michael@0 75 R* r_;
michael@0 76 };
michael@0 77
michael@0 78
michael@0 79
michael@0 80 // 1 arguments --
michael@0 81 template<typename M, typename A0> class runnable_args_nm_1 : public runnable_args_base {
michael@0 82 public:
michael@0 83 runnable_args_nm_1(M m, A0 a0) :
michael@0 84 m_(m), a0_(a0) {}
michael@0 85
michael@0 86 NS_IMETHOD Run() {
michael@0 87 m_(a0_);
michael@0 88 return NS_OK;
michael@0 89 }
michael@0 90
michael@0 91 private:
michael@0 92 M m_;
michael@0 93 A0 a0_;
michael@0 94 };
michael@0 95
michael@0 96
michael@0 97
michael@0 98 // 1 arguments --
michael@0 99 template<typename M, typename A0, typename R> class runnable_args_nm_1_ret : public runnable_args_base {
michael@0 100 public:
michael@0 101 runnable_args_nm_1_ret(M m, A0 a0, R *r) :
michael@0 102 m_(m), r_(r), a0_(a0) {}
michael@0 103 virtual bool returns_value() const { return true; }
michael@0 104
michael@0 105 NS_IMETHOD Run() {
michael@0 106 *r_ = m_(a0_);
michael@0 107 return NS_OK;
michael@0 108 }
michael@0 109
michael@0 110 private:
michael@0 111 M m_;
michael@0 112 R* r_;
michael@0 113 A0 a0_;
michael@0 114 };
michael@0 115
michael@0 116
michael@0 117
michael@0 118 // 1 arguments --
michael@0 119 template<typename C, typename M, typename A0> class runnable_args_m_1 : public runnable_args_base {
michael@0 120 public:
michael@0 121 runnable_args_m_1(C o, M m, A0 a0) :
michael@0 122 o_(o), m_(m), a0_(a0) {}
michael@0 123
michael@0 124 NS_IMETHOD Run() {
michael@0 125 ((*o_).*m_)(a0_);
michael@0 126 return NS_OK;
michael@0 127 }
michael@0 128
michael@0 129 private:
michael@0 130 C o_;
michael@0 131 M m_;
michael@0 132 A0 a0_;
michael@0 133 };
michael@0 134
michael@0 135
michael@0 136
michael@0 137 // 1 arguments --
michael@0 138 template<typename C, typename M, typename A0, typename R> class runnable_args_m_1_ret : public runnable_args_base {
michael@0 139 public:
michael@0 140 runnable_args_m_1_ret(C o, M m, A0 a0, R *r) :
michael@0 141 o_(o), m_(m), r_(r), a0_(a0) {}
michael@0 142 virtual bool returns_value() const { return true; }
michael@0 143
michael@0 144 NS_IMETHOD Run() {
michael@0 145 *r_ = ((*o_).*m_)(a0_);
michael@0 146 return NS_OK;
michael@0 147 }
michael@0 148
michael@0 149 private:
michael@0 150 C o_;
michael@0 151 M m_;
michael@0 152 R* r_;
michael@0 153 A0 a0_;
michael@0 154 };
michael@0 155
michael@0 156
michael@0 157
michael@0 158 // 2 arguments --
michael@0 159 template<typename M, typename A0, typename A1> class runnable_args_nm_2 : public runnable_args_base {
michael@0 160 public:
michael@0 161 runnable_args_nm_2(M m, A0 a0, A1 a1) :
michael@0 162 m_(m), a0_(a0), a1_(a1) {}
michael@0 163
michael@0 164 NS_IMETHOD Run() {
michael@0 165 m_(a0_, a1_);
michael@0 166 return NS_OK;
michael@0 167 }
michael@0 168
michael@0 169 private:
michael@0 170 M m_;
michael@0 171 A0 a0_;
michael@0 172 A1 a1_;
michael@0 173 };
michael@0 174
michael@0 175
michael@0 176
michael@0 177 // 2 arguments --
michael@0 178 template<typename M, typename A0, typename A1, typename R> class runnable_args_nm_2_ret : public runnable_args_base {
michael@0 179 public:
michael@0 180 runnable_args_nm_2_ret(M m, A0 a0, A1 a1, R *r) :
michael@0 181 m_(m), r_(r), a0_(a0), a1_(a1) {}
michael@0 182 virtual bool returns_value() const { return true; }
michael@0 183
michael@0 184 NS_IMETHOD Run() {
michael@0 185 *r_ = m_(a0_, a1_);
michael@0 186 return NS_OK;
michael@0 187 }
michael@0 188
michael@0 189 private:
michael@0 190 M m_;
michael@0 191 R* r_;
michael@0 192 A0 a0_;
michael@0 193 A1 a1_;
michael@0 194 };
michael@0 195
michael@0 196
michael@0 197
michael@0 198 // 2 arguments --
michael@0 199 template<typename C, typename M, typename A0, typename A1> class runnable_args_m_2 : public runnable_args_base {
michael@0 200 public:
michael@0 201 runnable_args_m_2(C o, M m, A0 a0, A1 a1) :
michael@0 202 o_(o), m_(m), a0_(a0), a1_(a1) {}
michael@0 203
michael@0 204 NS_IMETHOD Run() {
michael@0 205 ((*o_).*m_)(a0_, a1_);
michael@0 206 return NS_OK;
michael@0 207 }
michael@0 208
michael@0 209 private:
michael@0 210 C o_;
michael@0 211 M m_;
michael@0 212 A0 a0_;
michael@0 213 A1 a1_;
michael@0 214 };
michael@0 215
michael@0 216
michael@0 217
michael@0 218 // 2 arguments --
michael@0 219 template<typename C, typename M, typename A0, typename A1, typename R> class runnable_args_m_2_ret : public runnable_args_base {
michael@0 220 public:
michael@0 221 runnable_args_m_2_ret(C o, M m, A0 a0, A1 a1, R *r) :
michael@0 222 o_(o), m_(m), r_(r), a0_(a0), a1_(a1) {}
michael@0 223 virtual bool returns_value() const { return true; }
michael@0 224
michael@0 225 NS_IMETHOD Run() {
michael@0 226 *r_ = ((*o_).*m_)(a0_, a1_);
michael@0 227 return NS_OK;
michael@0 228 }
michael@0 229
michael@0 230 private:
michael@0 231 C o_;
michael@0 232 M m_;
michael@0 233 R* r_;
michael@0 234 A0 a0_;
michael@0 235 A1 a1_;
michael@0 236 };
michael@0 237
michael@0 238
michael@0 239
michael@0 240 // 3 arguments --
michael@0 241 template<typename M, typename A0, typename A1, typename A2> class runnable_args_nm_3 : public runnable_args_base {
michael@0 242 public:
michael@0 243 runnable_args_nm_3(M m, A0 a0, A1 a1, A2 a2) :
michael@0 244 m_(m), a0_(a0), a1_(a1), a2_(a2) {}
michael@0 245
michael@0 246 NS_IMETHOD Run() {
michael@0 247 m_(a0_, a1_, a2_);
michael@0 248 return NS_OK;
michael@0 249 }
michael@0 250
michael@0 251 private:
michael@0 252 M m_;
michael@0 253 A0 a0_;
michael@0 254 A1 a1_;
michael@0 255 A2 a2_;
michael@0 256 };
michael@0 257
michael@0 258
michael@0 259
michael@0 260 // 3 arguments --
michael@0 261 template<typename M, typename A0, typename A1, typename A2, typename R> class runnable_args_nm_3_ret : public runnable_args_base {
michael@0 262 public:
michael@0 263 runnable_args_nm_3_ret(M m, A0 a0, A1 a1, A2 a2, R *r) :
michael@0 264 m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2) {}
michael@0 265 virtual bool returns_value() const { return true; }
michael@0 266
michael@0 267 NS_IMETHOD Run() {
michael@0 268 *r_ = m_(a0_, a1_, a2_);
michael@0 269 return NS_OK;
michael@0 270 }
michael@0 271
michael@0 272 private:
michael@0 273 M m_;
michael@0 274 R* r_;
michael@0 275 A0 a0_;
michael@0 276 A1 a1_;
michael@0 277 A2 a2_;
michael@0 278 };
michael@0 279
michael@0 280
michael@0 281
michael@0 282 // 3 arguments --
michael@0 283 template<typename C, typename M, typename A0, typename A1, typename A2> class runnable_args_m_3 : public runnable_args_base {
michael@0 284 public:
michael@0 285 runnable_args_m_3(C o, M m, A0 a0, A1 a1, A2 a2) :
michael@0 286 o_(o), m_(m), a0_(a0), a1_(a1), a2_(a2) {}
michael@0 287
michael@0 288 NS_IMETHOD Run() {
michael@0 289 ((*o_).*m_)(a0_, a1_, a2_);
michael@0 290 return NS_OK;
michael@0 291 }
michael@0 292
michael@0 293 private:
michael@0 294 C o_;
michael@0 295 M m_;
michael@0 296 A0 a0_;
michael@0 297 A1 a1_;
michael@0 298 A2 a2_;
michael@0 299 };
michael@0 300
michael@0 301
michael@0 302
michael@0 303 // 3 arguments --
michael@0 304 template<typename C, typename M, typename A0, typename A1, typename A2, typename R> class runnable_args_m_3_ret : public runnable_args_base {
michael@0 305 public:
michael@0 306 runnable_args_m_3_ret(C o, M m, A0 a0, A1 a1, A2 a2, R *r) :
michael@0 307 o_(o), m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2) {}
michael@0 308 virtual bool returns_value() const { return true; }
michael@0 309
michael@0 310 NS_IMETHOD Run() {
michael@0 311 *r_ = ((*o_).*m_)(a0_, a1_, a2_);
michael@0 312 return NS_OK;
michael@0 313 }
michael@0 314
michael@0 315 private:
michael@0 316 C o_;
michael@0 317 M m_;
michael@0 318 R* r_;
michael@0 319 A0 a0_;
michael@0 320 A1 a1_;
michael@0 321 A2 a2_;
michael@0 322 };
michael@0 323
michael@0 324
michael@0 325
michael@0 326 // 4 arguments --
michael@0 327 template<typename M, typename A0, typename A1, typename A2, typename A3> class runnable_args_nm_4 : public runnable_args_base {
michael@0 328 public:
michael@0 329 runnable_args_nm_4(M m, A0 a0, A1 a1, A2 a2, A3 a3) :
michael@0 330 m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3) {}
michael@0 331
michael@0 332 NS_IMETHOD Run() {
michael@0 333 m_(a0_, a1_, a2_, a3_);
michael@0 334 return NS_OK;
michael@0 335 }
michael@0 336
michael@0 337 private:
michael@0 338 M m_;
michael@0 339 A0 a0_;
michael@0 340 A1 a1_;
michael@0 341 A2 a2_;
michael@0 342 A3 a3_;
michael@0 343 };
michael@0 344
michael@0 345
michael@0 346
michael@0 347 // 4 arguments --
michael@0 348 template<typename M, typename A0, typename A1, typename A2, typename A3, typename R> class runnable_args_nm_4_ret : public runnable_args_base {
michael@0 349 public:
michael@0 350 runnable_args_nm_4_ret(M m, A0 a0, A1 a1, A2 a2, A3 a3, R *r) :
michael@0 351 m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3) {}
michael@0 352 virtual bool returns_value() const { return true; }
michael@0 353
michael@0 354 NS_IMETHOD Run() {
michael@0 355 *r_ = m_(a0_, a1_, a2_, a3_);
michael@0 356 return NS_OK;
michael@0 357 }
michael@0 358
michael@0 359 private:
michael@0 360 M m_;
michael@0 361 R* r_;
michael@0 362 A0 a0_;
michael@0 363 A1 a1_;
michael@0 364 A2 a2_;
michael@0 365 A3 a3_;
michael@0 366 };
michael@0 367
michael@0 368
michael@0 369
michael@0 370 // 4 arguments --
michael@0 371 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3> class runnable_args_m_4 : public runnable_args_base {
michael@0 372 public:
michael@0 373 runnable_args_m_4(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3) :
michael@0 374 o_(o), m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3) {}
michael@0 375
michael@0 376 NS_IMETHOD Run() {
michael@0 377 ((*o_).*m_)(a0_, a1_, a2_, a3_);
michael@0 378 return NS_OK;
michael@0 379 }
michael@0 380
michael@0 381 private:
michael@0 382 C o_;
michael@0 383 M m_;
michael@0 384 A0 a0_;
michael@0 385 A1 a1_;
michael@0 386 A2 a2_;
michael@0 387 A3 a3_;
michael@0 388 };
michael@0 389
michael@0 390
michael@0 391
michael@0 392 // 4 arguments --
michael@0 393 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename R> class runnable_args_m_4_ret : public runnable_args_base {
michael@0 394 public:
michael@0 395 runnable_args_m_4_ret(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, R *r) :
michael@0 396 o_(o), m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3) {}
michael@0 397 virtual bool returns_value() const { return true; }
michael@0 398
michael@0 399 NS_IMETHOD Run() {
michael@0 400 *r_ = ((*o_).*m_)(a0_, a1_, a2_, a3_);
michael@0 401 return NS_OK;
michael@0 402 }
michael@0 403
michael@0 404 private:
michael@0 405 C o_;
michael@0 406 M m_;
michael@0 407 R* r_;
michael@0 408 A0 a0_;
michael@0 409 A1 a1_;
michael@0 410 A2 a2_;
michael@0 411 A3 a3_;
michael@0 412 };
michael@0 413
michael@0 414
michael@0 415
michael@0 416 // 5 arguments --
michael@0 417 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4> class runnable_args_nm_5 : public runnable_args_base {
michael@0 418 public:
michael@0 419 runnable_args_nm_5(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4) :
michael@0 420 m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4) {}
michael@0 421
michael@0 422 NS_IMETHOD Run() {
michael@0 423 m_(a0_, a1_, a2_, a3_, a4_);
michael@0 424 return NS_OK;
michael@0 425 }
michael@0 426
michael@0 427 private:
michael@0 428 M m_;
michael@0 429 A0 a0_;
michael@0 430 A1 a1_;
michael@0 431 A2 a2_;
michael@0 432 A3 a3_;
michael@0 433 A4 a4_;
michael@0 434 };
michael@0 435
michael@0 436
michael@0 437
michael@0 438 // 5 arguments --
michael@0 439 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename R> class runnable_args_nm_5_ret : public runnable_args_base {
michael@0 440 public:
michael@0 441 runnable_args_nm_5_ret(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, R *r) :
michael@0 442 m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4) {}
michael@0 443 virtual bool returns_value() const { return true; }
michael@0 444
michael@0 445 NS_IMETHOD Run() {
michael@0 446 *r_ = m_(a0_, a1_, a2_, a3_, a4_);
michael@0 447 return NS_OK;
michael@0 448 }
michael@0 449
michael@0 450 private:
michael@0 451 M m_;
michael@0 452 R* r_;
michael@0 453 A0 a0_;
michael@0 454 A1 a1_;
michael@0 455 A2 a2_;
michael@0 456 A3 a3_;
michael@0 457 A4 a4_;
michael@0 458 };
michael@0 459
michael@0 460
michael@0 461
michael@0 462 // 5 arguments --
michael@0 463 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4> class runnable_args_m_5 : public runnable_args_base {
michael@0 464 public:
michael@0 465 runnable_args_m_5(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4) :
michael@0 466 o_(o), m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4) {}
michael@0 467
michael@0 468 NS_IMETHOD Run() {
michael@0 469 ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_);
michael@0 470 return NS_OK;
michael@0 471 }
michael@0 472
michael@0 473 private:
michael@0 474 C o_;
michael@0 475 M m_;
michael@0 476 A0 a0_;
michael@0 477 A1 a1_;
michael@0 478 A2 a2_;
michael@0 479 A3 a3_;
michael@0 480 A4 a4_;
michael@0 481 };
michael@0 482
michael@0 483
michael@0 484
michael@0 485 // 5 arguments --
michael@0 486 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename R> class runnable_args_m_5_ret : public runnable_args_base {
michael@0 487 public:
michael@0 488 runnable_args_m_5_ret(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, R *r) :
michael@0 489 o_(o), m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4) {}
michael@0 490 virtual bool returns_value() const { return true; }
michael@0 491
michael@0 492 NS_IMETHOD Run() {
michael@0 493 *r_ = ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_);
michael@0 494 return NS_OK;
michael@0 495 }
michael@0 496
michael@0 497 private:
michael@0 498 C o_;
michael@0 499 M m_;
michael@0 500 R* r_;
michael@0 501 A0 a0_;
michael@0 502 A1 a1_;
michael@0 503 A2 a2_;
michael@0 504 A3 a3_;
michael@0 505 A4 a4_;
michael@0 506 };
michael@0 507
michael@0 508
michael@0 509
michael@0 510 // 6 arguments --
michael@0 511 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5> class runnable_args_nm_6 : public runnable_args_base {
michael@0 512 public:
michael@0 513 runnable_args_nm_6(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5) :
michael@0 514 m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5) {}
michael@0 515
michael@0 516 NS_IMETHOD Run() {
michael@0 517 m_(a0_, a1_, a2_, a3_, a4_, a5_);
michael@0 518 return NS_OK;
michael@0 519 }
michael@0 520
michael@0 521 private:
michael@0 522 M m_;
michael@0 523 A0 a0_;
michael@0 524 A1 a1_;
michael@0 525 A2 a2_;
michael@0 526 A3 a3_;
michael@0 527 A4 a4_;
michael@0 528 A5 a5_;
michael@0 529 };
michael@0 530
michael@0 531
michael@0 532
michael@0 533 // 6 arguments --
michael@0 534 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename R> class runnable_args_nm_6_ret : public runnable_args_base {
michael@0 535 public:
michael@0 536 runnable_args_nm_6_ret(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, R *r) :
michael@0 537 m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5) {}
michael@0 538 virtual bool returns_value() const { return true; }
michael@0 539
michael@0 540 NS_IMETHOD Run() {
michael@0 541 *r_ = m_(a0_, a1_, a2_, a3_, a4_, a5_);
michael@0 542 return NS_OK;
michael@0 543 }
michael@0 544
michael@0 545 private:
michael@0 546 M m_;
michael@0 547 R* r_;
michael@0 548 A0 a0_;
michael@0 549 A1 a1_;
michael@0 550 A2 a2_;
michael@0 551 A3 a3_;
michael@0 552 A4 a4_;
michael@0 553 A5 a5_;
michael@0 554 };
michael@0 555
michael@0 556
michael@0 557
michael@0 558 // 6 arguments --
michael@0 559 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5> class runnable_args_m_6 : public runnable_args_base {
michael@0 560 public:
michael@0 561 runnable_args_m_6(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5) :
michael@0 562 o_(o), m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5) {}
michael@0 563
michael@0 564 NS_IMETHOD Run() {
michael@0 565 ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_);
michael@0 566 return NS_OK;
michael@0 567 }
michael@0 568
michael@0 569 private:
michael@0 570 C o_;
michael@0 571 M m_;
michael@0 572 A0 a0_;
michael@0 573 A1 a1_;
michael@0 574 A2 a2_;
michael@0 575 A3 a3_;
michael@0 576 A4 a4_;
michael@0 577 A5 a5_;
michael@0 578 };
michael@0 579
michael@0 580
michael@0 581
michael@0 582 // 6 arguments --
michael@0 583 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename R> class runnable_args_m_6_ret : public runnable_args_base {
michael@0 584 public:
michael@0 585 runnable_args_m_6_ret(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, R *r) :
michael@0 586 o_(o), m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5) {}
michael@0 587 virtual bool returns_value() const { return true; }
michael@0 588
michael@0 589 NS_IMETHOD Run() {
michael@0 590 *r_ = ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_);
michael@0 591 return NS_OK;
michael@0 592 }
michael@0 593
michael@0 594 private:
michael@0 595 C o_;
michael@0 596 M m_;
michael@0 597 R* r_;
michael@0 598 A0 a0_;
michael@0 599 A1 a1_;
michael@0 600 A2 a2_;
michael@0 601 A3 a3_;
michael@0 602 A4 a4_;
michael@0 603 A5 a5_;
michael@0 604 };
michael@0 605
michael@0 606
michael@0 607
michael@0 608 // 7 arguments --
michael@0 609 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6> class runnable_args_nm_7 : public runnable_args_base {
michael@0 610 public:
michael@0 611 runnable_args_nm_7(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6) :
michael@0 612 m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6) {}
michael@0 613
michael@0 614 NS_IMETHOD Run() {
michael@0 615 m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_);
michael@0 616 return NS_OK;
michael@0 617 }
michael@0 618
michael@0 619 private:
michael@0 620 M m_;
michael@0 621 A0 a0_;
michael@0 622 A1 a1_;
michael@0 623 A2 a2_;
michael@0 624 A3 a3_;
michael@0 625 A4 a4_;
michael@0 626 A5 a5_;
michael@0 627 A6 a6_;
michael@0 628 };
michael@0 629
michael@0 630
michael@0 631
michael@0 632 // 7 arguments --
michael@0 633 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename R> class runnable_args_nm_7_ret : public runnable_args_base {
michael@0 634 public:
michael@0 635 runnable_args_nm_7_ret(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, R *r) :
michael@0 636 m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6) {}
michael@0 637 virtual bool returns_value() const { return true; }
michael@0 638
michael@0 639 NS_IMETHOD Run() {
michael@0 640 *r_ = m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_);
michael@0 641 return NS_OK;
michael@0 642 }
michael@0 643
michael@0 644 private:
michael@0 645 M m_;
michael@0 646 R* r_;
michael@0 647 A0 a0_;
michael@0 648 A1 a1_;
michael@0 649 A2 a2_;
michael@0 650 A3 a3_;
michael@0 651 A4 a4_;
michael@0 652 A5 a5_;
michael@0 653 A6 a6_;
michael@0 654 };
michael@0 655
michael@0 656
michael@0 657
michael@0 658 // 7 arguments --
michael@0 659 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6> class runnable_args_m_7 : public runnable_args_base {
michael@0 660 public:
michael@0 661 runnable_args_m_7(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6) :
michael@0 662 o_(o), m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6) {}
michael@0 663
michael@0 664 NS_IMETHOD Run() {
michael@0 665 ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_);
michael@0 666 return NS_OK;
michael@0 667 }
michael@0 668
michael@0 669 private:
michael@0 670 C o_;
michael@0 671 M m_;
michael@0 672 A0 a0_;
michael@0 673 A1 a1_;
michael@0 674 A2 a2_;
michael@0 675 A3 a3_;
michael@0 676 A4 a4_;
michael@0 677 A5 a5_;
michael@0 678 A6 a6_;
michael@0 679 };
michael@0 680
michael@0 681
michael@0 682
michael@0 683 // 7 arguments --
michael@0 684 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename R> class runnable_args_m_7_ret : public runnable_args_base {
michael@0 685 public:
michael@0 686 runnable_args_m_7_ret(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, R *r) :
michael@0 687 o_(o), m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6) {}
michael@0 688 virtual bool returns_value() const { return true; }
michael@0 689
michael@0 690 NS_IMETHOD Run() {
michael@0 691 *r_ = ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_);
michael@0 692 return NS_OK;
michael@0 693 }
michael@0 694
michael@0 695 private:
michael@0 696 C o_;
michael@0 697 M m_;
michael@0 698 R* r_;
michael@0 699 A0 a0_;
michael@0 700 A1 a1_;
michael@0 701 A2 a2_;
michael@0 702 A3 a3_;
michael@0 703 A4 a4_;
michael@0 704 A5 a5_;
michael@0 705 A6 a6_;
michael@0 706 };
michael@0 707
michael@0 708
michael@0 709
michael@0 710 // 8 arguments --
michael@0 711 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7> class runnable_args_nm_8 : public runnable_args_base {
michael@0 712 public:
michael@0 713 runnable_args_nm_8(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7) :
michael@0 714 m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7) {}
michael@0 715
michael@0 716 NS_IMETHOD Run() {
michael@0 717 m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_);
michael@0 718 return NS_OK;
michael@0 719 }
michael@0 720
michael@0 721 private:
michael@0 722 M m_;
michael@0 723 A0 a0_;
michael@0 724 A1 a1_;
michael@0 725 A2 a2_;
michael@0 726 A3 a3_;
michael@0 727 A4 a4_;
michael@0 728 A5 a5_;
michael@0 729 A6 a6_;
michael@0 730 A7 a7_;
michael@0 731 };
michael@0 732
michael@0 733
michael@0 734
michael@0 735 // 8 arguments --
michael@0 736 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename R> class runnable_args_nm_8_ret : public runnable_args_base {
michael@0 737 public:
michael@0 738 runnable_args_nm_8_ret(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, R *r) :
michael@0 739 m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7) {}
michael@0 740 virtual bool returns_value() const { return true; }
michael@0 741
michael@0 742 NS_IMETHOD Run() {
michael@0 743 *r_ = m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_);
michael@0 744 return NS_OK;
michael@0 745 }
michael@0 746
michael@0 747 private:
michael@0 748 M m_;
michael@0 749 R* r_;
michael@0 750 A0 a0_;
michael@0 751 A1 a1_;
michael@0 752 A2 a2_;
michael@0 753 A3 a3_;
michael@0 754 A4 a4_;
michael@0 755 A5 a5_;
michael@0 756 A6 a6_;
michael@0 757 A7 a7_;
michael@0 758 };
michael@0 759
michael@0 760
michael@0 761
michael@0 762 // 8 arguments --
michael@0 763 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7> class runnable_args_m_8 : public runnable_args_base {
michael@0 764 public:
michael@0 765 runnable_args_m_8(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7) :
michael@0 766 o_(o), m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7) {}
michael@0 767
michael@0 768 NS_IMETHOD Run() {
michael@0 769 ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_);
michael@0 770 return NS_OK;
michael@0 771 }
michael@0 772
michael@0 773 private:
michael@0 774 C o_;
michael@0 775 M m_;
michael@0 776 A0 a0_;
michael@0 777 A1 a1_;
michael@0 778 A2 a2_;
michael@0 779 A3 a3_;
michael@0 780 A4 a4_;
michael@0 781 A5 a5_;
michael@0 782 A6 a6_;
michael@0 783 A7 a7_;
michael@0 784 };
michael@0 785
michael@0 786
michael@0 787
michael@0 788 // 8 arguments --
michael@0 789 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename R> class runnable_args_m_8_ret : public runnable_args_base {
michael@0 790 public:
michael@0 791 runnable_args_m_8_ret(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, R *r) :
michael@0 792 o_(o), m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7) {}
michael@0 793 virtual bool returns_value() const { return true; }
michael@0 794
michael@0 795 NS_IMETHOD Run() {
michael@0 796 *r_ = ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_);
michael@0 797 return NS_OK;
michael@0 798 }
michael@0 799
michael@0 800 private:
michael@0 801 C o_;
michael@0 802 M m_;
michael@0 803 R* r_;
michael@0 804 A0 a0_;
michael@0 805 A1 a1_;
michael@0 806 A2 a2_;
michael@0 807 A3 a3_;
michael@0 808 A4 a4_;
michael@0 809 A5 a5_;
michael@0 810 A6 a6_;
michael@0 811 A7 a7_;
michael@0 812 };
michael@0 813
michael@0 814
michael@0 815
michael@0 816 // 9 arguments --
michael@0 817 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8> class runnable_args_nm_9 : public runnable_args_base {
michael@0 818 public:
michael@0 819 runnable_args_nm_9(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8) :
michael@0 820 m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8) {}
michael@0 821
michael@0 822 NS_IMETHOD Run() {
michael@0 823 m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_);
michael@0 824 return NS_OK;
michael@0 825 }
michael@0 826
michael@0 827 private:
michael@0 828 M m_;
michael@0 829 A0 a0_;
michael@0 830 A1 a1_;
michael@0 831 A2 a2_;
michael@0 832 A3 a3_;
michael@0 833 A4 a4_;
michael@0 834 A5 a5_;
michael@0 835 A6 a6_;
michael@0 836 A7 a7_;
michael@0 837 A8 a8_;
michael@0 838 };
michael@0 839
michael@0 840
michael@0 841
michael@0 842 // 9 arguments --
michael@0 843 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename R> class runnable_args_nm_9_ret : public runnable_args_base {
michael@0 844 public:
michael@0 845 runnable_args_nm_9_ret(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, R *r) :
michael@0 846 m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8) {}
michael@0 847 virtual bool returns_value() const { return true; }
michael@0 848
michael@0 849 NS_IMETHOD Run() {
michael@0 850 *r_ = m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_);
michael@0 851 return NS_OK;
michael@0 852 }
michael@0 853
michael@0 854 private:
michael@0 855 M m_;
michael@0 856 R* r_;
michael@0 857 A0 a0_;
michael@0 858 A1 a1_;
michael@0 859 A2 a2_;
michael@0 860 A3 a3_;
michael@0 861 A4 a4_;
michael@0 862 A5 a5_;
michael@0 863 A6 a6_;
michael@0 864 A7 a7_;
michael@0 865 A8 a8_;
michael@0 866 };
michael@0 867
michael@0 868
michael@0 869
michael@0 870 // 9 arguments --
michael@0 871 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8> class runnable_args_m_9 : public runnable_args_base {
michael@0 872 public:
michael@0 873 runnable_args_m_9(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8) :
michael@0 874 o_(o), m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8) {}
michael@0 875
michael@0 876 NS_IMETHOD Run() {
michael@0 877 ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_);
michael@0 878 return NS_OK;
michael@0 879 }
michael@0 880
michael@0 881 private:
michael@0 882 C o_;
michael@0 883 M m_;
michael@0 884 A0 a0_;
michael@0 885 A1 a1_;
michael@0 886 A2 a2_;
michael@0 887 A3 a3_;
michael@0 888 A4 a4_;
michael@0 889 A5 a5_;
michael@0 890 A6 a6_;
michael@0 891 A7 a7_;
michael@0 892 A8 a8_;
michael@0 893 };
michael@0 894
michael@0 895
michael@0 896
michael@0 897 // 9 arguments --
michael@0 898 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename R> class runnable_args_m_9_ret : public runnable_args_base {
michael@0 899 public:
michael@0 900 runnable_args_m_9_ret(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, R *r) :
michael@0 901 o_(o), m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8) {}
michael@0 902 virtual bool returns_value() const { return true; }
michael@0 903
michael@0 904 NS_IMETHOD Run() {
michael@0 905 *r_ = ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_);
michael@0 906 return NS_OK;
michael@0 907 }
michael@0 908
michael@0 909 private:
michael@0 910 C o_;
michael@0 911 M m_;
michael@0 912 R* r_;
michael@0 913 A0 a0_;
michael@0 914 A1 a1_;
michael@0 915 A2 a2_;
michael@0 916 A3 a3_;
michael@0 917 A4 a4_;
michael@0 918 A5 a5_;
michael@0 919 A6 a6_;
michael@0 920 A7 a7_;
michael@0 921 A8 a8_;
michael@0 922 };
michael@0 923
michael@0 924
michael@0 925
michael@0 926 // 10 arguments --
michael@0 927 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9> class runnable_args_nm_10 : public runnable_args_base {
michael@0 928 public:
michael@0 929 runnable_args_nm_10(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9) :
michael@0 930 m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9) {}
michael@0 931
michael@0 932 NS_IMETHOD Run() {
michael@0 933 m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_);
michael@0 934 return NS_OK;
michael@0 935 }
michael@0 936
michael@0 937 private:
michael@0 938 M m_;
michael@0 939 A0 a0_;
michael@0 940 A1 a1_;
michael@0 941 A2 a2_;
michael@0 942 A3 a3_;
michael@0 943 A4 a4_;
michael@0 944 A5 a5_;
michael@0 945 A6 a6_;
michael@0 946 A7 a7_;
michael@0 947 A8 a8_;
michael@0 948 A9 a9_;
michael@0 949 };
michael@0 950
michael@0 951
michael@0 952
michael@0 953 // 10 arguments --
michael@0 954 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename R> class runnable_args_nm_10_ret : public runnable_args_base {
michael@0 955 public:
michael@0 956 runnable_args_nm_10_ret(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, R *r) :
michael@0 957 m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9) {}
michael@0 958 virtual bool returns_value() const { return true; }
michael@0 959
michael@0 960 NS_IMETHOD Run() {
michael@0 961 *r_ = m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_);
michael@0 962 return NS_OK;
michael@0 963 }
michael@0 964
michael@0 965 private:
michael@0 966 M m_;
michael@0 967 R* r_;
michael@0 968 A0 a0_;
michael@0 969 A1 a1_;
michael@0 970 A2 a2_;
michael@0 971 A3 a3_;
michael@0 972 A4 a4_;
michael@0 973 A5 a5_;
michael@0 974 A6 a6_;
michael@0 975 A7 a7_;
michael@0 976 A8 a8_;
michael@0 977 A9 a9_;
michael@0 978 };
michael@0 979
michael@0 980
michael@0 981
michael@0 982 // 10 arguments --
michael@0 983 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9> class runnable_args_m_10 : public runnable_args_base {
michael@0 984 public:
michael@0 985 runnable_args_m_10(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9) :
michael@0 986 o_(o), m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9) {}
michael@0 987
michael@0 988 NS_IMETHOD Run() {
michael@0 989 ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_);
michael@0 990 return NS_OK;
michael@0 991 }
michael@0 992
michael@0 993 private:
michael@0 994 C o_;
michael@0 995 M m_;
michael@0 996 A0 a0_;
michael@0 997 A1 a1_;
michael@0 998 A2 a2_;
michael@0 999 A3 a3_;
michael@0 1000 A4 a4_;
michael@0 1001 A5 a5_;
michael@0 1002 A6 a6_;
michael@0 1003 A7 a7_;
michael@0 1004 A8 a8_;
michael@0 1005 A9 a9_;
michael@0 1006 };
michael@0 1007
michael@0 1008
michael@0 1009
michael@0 1010 // 10 arguments --
michael@0 1011 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename R> class runnable_args_m_10_ret : public runnable_args_base {
michael@0 1012 public:
michael@0 1013 runnable_args_m_10_ret(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, R *r) :
michael@0 1014 o_(o), m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9) {}
michael@0 1015 virtual bool returns_value() const { return true; }
michael@0 1016
michael@0 1017 NS_IMETHOD Run() {
michael@0 1018 *r_ = ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_);
michael@0 1019 return NS_OK;
michael@0 1020 }
michael@0 1021
michael@0 1022 private:
michael@0 1023 C o_;
michael@0 1024 M m_;
michael@0 1025 R* r_;
michael@0 1026 A0 a0_;
michael@0 1027 A1 a1_;
michael@0 1028 A2 a2_;
michael@0 1029 A3 a3_;
michael@0 1030 A4 a4_;
michael@0 1031 A5 a5_;
michael@0 1032 A6 a6_;
michael@0 1033 A7 a7_;
michael@0 1034 A8 a8_;
michael@0 1035 A9 a9_;
michael@0 1036 };
michael@0 1037
michael@0 1038
michael@0 1039
michael@0 1040 // 11 arguments --
michael@0 1041 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10> class runnable_args_nm_11 : public runnable_args_base {
michael@0 1042 public:
michael@0 1043 runnable_args_nm_11(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10) :
michael@0 1044 m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10) {}
michael@0 1045
michael@0 1046 NS_IMETHOD Run() {
michael@0 1047 m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_);
michael@0 1048 return NS_OK;
michael@0 1049 }
michael@0 1050
michael@0 1051 private:
michael@0 1052 M m_;
michael@0 1053 A0 a0_;
michael@0 1054 A1 a1_;
michael@0 1055 A2 a2_;
michael@0 1056 A3 a3_;
michael@0 1057 A4 a4_;
michael@0 1058 A5 a5_;
michael@0 1059 A6 a6_;
michael@0 1060 A7 a7_;
michael@0 1061 A8 a8_;
michael@0 1062 A9 a9_;
michael@0 1063 A10 a10_;
michael@0 1064 };
michael@0 1065
michael@0 1066
michael@0 1067
michael@0 1068 // 11 arguments --
michael@0 1069 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename R> class runnable_args_nm_11_ret : public runnable_args_base {
michael@0 1070 public:
michael@0 1071 runnable_args_nm_11_ret(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, R *r) :
michael@0 1072 m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10) {}
michael@0 1073 virtual bool returns_value() const { return true; }
michael@0 1074
michael@0 1075 NS_IMETHOD Run() {
michael@0 1076 *r_ = m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_);
michael@0 1077 return NS_OK;
michael@0 1078 }
michael@0 1079
michael@0 1080 private:
michael@0 1081 M m_;
michael@0 1082 R* r_;
michael@0 1083 A0 a0_;
michael@0 1084 A1 a1_;
michael@0 1085 A2 a2_;
michael@0 1086 A3 a3_;
michael@0 1087 A4 a4_;
michael@0 1088 A5 a5_;
michael@0 1089 A6 a6_;
michael@0 1090 A7 a7_;
michael@0 1091 A8 a8_;
michael@0 1092 A9 a9_;
michael@0 1093 A10 a10_;
michael@0 1094 };
michael@0 1095
michael@0 1096
michael@0 1097
michael@0 1098 // 11 arguments --
michael@0 1099 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10> class runnable_args_m_11 : public runnable_args_base {
michael@0 1100 public:
michael@0 1101 runnable_args_m_11(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10) :
michael@0 1102 o_(o), m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10) {}
michael@0 1103
michael@0 1104 NS_IMETHOD Run() {
michael@0 1105 ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_);
michael@0 1106 return NS_OK;
michael@0 1107 }
michael@0 1108
michael@0 1109 private:
michael@0 1110 C o_;
michael@0 1111 M m_;
michael@0 1112 A0 a0_;
michael@0 1113 A1 a1_;
michael@0 1114 A2 a2_;
michael@0 1115 A3 a3_;
michael@0 1116 A4 a4_;
michael@0 1117 A5 a5_;
michael@0 1118 A6 a6_;
michael@0 1119 A7 a7_;
michael@0 1120 A8 a8_;
michael@0 1121 A9 a9_;
michael@0 1122 A10 a10_;
michael@0 1123 };
michael@0 1124
michael@0 1125
michael@0 1126
michael@0 1127 // 11 arguments --
michael@0 1128 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename R> class runnable_args_m_11_ret : public runnable_args_base {
michael@0 1129 public:
michael@0 1130 runnable_args_m_11_ret(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, R *r) :
michael@0 1131 o_(o), m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10) {}
michael@0 1132 virtual bool returns_value() const { return true; }
michael@0 1133
michael@0 1134 NS_IMETHOD Run() {
michael@0 1135 *r_ = ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_);
michael@0 1136 return NS_OK;
michael@0 1137 }
michael@0 1138
michael@0 1139 private:
michael@0 1140 C o_;
michael@0 1141 M m_;
michael@0 1142 R* r_;
michael@0 1143 A0 a0_;
michael@0 1144 A1 a1_;
michael@0 1145 A2 a2_;
michael@0 1146 A3 a3_;
michael@0 1147 A4 a4_;
michael@0 1148 A5 a5_;
michael@0 1149 A6 a6_;
michael@0 1150 A7 a7_;
michael@0 1151 A8 a8_;
michael@0 1152 A9 a9_;
michael@0 1153 A10 a10_;
michael@0 1154 };
michael@0 1155
michael@0 1156
michael@0 1157
michael@0 1158 // 12 arguments --
michael@0 1159 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11> class runnable_args_nm_12 : public runnable_args_base {
michael@0 1160 public:
michael@0 1161 runnable_args_nm_12(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11) :
michael@0 1162 m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10), a11_(a11) {}
michael@0 1163
michael@0 1164 NS_IMETHOD Run() {
michael@0 1165 m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_, a11_);
michael@0 1166 return NS_OK;
michael@0 1167 }
michael@0 1168
michael@0 1169 private:
michael@0 1170 M m_;
michael@0 1171 A0 a0_;
michael@0 1172 A1 a1_;
michael@0 1173 A2 a2_;
michael@0 1174 A3 a3_;
michael@0 1175 A4 a4_;
michael@0 1176 A5 a5_;
michael@0 1177 A6 a6_;
michael@0 1178 A7 a7_;
michael@0 1179 A8 a8_;
michael@0 1180 A9 a9_;
michael@0 1181 A10 a10_;
michael@0 1182 A11 a11_;
michael@0 1183 };
michael@0 1184
michael@0 1185
michael@0 1186
michael@0 1187 // 12 arguments --
michael@0 1188 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename R> class runnable_args_nm_12_ret : public runnable_args_base {
michael@0 1189 public:
michael@0 1190 runnable_args_nm_12_ret(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, R *r) :
michael@0 1191 m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10), a11_(a11) {}
michael@0 1192 virtual bool returns_value() const { return true; }
michael@0 1193
michael@0 1194 NS_IMETHOD Run() {
michael@0 1195 *r_ = m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_, a11_);
michael@0 1196 return NS_OK;
michael@0 1197 }
michael@0 1198
michael@0 1199 private:
michael@0 1200 M m_;
michael@0 1201 R* r_;
michael@0 1202 A0 a0_;
michael@0 1203 A1 a1_;
michael@0 1204 A2 a2_;
michael@0 1205 A3 a3_;
michael@0 1206 A4 a4_;
michael@0 1207 A5 a5_;
michael@0 1208 A6 a6_;
michael@0 1209 A7 a7_;
michael@0 1210 A8 a8_;
michael@0 1211 A9 a9_;
michael@0 1212 A10 a10_;
michael@0 1213 A11 a11_;
michael@0 1214 };
michael@0 1215
michael@0 1216
michael@0 1217
michael@0 1218 // 12 arguments --
michael@0 1219 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11> class runnable_args_m_12 : public runnable_args_base {
michael@0 1220 public:
michael@0 1221 runnable_args_m_12(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11) :
michael@0 1222 o_(o), m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10), a11_(a11) {}
michael@0 1223
michael@0 1224 NS_IMETHOD Run() {
michael@0 1225 ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_, a11_);
michael@0 1226 return NS_OK;
michael@0 1227 }
michael@0 1228
michael@0 1229 private:
michael@0 1230 C o_;
michael@0 1231 M m_;
michael@0 1232 A0 a0_;
michael@0 1233 A1 a1_;
michael@0 1234 A2 a2_;
michael@0 1235 A3 a3_;
michael@0 1236 A4 a4_;
michael@0 1237 A5 a5_;
michael@0 1238 A6 a6_;
michael@0 1239 A7 a7_;
michael@0 1240 A8 a8_;
michael@0 1241 A9 a9_;
michael@0 1242 A10 a10_;
michael@0 1243 A11 a11_;
michael@0 1244 };
michael@0 1245
michael@0 1246
michael@0 1247
michael@0 1248 // 12 arguments --
michael@0 1249 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename R> class runnable_args_m_12_ret : public runnable_args_base {
michael@0 1250 public:
michael@0 1251 runnable_args_m_12_ret(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, R *r) :
michael@0 1252 o_(o), m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10), a11_(a11) {}
michael@0 1253 virtual bool returns_value() const { return true; }
michael@0 1254
michael@0 1255 NS_IMETHOD Run() {
michael@0 1256 *r_ = ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_, a11_);
michael@0 1257 return NS_OK;
michael@0 1258 }
michael@0 1259
michael@0 1260 private:
michael@0 1261 C o_;
michael@0 1262 M m_;
michael@0 1263 R* r_;
michael@0 1264 A0 a0_;
michael@0 1265 A1 a1_;
michael@0 1266 A2 a2_;
michael@0 1267 A3 a3_;
michael@0 1268 A4 a4_;
michael@0 1269 A5 a5_;
michael@0 1270 A6 a6_;
michael@0 1271 A7 a7_;
michael@0 1272 A8 a8_;
michael@0 1273 A9 a9_;
michael@0 1274 A10 a10_;
michael@0 1275 A11 a11_;
michael@0 1276 };
michael@0 1277
michael@0 1278
michael@0 1279
michael@0 1280 // 13 arguments --
michael@0 1281 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12> class runnable_args_nm_13 : public runnable_args_base {
michael@0 1282 public:
michael@0 1283 runnable_args_nm_13(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12) :
michael@0 1284 m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10), a11_(a11), a12_(a12) {}
michael@0 1285
michael@0 1286 NS_IMETHOD Run() {
michael@0 1287 m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_, a11_, a12_);
michael@0 1288 return NS_OK;
michael@0 1289 }
michael@0 1290
michael@0 1291 private:
michael@0 1292 M m_;
michael@0 1293 A0 a0_;
michael@0 1294 A1 a1_;
michael@0 1295 A2 a2_;
michael@0 1296 A3 a3_;
michael@0 1297 A4 a4_;
michael@0 1298 A5 a5_;
michael@0 1299 A6 a6_;
michael@0 1300 A7 a7_;
michael@0 1301 A8 a8_;
michael@0 1302 A9 a9_;
michael@0 1303 A10 a10_;
michael@0 1304 A11 a11_;
michael@0 1305 A12 a12_;
michael@0 1306 };
michael@0 1307
michael@0 1308
michael@0 1309
michael@0 1310 // 13 arguments --
michael@0 1311 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename R> class runnable_args_nm_13_ret : public runnable_args_base {
michael@0 1312 public:
michael@0 1313 runnable_args_nm_13_ret(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, R *r) :
michael@0 1314 m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10), a11_(a11), a12_(a12) {}
michael@0 1315 virtual bool returns_value() const { return true; }
michael@0 1316
michael@0 1317 NS_IMETHOD Run() {
michael@0 1318 *r_ = m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_, a11_, a12_);
michael@0 1319 return NS_OK;
michael@0 1320 }
michael@0 1321
michael@0 1322 private:
michael@0 1323 M m_;
michael@0 1324 R* r_;
michael@0 1325 A0 a0_;
michael@0 1326 A1 a1_;
michael@0 1327 A2 a2_;
michael@0 1328 A3 a3_;
michael@0 1329 A4 a4_;
michael@0 1330 A5 a5_;
michael@0 1331 A6 a6_;
michael@0 1332 A7 a7_;
michael@0 1333 A8 a8_;
michael@0 1334 A9 a9_;
michael@0 1335 A10 a10_;
michael@0 1336 A11 a11_;
michael@0 1337 A12 a12_;
michael@0 1338 };
michael@0 1339
michael@0 1340
michael@0 1341
michael@0 1342 // 13 arguments --
michael@0 1343 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12> class runnable_args_m_13 : public runnable_args_base {
michael@0 1344 public:
michael@0 1345 runnable_args_m_13(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12) :
michael@0 1346 o_(o), m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10), a11_(a11), a12_(a12) {}
michael@0 1347
michael@0 1348 NS_IMETHOD Run() {
michael@0 1349 ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_, a11_, a12_);
michael@0 1350 return NS_OK;
michael@0 1351 }
michael@0 1352
michael@0 1353 private:
michael@0 1354 C o_;
michael@0 1355 M m_;
michael@0 1356 A0 a0_;
michael@0 1357 A1 a1_;
michael@0 1358 A2 a2_;
michael@0 1359 A3 a3_;
michael@0 1360 A4 a4_;
michael@0 1361 A5 a5_;
michael@0 1362 A6 a6_;
michael@0 1363 A7 a7_;
michael@0 1364 A8 a8_;
michael@0 1365 A9 a9_;
michael@0 1366 A10 a10_;
michael@0 1367 A11 a11_;
michael@0 1368 A12 a12_;
michael@0 1369 };
michael@0 1370
michael@0 1371
michael@0 1372
michael@0 1373 // 13 arguments --
michael@0 1374 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename R> class runnable_args_m_13_ret : public runnable_args_base {
michael@0 1375 public:
michael@0 1376 runnable_args_m_13_ret(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, R *r) :
michael@0 1377 o_(o), m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10), a11_(a11), a12_(a12) {}
michael@0 1378 virtual bool returns_value() const { return true; }
michael@0 1379
michael@0 1380 NS_IMETHOD Run() {
michael@0 1381 *r_ = ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_, a11_, a12_);
michael@0 1382 return NS_OK;
michael@0 1383 }
michael@0 1384
michael@0 1385 private:
michael@0 1386 C o_;
michael@0 1387 M m_;
michael@0 1388 R* r_;
michael@0 1389 A0 a0_;
michael@0 1390 A1 a1_;
michael@0 1391 A2 a2_;
michael@0 1392 A3 a3_;
michael@0 1393 A4 a4_;
michael@0 1394 A5 a5_;
michael@0 1395 A6 a6_;
michael@0 1396 A7 a7_;
michael@0 1397 A8 a8_;
michael@0 1398 A9 a9_;
michael@0 1399 A10 a10_;
michael@0 1400 A11 a11_;
michael@0 1401 A12 a12_;
michael@0 1402 };
michael@0 1403
michael@0 1404
michael@0 1405
michael@0 1406 // 14 arguments --
michael@0 1407 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13> class runnable_args_nm_14 : public runnable_args_base {
michael@0 1408 public:
michael@0 1409 runnable_args_nm_14(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13) :
michael@0 1410 m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10), a11_(a11), a12_(a12), a13_(a13) {}
michael@0 1411
michael@0 1412 NS_IMETHOD Run() {
michael@0 1413 m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_, a11_, a12_, a13_);
michael@0 1414 return NS_OK;
michael@0 1415 }
michael@0 1416
michael@0 1417 private:
michael@0 1418 M m_;
michael@0 1419 A0 a0_;
michael@0 1420 A1 a1_;
michael@0 1421 A2 a2_;
michael@0 1422 A3 a3_;
michael@0 1423 A4 a4_;
michael@0 1424 A5 a5_;
michael@0 1425 A6 a6_;
michael@0 1426 A7 a7_;
michael@0 1427 A8 a8_;
michael@0 1428 A9 a9_;
michael@0 1429 A10 a10_;
michael@0 1430 A11 a11_;
michael@0 1431 A12 a12_;
michael@0 1432 A13 a13_;
michael@0 1433 };
michael@0 1434
michael@0 1435
michael@0 1436
michael@0 1437 // 14 arguments --
michael@0 1438 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename R> class runnable_args_nm_14_ret : public runnable_args_base {
michael@0 1439 public:
michael@0 1440 runnable_args_nm_14_ret(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, R *r) :
michael@0 1441 m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10), a11_(a11), a12_(a12), a13_(a13) {}
michael@0 1442 virtual bool returns_value() const { return true; }
michael@0 1443
michael@0 1444 NS_IMETHOD Run() {
michael@0 1445 *r_ = m_(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_, a11_, a12_, a13_);
michael@0 1446 return NS_OK;
michael@0 1447 }
michael@0 1448
michael@0 1449 private:
michael@0 1450 M m_;
michael@0 1451 R* r_;
michael@0 1452 A0 a0_;
michael@0 1453 A1 a1_;
michael@0 1454 A2 a2_;
michael@0 1455 A3 a3_;
michael@0 1456 A4 a4_;
michael@0 1457 A5 a5_;
michael@0 1458 A6 a6_;
michael@0 1459 A7 a7_;
michael@0 1460 A8 a8_;
michael@0 1461 A9 a9_;
michael@0 1462 A10 a10_;
michael@0 1463 A11 a11_;
michael@0 1464 A12 a12_;
michael@0 1465 A13 a13_;
michael@0 1466 };
michael@0 1467
michael@0 1468
michael@0 1469
michael@0 1470 // 14 arguments --
michael@0 1471 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13> class runnable_args_m_14 : public runnable_args_base {
michael@0 1472 public:
michael@0 1473 runnable_args_m_14(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13) :
michael@0 1474 o_(o), m_(m), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10), a11_(a11), a12_(a12), a13_(a13) {}
michael@0 1475
michael@0 1476 NS_IMETHOD Run() {
michael@0 1477 ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_, a11_, a12_, a13_);
michael@0 1478 return NS_OK;
michael@0 1479 }
michael@0 1480
michael@0 1481 private:
michael@0 1482 C o_;
michael@0 1483 M m_;
michael@0 1484 A0 a0_;
michael@0 1485 A1 a1_;
michael@0 1486 A2 a2_;
michael@0 1487 A3 a3_;
michael@0 1488 A4 a4_;
michael@0 1489 A5 a5_;
michael@0 1490 A6 a6_;
michael@0 1491 A7 a7_;
michael@0 1492 A8 a8_;
michael@0 1493 A9 a9_;
michael@0 1494 A10 a10_;
michael@0 1495 A11 a11_;
michael@0 1496 A12 a12_;
michael@0 1497 A13 a13_;
michael@0 1498 };
michael@0 1499
michael@0 1500
michael@0 1501
michael@0 1502 // 14 arguments --
michael@0 1503 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename R> class runnable_args_m_14_ret : public runnable_args_base {
michael@0 1504 public:
michael@0 1505 runnable_args_m_14_ret(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, R *r) :
michael@0 1506 o_(o), m_(m), r_(r), a0_(a0), a1_(a1), a2_(a2), a3_(a3), a4_(a4), a5_(a5), a6_(a6), a7_(a7), a8_(a8), a9_(a9), a10_(a10), a11_(a11), a12_(a12), a13_(a13) {}
michael@0 1507 virtual bool returns_value() const { return true; }
michael@0 1508
michael@0 1509 NS_IMETHOD Run() {
michael@0 1510 *r_ = ((*o_).*m_)(a0_, a1_, a2_, a3_, a4_, a5_, a6_, a7_, a8_, a9_, a10_, a11_, a12_, a13_);
michael@0 1511 return NS_OK;
michael@0 1512 }
michael@0 1513
michael@0 1514 private:
michael@0 1515 C o_;
michael@0 1516 M m_;
michael@0 1517 R* r_;
michael@0 1518 A0 a0_;
michael@0 1519 A1 a1_;
michael@0 1520 A2 a2_;
michael@0 1521 A3 a3_;
michael@0 1522 A4 a4_;
michael@0 1523 A5 a5_;
michael@0 1524 A6 a6_;
michael@0 1525 A7 a7_;
michael@0 1526 A8 a8_;
michael@0 1527 A9 a9_;
michael@0 1528 A10 a10_;
michael@0 1529 A11 a11_;
michael@0 1530 A12 a12_;
michael@0 1531 A13 a13_;
michael@0 1532 };
michael@0 1533
michael@0 1534
michael@0 1535
michael@0 1536
michael@0 1537
michael@0 1538
michael@0 1539 // 0 arguments --
michael@0 1540 template<typename M>
michael@0 1541 runnable_args_nm_0<M>* WrapRunnableNM(M m) {
michael@0 1542 return new runnable_args_nm_0<M>
michael@0 1543 (m);
michael@0 1544 }
michael@0 1545
michael@0 1546 // 0 arguments --
michael@0 1547 template<typename M, typename R>
michael@0 1548 runnable_args_nm_0_ret<M, R>* WrapRunnableNMRet(M m, R* r) {
michael@0 1549 return new runnable_args_nm_0_ret<M, R>
michael@0 1550 (m, r);
michael@0 1551 }
michael@0 1552
michael@0 1553 // 0 arguments --
michael@0 1554 template<typename C, typename M>
michael@0 1555 runnable_args_m_0<C, M>* WrapRunnable(C o, M m) {
michael@0 1556 return new runnable_args_m_0<C, M>
michael@0 1557 (o, m);
michael@0 1558 }
michael@0 1559
michael@0 1560 // 0 arguments --
michael@0 1561 template<typename C, typename M, typename R>
michael@0 1562 runnable_args_m_0_ret<C, M, R>* WrapRunnableRet(C o, M m, R* r) {
michael@0 1563 return new runnable_args_m_0_ret<C, M, R>
michael@0 1564 (o, m, r);
michael@0 1565 }
michael@0 1566
michael@0 1567 // 1 arguments --
michael@0 1568 template<typename M, typename A0>
michael@0 1569 runnable_args_nm_1<M, A0>* WrapRunnableNM(M m, A0 a0) {
michael@0 1570 return new runnable_args_nm_1<M, A0>
michael@0 1571 (m, a0);
michael@0 1572 }
michael@0 1573
michael@0 1574 // 1 arguments --
michael@0 1575 template<typename M, typename A0, typename R>
michael@0 1576 runnable_args_nm_1_ret<M, A0, R>* WrapRunnableNMRet(M m, A0 a0, R* r) {
michael@0 1577 return new runnable_args_nm_1_ret<M, A0, R>
michael@0 1578 (m, a0, r);
michael@0 1579 }
michael@0 1580
michael@0 1581 // 1 arguments --
michael@0 1582 template<typename C, typename M, typename A0>
michael@0 1583 runnable_args_m_1<C, M, A0>* WrapRunnable(C o, M m, A0 a0) {
michael@0 1584 return new runnable_args_m_1<C, M, A0>
michael@0 1585 (o, m, a0);
michael@0 1586 }
michael@0 1587
michael@0 1588 // 1 arguments --
michael@0 1589 template<typename C, typename M, typename A0, typename R>
michael@0 1590 runnable_args_m_1_ret<C, M, A0, R>* WrapRunnableRet(C o, M m, A0 a0, R* r) {
michael@0 1591 return new runnable_args_m_1_ret<C, M, A0, R>
michael@0 1592 (o, m, a0, r);
michael@0 1593 }
michael@0 1594
michael@0 1595 // 2 arguments --
michael@0 1596 template<typename M, typename A0, typename A1>
michael@0 1597 runnable_args_nm_2<M, A0, A1>* WrapRunnableNM(M m, A0 a0, A1 a1) {
michael@0 1598 return new runnable_args_nm_2<M, A0, A1>
michael@0 1599 (m, a0, a1);
michael@0 1600 }
michael@0 1601
michael@0 1602 // 2 arguments --
michael@0 1603 template<typename M, typename A0, typename A1, typename R>
michael@0 1604 runnable_args_nm_2_ret<M, A0, A1, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, R* r) {
michael@0 1605 return new runnable_args_nm_2_ret<M, A0, A1, R>
michael@0 1606 (m, a0, a1, r);
michael@0 1607 }
michael@0 1608
michael@0 1609 // 2 arguments --
michael@0 1610 template<typename C, typename M, typename A0, typename A1>
michael@0 1611 runnable_args_m_2<C, M, A0, A1>* WrapRunnable(C o, M m, A0 a0, A1 a1) {
michael@0 1612 return new runnable_args_m_2<C, M, A0, A1>
michael@0 1613 (o, m, a0, a1);
michael@0 1614 }
michael@0 1615
michael@0 1616 // 2 arguments --
michael@0 1617 template<typename C, typename M, typename A0, typename A1, typename R>
michael@0 1618 runnable_args_m_2_ret<C, M, A0, A1, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, R* r) {
michael@0 1619 return new runnable_args_m_2_ret<C, M, A0, A1, R>
michael@0 1620 (o, m, a0, a1, r);
michael@0 1621 }
michael@0 1622
michael@0 1623 // 3 arguments --
michael@0 1624 template<typename M, typename A0, typename A1, typename A2>
michael@0 1625 runnable_args_nm_3<M, A0, A1, A2>* WrapRunnableNM(M m, A0 a0, A1 a1, A2 a2) {
michael@0 1626 return new runnable_args_nm_3<M, A0, A1, A2>
michael@0 1627 (m, a0, a1, a2);
michael@0 1628 }
michael@0 1629
michael@0 1630 // 3 arguments --
michael@0 1631 template<typename M, typename A0, typename A1, typename A2, typename R>
michael@0 1632 runnable_args_nm_3_ret<M, A0, A1, A2, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, A2 a2, R* r) {
michael@0 1633 return new runnable_args_nm_3_ret<M, A0, A1, A2, R>
michael@0 1634 (m, a0, a1, a2, r);
michael@0 1635 }
michael@0 1636
michael@0 1637 // 3 arguments --
michael@0 1638 template<typename C, typename M, typename A0, typename A1, typename A2>
michael@0 1639 runnable_args_m_3<C, M, A0, A1, A2>* WrapRunnable(C o, M m, A0 a0, A1 a1, A2 a2) {
michael@0 1640 return new runnable_args_m_3<C, M, A0, A1, A2>
michael@0 1641 (o, m, a0, a1, a2);
michael@0 1642 }
michael@0 1643
michael@0 1644 // 3 arguments --
michael@0 1645 template<typename C, typename M, typename A0, typename A1, typename A2, typename R>
michael@0 1646 runnable_args_m_3_ret<C, M, A0, A1, A2, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, A2 a2, R* r) {
michael@0 1647 return new runnable_args_m_3_ret<C, M, A0, A1, A2, R>
michael@0 1648 (o, m, a0, a1, a2, r);
michael@0 1649 }
michael@0 1650
michael@0 1651 // 4 arguments --
michael@0 1652 template<typename M, typename A0, typename A1, typename A2, typename A3>
michael@0 1653 runnable_args_nm_4<M, A0, A1, A2, A3>* WrapRunnableNM(M m, A0 a0, A1 a1, A2 a2, A3 a3) {
michael@0 1654 return new runnable_args_nm_4<M, A0, A1, A2, A3>
michael@0 1655 (m, a0, a1, a2, a3);
michael@0 1656 }
michael@0 1657
michael@0 1658 // 4 arguments --
michael@0 1659 template<typename M, typename A0, typename A1, typename A2, typename A3, typename R>
michael@0 1660 runnable_args_nm_4_ret<M, A0, A1, A2, A3, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, A2 a2, A3 a3, R* r) {
michael@0 1661 return new runnable_args_nm_4_ret<M, A0, A1, A2, A3, R>
michael@0 1662 (m, a0, a1, a2, a3, r);
michael@0 1663 }
michael@0 1664
michael@0 1665 // 4 arguments --
michael@0 1666 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3>
michael@0 1667 runnable_args_m_4<C, M, A0, A1, A2, A3>* WrapRunnable(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3) {
michael@0 1668 return new runnable_args_m_4<C, M, A0, A1, A2, A3>
michael@0 1669 (o, m, a0, a1, a2, a3);
michael@0 1670 }
michael@0 1671
michael@0 1672 // 4 arguments --
michael@0 1673 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename R>
michael@0 1674 runnable_args_m_4_ret<C, M, A0, A1, A2, A3, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, R* r) {
michael@0 1675 return new runnable_args_m_4_ret<C, M, A0, A1, A2, A3, R>
michael@0 1676 (o, m, a0, a1, a2, a3, r);
michael@0 1677 }
michael@0 1678
michael@0 1679 // 5 arguments --
michael@0 1680 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4>
michael@0 1681 runnable_args_nm_5<M, A0, A1, A2, A3, A4>* WrapRunnableNM(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4) {
michael@0 1682 return new runnable_args_nm_5<M, A0, A1, A2, A3, A4>
michael@0 1683 (m, a0, a1, a2, a3, a4);
michael@0 1684 }
michael@0 1685
michael@0 1686 // 5 arguments --
michael@0 1687 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename R>
michael@0 1688 runnable_args_nm_5_ret<M, A0, A1, A2, A3, A4, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, R* r) {
michael@0 1689 return new runnable_args_nm_5_ret<M, A0, A1, A2, A3, A4, R>
michael@0 1690 (m, a0, a1, a2, a3, a4, r);
michael@0 1691 }
michael@0 1692
michael@0 1693 // 5 arguments --
michael@0 1694 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4>
michael@0 1695 runnable_args_m_5<C, M, A0, A1, A2, A3, A4>* WrapRunnable(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4) {
michael@0 1696 return new runnable_args_m_5<C, M, A0, A1, A2, A3, A4>
michael@0 1697 (o, m, a0, a1, a2, a3, a4);
michael@0 1698 }
michael@0 1699
michael@0 1700 // 5 arguments --
michael@0 1701 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename R>
michael@0 1702 runnable_args_m_5_ret<C, M, A0, A1, A2, A3, A4, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, R* r) {
michael@0 1703 return new runnable_args_m_5_ret<C, M, A0, A1, A2, A3, A4, R>
michael@0 1704 (o, m, a0, a1, a2, a3, a4, r);
michael@0 1705 }
michael@0 1706
michael@0 1707 // 6 arguments --
michael@0 1708 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5>
michael@0 1709 runnable_args_nm_6<M, A0, A1, A2, A3, A4, A5>* WrapRunnableNM(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5) {
michael@0 1710 return new runnable_args_nm_6<M, A0, A1, A2, A3, A4, A5>
michael@0 1711 (m, a0, a1, a2, a3, a4, a5);
michael@0 1712 }
michael@0 1713
michael@0 1714 // 6 arguments --
michael@0 1715 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename R>
michael@0 1716 runnable_args_nm_6_ret<M, A0, A1, A2, A3, A4, A5, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, R* r) {
michael@0 1717 return new runnable_args_nm_6_ret<M, A0, A1, A2, A3, A4, A5, R>
michael@0 1718 (m, a0, a1, a2, a3, a4, a5, r);
michael@0 1719 }
michael@0 1720
michael@0 1721 // 6 arguments --
michael@0 1722 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5>
michael@0 1723 runnable_args_m_6<C, M, A0, A1, A2, A3, A4, A5>* WrapRunnable(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5) {
michael@0 1724 return new runnable_args_m_6<C, M, A0, A1, A2, A3, A4, A5>
michael@0 1725 (o, m, a0, a1, a2, a3, a4, a5);
michael@0 1726 }
michael@0 1727
michael@0 1728 // 6 arguments --
michael@0 1729 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename R>
michael@0 1730 runnable_args_m_6_ret<C, M, A0, A1, A2, A3, A4, A5, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, R* r) {
michael@0 1731 return new runnable_args_m_6_ret<C, M, A0, A1, A2, A3, A4, A5, R>
michael@0 1732 (o, m, a0, a1, a2, a3, a4, a5, r);
michael@0 1733 }
michael@0 1734
michael@0 1735 // 7 arguments --
michael@0 1736 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6>
michael@0 1737 runnable_args_nm_7<M, A0, A1, A2, A3, A4, A5, A6>* WrapRunnableNM(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6) {
michael@0 1738 return new runnable_args_nm_7<M, A0, A1, A2, A3, A4, A5, A6>
michael@0 1739 (m, a0, a1, a2, a3, a4, a5, a6);
michael@0 1740 }
michael@0 1741
michael@0 1742 // 7 arguments --
michael@0 1743 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename R>
michael@0 1744 runnable_args_nm_7_ret<M, A0, A1, A2, A3, A4, A5, A6, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, R* r) {
michael@0 1745 return new runnable_args_nm_7_ret<M, A0, A1, A2, A3, A4, A5, A6, R>
michael@0 1746 (m, a0, a1, a2, a3, a4, a5, a6, r);
michael@0 1747 }
michael@0 1748
michael@0 1749 // 7 arguments --
michael@0 1750 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6>
michael@0 1751 runnable_args_m_7<C, M, A0, A1, A2, A3, A4, A5, A6>* WrapRunnable(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6) {
michael@0 1752 return new runnable_args_m_7<C, M, A0, A1, A2, A3, A4, A5, A6>
michael@0 1753 (o, m, a0, a1, a2, a3, a4, a5, a6);
michael@0 1754 }
michael@0 1755
michael@0 1756 // 7 arguments --
michael@0 1757 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename R>
michael@0 1758 runnable_args_m_7_ret<C, M, A0, A1, A2, A3, A4, A5, A6, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, R* r) {
michael@0 1759 return new runnable_args_m_7_ret<C, M, A0, A1, A2, A3, A4, A5, A6, R>
michael@0 1760 (o, m, a0, a1, a2, a3, a4, a5, a6, r);
michael@0 1761 }
michael@0 1762
michael@0 1763 // 8 arguments --
michael@0 1764 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7>
michael@0 1765 runnable_args_nm_8<M, A0, A1, A2, A3, A4, A5, A6, A7>* WrapRunnableNM(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7) {
michael@0 1766 return new runnable_args_nm_8<M, A0, A1, A2, A3, A4, A5, A6, A7>
michael@0 1767 (m, a0, a1, a2, a3, a4, a5, a6, a7);
michael@0 1768 }
michael@0 1769
michael@0 1770 // 8 arguments --
michael@0 1771 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename R>
michael@0 1772 runnable_args_nm_8_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, R* r) {
michael@0 1773 return new runnable_args_nm_8_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, R>
michael@0 1774 (m, a0, a1, a2, a3, a4, a5, a6, a7, r);
michael@0 1775 }
michael@0 1776
michael@0 1777 // 8 arguments --
michael@0 1778 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7>
michael@0 1779 runnable_args_m_8<C, M, A0, A1, A2, A3, A4, A5, A6, A7>* WrapRunnable(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7) {
michael@0 1780 return new runnable_args_m_8<C, M, A0, A1, A2, A3, A4, A5, A6, A7>
michael@0 1781 (o, m, a0, a1, a2, a3, a4, a5, a6, a7);
michael@0 1782 }
michael@0 1783
michael@0 1784 // 8 arguments --
michael@0 1785 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename R>
michael@0 1786 runnable_args_m_8_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, R* r) {
michael@0 1787 return new runnable_args_m_8_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, R>
michael@0 1788 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, r);
michael@0 1789 }
michael@0 1790
michael@0 1791 // 9 arguments --
michael@0 1792 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8>
michael@0 1793 runnable_args_nm_9<M, A0, A1, A2, A3, A4, A5, A6, A7, A8>* WrapRunnableNM(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8) {
michael@0 1794 return new runnable_args_nm_9<M, A0, A1, A2, A3, A4, A5, A6, A7, A8>
michael@0 1795 (m, a0, a1, a2, a3, a4, a5, a6, a7, a8);
michael@0 1796 }
michael@0 1797
michael@0 1798 // 9 arguments --
michael@0 1799 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename R>
michael@0 1800 runnable_args_nm_9_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, R* r) {
michael@0 1801 return new runnable_args_nm_9_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, R>
michael@0 1802 (m, a0, a1, a2, a3, a4, a5, a6, a7, a8, r);
michael@0 1803 }
michael@0 1804
michael@0 1805 // 9 arguments --
michael@0 1806 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8>
michael@0 1807 runnable_args_m_9<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8>* WrapRunnable(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8) {
michael@0 1808 return new runnable_args_m_9<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8>
michael@0 1809 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, a8);
michael@0 1810 }
michael@0 1811
michael@0 1812 // 9 arguments --
michael@0 1813 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename R>
michael@0 1814 runnable_args_m_9_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, R* r) {
michael@0 1815 return new runnable_args_m_9_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, R>
michael@0 1816 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, a8, r);
michael@0 1817 }
michael@0 1818
michael@0 1819 // 10 arguments --
michael@0 1820 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9>
michael@0 1821 runnable_args_nm_10<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9>* WrapRunnableNM(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9) {
michael@0 1822 return new runnable_args_nm_10<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9>
michael@0 1823 (m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9);
michael@0 1824 }
michael@0 1825
michael@0 1826 // 10 arguments --
michael@0 1827 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename R>
michael@0 1828 runnable_args_nm_10_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, R* r) {
michael@0 1829 return new runnable_args_nm_10_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, R>
michael@0 1830 (m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, r);
michael@0 1831 }
michael@0 1832
michael@0 1833 // 10 arguments --
michael@0 1834 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9>
michael@0 1835 runnable_args_m_10<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9>* WrapRunnable(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9) {
michael@0 1836 return new runnable_args_m_10<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9>
michael@0 1837 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9);
michael@0 1838 }
michael@0 1839
michael@0 1840 // 10 arguments --
michael@0 1841 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename R>
michael@0 1842 runnable_args_m_10_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, R* r) {
michael@0 1843 return new runnable_args_m_10_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, R>
michael@0 1844 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, r);
michael@0 1845 }
michael@0 1846
michael@0 1847 // 11 arguments --
michael@0 1848 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10>
michael@0 1849 runnable_args_nm_11<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10>* WrapRunnableNM(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10) {
michael@0 1850 return new runnable_args_nm_11<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10>
michael@0 1851 (m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
michael@0 1852 }
michael@0 1853
michael@0 1854 // 11 arguments --
michael@0 1855 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename R>
michael@0 1856 runnable_args_nm_11_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, R* r) {
michael@0 1857 return new runnable_args_nm_11_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, R>
michael@0 1858 (m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, r);
michael@0 1859 }
michael@0 1860
michael@0 1861 // 11 arguments --
michael@0 1862 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10>
michael@0 1863 runnable_args_m_11<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10>* WrapRunnable(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10) {
michael@0 1864 return new runnable_args_m_11<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10>
michael@0 1865 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
michael@0 1866 }
michael@0 1867
michael@0 1868 // 11 arguments --
michael@0 1869 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename R>
michael@0 1870 runnable_args_m_11_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, R* r) {
michael@0 1871 return new runnable_args_m_11_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, R>
michael@0 1872 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, r);
michael@0 1873 }
michael@0 1874
michael@0 1875 // 12 arguments --
michael@0 1876 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11>
michael@0 1877 runnable_args_nm_12<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11>* WrapRunnableNM(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11) {
michael@0 1878 return new runnable_args_nm_12<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11>
michael@0 1879 (m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
michael@0 1880 }
michael@0 1881
michael@0 1882 // 12 arguments --
michael@0 1883 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename R>
michael@0 1884 runnable_args_nm_12_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, R* r) {
michael@0 1885 return new runnable_args_nm_12_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, R>
michael@0 1886 (m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, r);
michael@0 1887 }
michael@0 1888
michael@0 1889 // 12 arguments --
michael@0 1890 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11>
michael@0 1891 runnable_args_m_12<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11>* WrapRunnable(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11) {
michael@0 1892 return new runnable_args_m_12<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11>
michael@0 1893 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
michael@0 1894 }
michael@0 1895
michael@0 1896 // 12 arguments --
michael@0 1897 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename R>
michael@0 1898 runnable_args_m_12_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, R* r) {
michael@0 1899 return new runnable_args_m_12_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, R>
michael@0 1900 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, r);
michael@0 1901 }
michael@0 1902
michael@0 1903 // 13 arguments --
michael@0 1904 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12>
michael@0 1905 runnable_args_nm_13<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12>* WrapRunnableNM(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12) {
michael@0 1906 return new runnable_args_nm_13<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12>
michael@0 1907 (m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
michael@0 1908 }
michael@0 1909
michael@0 1910 // 13 arguments --
michael@0 1911 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename R>
michael@0 1912 runnable_args_nm_13_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, R* r) {
michael@0 1913 return new runnable_args_nm_13_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, R>
michael@0 1914 (m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, r);
michael@0 1915 }
michael@0 1916
michael@0 1917 // 13 arguments --
michael@0 1918 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12>
michael@0 1919 runnable_args_m_13<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12>* WrapRunnable(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12) {
michael@0 1920 return new runnable_args_m_13<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12>
michael@0 1921 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
michael@0 1922 }
michael@0 1923
michael@0 1924 // 13 arguments --
michael@0 1925 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename R>
michael@0 1926 runnable_args_m_13_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, R* r) {
michael@0 1927 return new runnable_args_m_13_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, R>
michael@0 1928 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, r);
michael@0 1929 }
michael@0 1930
michael@0 1931 // 14 arguments --
michael@0 1932 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13>
michael@0 1933 runnable_args_nm_14<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13>* WrapRunnableNM(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13) {
michael@0 1934 return new runnable_args_nm_14<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13>
michael@0 1935 (m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
michael@0 1936 }
michael@0 1937
michael@0 1938 // 14 arguments --
michael@0 1939 template<typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename R>
michael@0 1940 runnable_args_nm_14_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, R>* WrapRunnableNMRet(M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, R* r) {
michael@0 1941 return new runnable_args_nm_14_ret<M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, R>
michael@0 1942 (m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, r);
michael@0 1943 }
michael@0 1944
michael@0 1945 // 14 arguments --
michael@0 1946 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13>
michael@0 1947 runnable_args_m_14<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13>* WrapRunnable(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13) {
michael@0 1948 return new runnable_args_m_14<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13>
michael@0 1949 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
michael@0 1950 }
michael@0 1951
michael@0 1952 // 14 arguments --
michael@0 1953 template<typename C, typename M, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename R>
michael@0 1954 runnable_args_m_14_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, R>* WrapRunnableRet(C o, M m, A0 a0, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10, A11 a11, A12 a12, A13 a13, R* r) {
michael@0 1955 return new runnable_args_m_14_ret<C, M, A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, R>
michael@0 1956 (o, m, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, r);
michael@0 1957 }
michael@0 1958

mercurial