@@ -251,30 +251,142 @@ class Event<void(ArgTs...)> {
251
251
/* * Create an event
252
252
* @see Event::Event
253
253
*/
254
- template <typename T, typename R, typename ... BoundArgTs >
255
- Event (EventQueue *q, T *obj, R(T::*method)(BoundArgTs... , ArgTs...), impl:: type_identity_t <BoundArgTs>... context_args ) :
256
- Event (q, mbed::callback(obj, method), context_args... ) { }
254
+ template <typename T, typename R, typename B0 >
255
+ Event (EventQueue *q, T *obj, R(T::*method)(B0 , ArgTs...), B0 b0 ) :
256
+ Event (q, mbed::callback(obj, method), b0 ) { }
257
257
258
258
/* * Create an event
259
259
* @see Event::Event
260
260
*/
261
- template <typename T, typename R, typename ... BoundArgTs >
262
- Event (EventQueue *q, const T *obj, R(T::*method)(BoundArgTs... , ArgTs...) const , impl:: type_identity_t <BoundArgTs>... context_args ) :
263
- Event (q, mbed::callback(obj, method), context_args... ) { }
261
+ template <typename T, typename R, typename B0 >
262
+ Event (EventQueue *q, const T *obj, R(T::*method)(B0 , ArgTs...) const , B0 b0 ) :
263
+ Event (q, mbed::callback(obj, method), b0 ) { }
264
264
265
265
/* * Create an event
266
266
* @see Event::Event
267
267
*/
268
- template <typename T, typename R, typename ... BoundArgTs >
269
- Event (EventQueue *q, volatile T *obj, R(T::*method)(BoundArgTs... , ArgTs...) volatile , impl:: type_identity_t <BoundArgTs>... context_args ) :
270
- Event (q, mbed::callback(obj, method), context_args... ) { }
268
+ template <typename T, typename R, typename B0 >
269
+ Event (EventQueue *q, volatile T *obj, R(T::*method)(B0 , ArgTs...) volatile , B0 b0 ) :
270
+ Event (q, mbed::callback(obj, method), b0 ) { }
271
271
272
272
/* * Create an event
273
273
* @see Event::Event
274
274
*/
275
- template <typename T, typename R, typename ... BoundArgTs>
276
- Event (EventQueue *q, const volatile T *obj, R(T::*method)(BoundArgTs..., ArgTs...) const volatile , impl::type_identity_t <BoundArgTs>... context_args) :
277
- Event (q, mbed::callback(obj, method), context_args...) { }
275
+ template <typename T, typename R, typename B0>
276
+ Event (EventQueue *q, const volatile T *obj, R(T::*method)(B0, ArgTs...) const volatile , B0 b0) :
277
+ Event (q, mbed::callback(obj, method), b0) { }
278
+
279
+ /* * Create an event
280
+ * @see Event::Event
281
+ */
282
+ template <typename T, typename R, typename B0, typename B1>
283
+ Event (EventQueue *q, T *obj, R(T::*method)(B0, B1, ArgTs...), B0 b0, B1 b1) :
284
+ Event (q, mbed::callback(obj, method), b0, b1) { }
285
+
286
+ /* * Create an event
287
+ * @see Event::Event
288
+ */
289
+ template <typename T, typename R, typename B0, typename B1>
290
+ Event (EventQueue *q, const T *obj, R(T::*method)(B0, B1, ArgTs...) const , B0 b0, B1 b1) :
291
+ Event (q, mbed::callback(obj, method), b0, b1) { }
292
+
293
+ /* * Create an event
294
+ * @see Event::Event
295
+ */
296
+ template <typename T, typename R, typename B0, typename B1>
297
+ Event (EventQueue *q, volatile T *obj, R(T::*method)(B0, B1, ArgTs...) volatile , B0 b0, B1 b1) :
298
+ Event (q, mbed::callback(obj, method), b0, b1) { }
299
+
300
+ /* * Create an event
301
+ * @see Event::Event
302
+ */
303
+ template <typename T, typename R, typename B0, typename B1>
304
+ Event (EventQueue *q, const volatile T *obj, R(T::*method)(B0, B1, ArgTs...) const volatile , B0 b0, B1 b1) :
305
+ Event (q, mbed::callback(obj, method), b0, b1) { }
306
+
307
+ /* * Create an event
308
+ * @see Event::Event
309
+ */
310
+ template <typename T, typename R, typename B0, typename B1, typename B2>
311
+ Event (EventQueue *q, T *obj, R(T::*method)(B0, B1, B2, ArgTs...), B0 b0, B1 b1, B2 b2) :
312
+ Event (q, mbed::callback(obj, method), b0, b1, b2) { }
313
+
314
+ /* * Create an event
315
+ * @see Event::Event
316
+ */
317
+ template <typename T, typename R, typename B0, typename B1, typename B2>
318
+ Event (EventQueue *q, const T *obj, R(T::*method)(B0, B1, B2, ArgTs...) const , B0 b0, B1 b1, B2 b2) :
319
+ Event (q, mbed::callback(obj, method), b0, b1, b2) { }
320
+
321
+ /* * Create an event
322
+ * @see Event::Event
323
+ */
324
+ template <typename T, typename R, typename B0, typename B1, typename B2>
325
+ Event (EventQueue *q, volatile T *obj, R(T::*method)(B0, B1, B2, ArgTs...) volatile , B0 b0, B1 b1, B2 b2) :
326
+ Event (q, mbed::callback(obj, method), b0, b1, b2) { }
327
+
328
+ /* * Create an event
329
+ * @see Event::Event
330
+ */
331
+ template <typename T, typename R, typename B0, typename B1, typename B2>
332
+ Event (EventQueue *q, const volatile T *obj, R(T::*method)(B0, B1, B2, ArgTs...) const volatile , B0 b0, B1 b1, B2 b2) :
333
+ Event (q, mbed::callback(obj, method), b0, b1, b2) { }
334
+
335
+ /* * Create an event
336
+ * @see Event::Event
337
+ */
338
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3>
339
+ Event (EventQueue *q, T *obj, R(T::*method)(B0, B1, B2, B3, ArgTs...), B0 b0, B1 b1, B2 b2, B3 b3) :
340
+ Event (q, mbed::callback(obj, method), b0, b1, b2, b3) { }
341
+
342
+ /* * Create an event
343
+ * @see Event::Event
344
+ */
345
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3>
346
+ Event (EventQueue *q, const T *obj, R(T::*method)(B0, B1, B2, B3, ArgTs...) const , B0 b0, B1 b1, B2 b2, B3 b3) :
347
+ Event (q, mbed::callback(obj, method), b0, b1, b2, b3) { }
348
+
349
+ /* * Create an event
350
+ * @see Event::Event
351
+ */
352
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3>
353
+ Event (EventQueue *q, volatile T *obj, R(T::*method)(B0, B1, B2, B3, ArgTs...) volatile , B0 b0, B1 b1, B2 b2, B3 b3) :
354
+ Event (q, mbed::callback(obj, method), b0, b1, b2, b3) { }
355
+
356
+ /* * Create an event
357
+ * @see Event::Event
358
+ */
359
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3>
360
+ Event (EventQueue *q, const volatile T *obj, R(T::*method)(B0, B1, B2, B3, ArgTs...) const volatile , B0 b0, B1 b1, B2 b2, B3 b3) :
361
+ Event (q, mbed::callback(obj, method), b0, b1, b2, b3) { }
362
+
363
+ /* * Create an event
364
+ * @see Event::Event
365
+ */
366
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3, typename B4>
367
+ Event (EventQueue *q, T *obj, R(T::*method)(B0, B1, B2, B3, B4, ArgTs...), B0 b0, B1 b1, B2 b2, B3 b3, B4 b4) :
368
+ Event (q, mbed::callback(obj, method), b0, b1, b2, b3, b4) { }
369
+
370
+ /* * Create an event
371
+ * @see Event::Event
372
+ */
373
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3, typename B4>
374
+ Event (EventQueue *q, const T *obj, R(T::*method)(B0, B1, B2, B3, B4, ArgTs...) const , B0 b0, B1 b1, B2 b2, B3 b3, B4 b4) :
375
+ Event (q, mbed::callback(obj, method), b0, b1, b2, b3, b4) { }
376
+
377
+ /* * Create an event
378
+ * @see Event::Event
379
+ */
380
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3, typename B4>
381
+ Event (EventQueue *q, volatile T *obj, R(T::*method)(B0, B1, B2, B3, B4, ArgTs...) volatile , B0 b0, B1 b1, B2 b2, B3 b3, B4 b4) :
382
+ Event (q, mbed::callback(obj, method), b0, b1, b2, b3, b4) { }
383
+
384
+ /* * Create an event
385
+ * @see Event::Event
386
+ */
387
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3, typename B4>
388
+ Event (EventQueue *q, const volatile T *obj, R(T::*method)(B0, B1, B2, B3, B4, ArgTs...) const volatile , B0 b0, B1 b1, B2 b2, B3 b3, B4 b4) :
389
+ Event (q, mbed::callback(obj, method), b0, b1, b2, b3, b4) { }
278
390
};
279
391
280
392
@@ -283,40 +395,220 @@ class Event<void(ArgTs...)> {
283
395
284
396
// Convenience functions declared here to avoid cyclic
285
397
// dependency between Event and EventQueue
286
- template <typename R, typename ... BoundArgTs, typename ... ArgTs>
287
- Event<void (ArgTs...)> EventQueue::event (R(*func)(BoundArgTs..., ArgTs...), impl::type_identity_t<BoundArgTs>... context_args)
398
+ template <typename R, typename ... ArgTs>
399
+ Event<void (ArgTs...)> EventQueue::event (R(*func)(ArgTs...))
400
+ {
401
+ return Event<void (ArgTs...)>(this , func);
402
+ }
403
+
404
+ template <typename T, typename R, typename ... ArgTs>
405
+ Event<void (ArgTs...)> EventQueue::event (T *obj, R(T::*method)(ArgTs...))
406
+ {
407
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method));
408
+ }
409
+
410
+ template <typename T, typename R, typename ... ArgTs>
411
+ Event<void (ArgTs...)> EventQueue::event (const T *obj, R(T::*method)(ArgTs...) const )
412
+ {
413
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method));
414
+ }
415
+
416
+ template <typename T, typename R, typename ... ArgTs>
417
+ Event<void (ArgTs...)> EventQueue::event (volatile T *obj, R(T::*method)(ArgTs...) volatile)
418
+ {
419
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method));
420
+ }
421
+
422
+ template <typename T, typename R, typename ... ArgTs>
423
+ Event<void (ArgTs...)> EventQueue::event (const volatile T *obj, R(T::*method)(ArgTs...) const volatile)
424
+ {
425
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method));
426
+ }
427
+
428
+ template <typename R, typename ... ArgTs>
429
+ Event<void (ArgTs...)> EventQueue::event (mbed::Callback<R(ArgTs...)> cb)
430
+ {
431
+ return Event<void (ArgTs...)>(this , cb);
432
+ }
433
+
434
+ template <typename R, typename B0, typename C0, typename ... ArgTs>
435
+ Event<void (ArgTs...)> EventQueue::event (R(*func)(B0, ArgTs...), C0 c0)
436
+ {
437
+ return Event<void (ArgTs...)>(this , func, c0);
438
+ }
439
+
440
+ template <typename T, typename R, typename B0, typename C0, typename ... ArgTs>
441
+ Event<void (ArgTs...)> EventQueue::event (T *obj, R(T::*method)(B0, ArgTs...), C0 c0)
442
+ {
443
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0);
444
+ }
445
+
446
+ template <typename T, typename R, typename B0, typename C0, typename ... ArgTs>
447
+ Event<void (ArgTs...)> EventQueue::event (const T *obj, R(T::*method)(B0, ArgTs...) const , C0 c0)
448
+ {
449
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0);
450
+ }
451
+
452
+ template <typename T, typename R, typename B0, typename C0, typename ... ArgTs>
453
+ Event<void (ArgTs...)> EventQueue::event (volatile T *obj, R(T::*method)(B0, ArgTs...) volatile, C0 c0)
454
+ {
455
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0);
456
+ }
457
+
458
+ template <typename T, typename R, typename B0, typename C0, typename ... ArgTs>
459
+ Event<void (ArgTs...)> EventQueue::event (const volatile T *obj, R(T::*method)(B0, ArgTs...) const volatile, C0 c0)
460
+ {
461
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0);
462
+ }
463
+
464
+ template <typename R, typename B0, typename C0, typename ... ArgTs>
465
+ Event<void (ArgTs...)> EventQueue::event (mbed::Callback<R(B0, ArgTs...)> cb, C0 c0)
466
+ {
467
+ return Event<void (ArgTs...)>(this , cb, c0);
468
+ }
469
+
470
+ template <typename R, typename B0, typename B1, typename C0, typename C1, typename ... ArgTs>
471
+ Event<void (ArgTs...)> EventQueue::event (R(*func)(B0, B1, ArgTs...), C0 c0, C1 c1)
472
+ {
473
+ return Event<void (ArgTs...)>(this , func, c0, c1);
474
+ }
475
+
476
+ template <typename T, typename R, typename B0, typename B1, typename C0, typename C1, typename ... ArgTs>
477
+ Event<void (ArgTs...)> EventQueue::event (T *obj, R(T::*method)(B0, B1, ArgTs...), C0 c0, C1 c1)
478
+ {
479
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1);
480
+ }
481
+
482
+ template <typename T, typename R, typename B0, typename B1, typename C0, typename C1, typename ... ArgTs>
483
+ Event<void (ArgTs...)> EventQueue::event (const T *obj, R(T::*method)(B0, B1, ArgTs...) const , C0 c0, C1 c1)
484
+ {
485
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1);
486
+ }
487
+
488
+ template <typename T, typename R, typename B0, typename B1, typename C0, typename C1, typename ... ArgTs>
489
+ Event<void (ArgTs...)> EventQueue::event (volatile T *obj, R(T::*method)(B0, B1, ArgTs...) volatile, C0 c0, C1 c1)
490
+ {
491
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1);
492
+ }
493
+
494
+ template <typename T, typename R, typename B0, typename B1, typename C0, typename C1, typename ... ArgTs>
495
+ Event<void (ArgTs...)> EventQueue::event (const volatile T *obj, R(T::*method)(B0, B1, ArgTs...) const volatile, C0 c0, C1 c1)
496
+ {
497
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1);
498
+ }
499
+
500
+ template <typename R, typename B0, typename B1, typename C0, typename C1, typename ... ArgTs>
501
+ Event<void (ArgTs...)> EventQueue::event (mbed::Callback<R(B0, B1, ArgTs...)> cb, C0 c0, C1 c1)
502
+ {
503
+ return Event<void (ArgTs...)>(this , cb, c0, c1);
504
+ }
505
+
506
+ template <typename R, typename B0, typename B1, typename B2, typename C0, typename C1, typename C2, typename ... ArgTs>
507
+ Event<void (ArgTs...)> EventQueue::event (R(*func)(B0, B1, B2, ArgTs...), C0 c0, C1 c1, C2 c2)
508
+ {
509
+ return Event<void (ArgTs...)>(this , func, c0, c1, c2);
510
+ }
511
+
512
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename C0, typename C1, typename C2, typename ... ArgTs>
513
+ Event<void (ArgTs...)> EventQueue::event (T *obj, R(T::*method)(B0, B1, B2, ArgTs...), C0 c0, C1 c1, C2 c2)
514
+ {
515
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1, c2);
516
+ }
517
+
518
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename C0, typename C1, typename C2, typename ... ArgTs>
519
+ Event<void (ArgTs...)> EventQueue::event (const T *obj, R(T::*method)(B0, B1, B2, ArgTs...) const , C0 c0, C1 c1, C2 c2)
520
+ {
521
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1, c2);
522
+ }
523
+
524
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename C0, typename C1, typename C2, typename ... ArgTs>
525
+ Event<void (ArgTs...)> EventQueue::event (volatile T *obj, R(T::*method)(B0, B1, B2, ArgTs...) volatile, C0 c0, C1 c1, C2 c2)
526
+ {
527
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1, c2);
528
+ }
529
+
530
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename C0, typename C1, typename C2, typename ... ArgTs>
531
+ Event<void (ArgTs...)> EventQueue::event (const volatile T *obj, R(T::*method)(B0, B1, B2, ArgTs...) const volatile, C0 c0, C1 c1, C2 c2)
532
+ {
533
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1, c2);
534
+ }
535
+
536
+ template <typename R, typename B0, typename B1, typename B2, typename C0, typename C1, typename C2, typename ... ArgTs>
537
+ Event<void (ArgTs...)> EventQueue::event (mbed::Callback<R(B0, B1, B2, ArgTs...)> cb, C0 c0, C1 c1, C2 c2)
538
+ {
539
+ return Event<void (ArgTs...)>(this , cb, c0, c1, c2);
540
+ }
541
+
542
+ template <typename R, typename B0, typename B1, typename B2, typename B3, typename C0, typename C1, typename C2, typename C3, typename ... ArgTs>
543
+ Event<void (ArgTs...)> EventQueue::event (R(*func)(B0, B1, B2, B3, ArgTs...), C0 c0, C1 c1, C2 c2, C3 c3)
544
+ {
545
+ return Event<void (ArgTs...)>(this , func, c0, c1, c2, c3);
546
+ }
547
+
548
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3, typename C0, typename C1, typename C2, typename C3, typename ... ArgTs>
549
+ Event<void (ArgTs...)> EventQueue::event (T *obj, R(T::*method)(B0, B1, B2, B3, ArgTs...), C0 c0, C1 c1, C2 c2, C3 c3)
550
+ {
551
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1, c2, c3);
552
+ }
553
+
554
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3, typename C0, typename C1, typename C2, typename C3, typename ... ArgTs>
555
+ Event<void (ArgTs...)> EventQueue::event (const T *obj, R(T::*method)(B0, B1, B2, B3, ArgTs...) const , C0 c0, C1 c1, C2 c2, C3 c3)
556
+ {
557
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1, c2, c3);
558
+ }
559
+
560
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3, typename C0, typename C1, typename C2, typename C3, typename ... ArgTs>
561
+ Event<void (ArgTs...)> EventQueue::event (volatile T *obj, R(T::*method)(B0, B1, B2, B3, ArgTs...) volatile, C0 c0, C1 c1, C2 c2, C3 c3)
562
+ {
563
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1, c2, c3);
564
+ }
565
+
566
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3, typename C0, typename C1, typename C2, typename C3, typename ... ArgTs>
567
+ Event<void (ArgTs...)> EventQueue::event (const volatile T *obj, R(T::*method)(B0, B1, B2, B3, ArgTs...) const volatile, C0 c0, C1 c1, C2 c2, C3 c3)
568
+ {
569
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1, c2, c3);
570
+ }
571
+
572
+ template <typename R, typename B0, typename B1, typename B2, typename B3, typename C0, typename C1, typename C2, typename C3, typename ... ArgTs>
573
+ Event<void (ArgTs...)> EventQueue::event (mbed::Callback<R(B0, B1, B2, B3, ArgTs...)> cb, C0 c0, C1 c1, C2 c2, C3 c3)
574
+ {
575
+ return Event<void (ArgTs...)>(this , cb, c0, c1, c2, c3);
576
+ }
577
+
578
+ template <typename R, typename B0, typename B1, typename B2, typename B3, typename B4, typename C0, typename C1, typename C2, typename C3, typename C4, typename ... ArgTs>
579
+ Event<void (ArgTs...)> EventQueue::event (R(*func)(B0, B1, B2, B3, B4, ArgTs...), C0 c0, C1 c1, C2 c2, C3 c3, C4 c4)
288
580
{
289
- return Event<void (ArgTs...)>(this , func, context_args... );
581
+ return Event<void (ArgTs...)>(this , func, c0, c1, c2, c3, c4 );
290
582
}
291
583
292
- template <typename T, typename R, typename ... BoundArgTs , typename ... ArgTs>
293
- Event<void (ArgTs...)> EventQueue::event (T *obj, R(T::*method)(BoundArgTs..., ArgTs...), impl::type_identity_t<BoundArgTs>... context_args )
584
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3, typename B4, typename C0, typename C1, typename C2, typename C3, typename C4 , typename ... ArgTs>
585
+ Event<void (ArgTs...)> EventQueue::event (T *obj, R(T::*method)(B0, B1, B2, B3, B4, ArgTs...), C0 c0, C1 c1, C2 c2, C3 c3, C4 c4 )
294
586
{
295
- return Event<void (ArgTs...)>(this , mbed::callback (obj, method), context_args... );
587
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1, c2, c3, c4 );
296
588
}
297
589
298
- template <typename T, typename R, typename ... BoundArgTs , typename ... ArgTs>
299
- Event<void (ArgTs...)> EventQueue::event (const T *obj, R(T::*method)(BoundArgTs..., ArgTs...) const , impl::type_identity_t<BoundArgTs>... context_args )
590
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3, typename B4, typename C0, typename C1, typename C2, typename C3, typename C4 , typename ... ArgTs>
591
+ Event<void (ArgTs...)> EventQueue::event (const T *obj, R(T::*method)(B0, B1, B2, B3, B4, ArgTs...) const , C0 c0, C1 c1, C2 c2, C3 c3, C4 c4 )
300
592
{
301
- return Event<void (ArgTs...)>(this , mbed::callback (obj, method), context_args... );
593
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1, c2, c3, c4 );
302
594
}
303
595
304
- template <typename T, typename R, typename ... BoundArgTs , typename ... ArgTs>
305
- Event<void (ArgTs...)> EventQueue::event (volatile T *obj, R(T::*method)(BoundArgTs..., ArgTs...) volatile, impl::type_identity_t<BoundArgTs>... context_args )
596
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3, typename B4, typename C0, typename C1, typename C2, typename C3, typename C4 , typename ... ArgTs>
597
+ Event<void (ArgTs...)> EventQueue::event (volatile T *obj, R(T::*method)(B0, B1, B2, B3, B4, ArgTs...) volatile, C0 c0, C1 c1, C2 c2, C3 c3, C4 c4 )
306
598
{
307
- return Event<void (ArgTs...)>(this , mbed::callback (obj, method), context_args... );
599
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1, c2, c3, c4 );
308
600
}
309
601
310
- template <typename T, typename R, typename ... BoundArgTs , typename ... ArgTs>
311
- Event<void (ArgTs...)> EventQueue::event (const volatile T *obj, R(T::*method)(BoundArgTs..., ArgTs...) const volatile, impl::type_identity_t<BoundArgTs>... context_args )
602
+ template <typename T, typename R, typename B0, typename B1, typename B2, typename B3, typename B4, typename C0, typename C1, typename C2, typename C3, typename C4 , typename ... ArgTs>
603
+ Event<void (ArgTs...)> EventQueue::event (const volatile T *obj, R(T::*method)(B0, B1, B2, B3, B4, ArgTs...) const volatile, C0 c0, C1 c1, C2 c2, C3 c3, C4 c4 )
312
604
{
313
- return Event<void (ArgTs...)>(this , mbed::callback (obj, method), context_args... );
605
+ return Event<void (ArgTs...)>(this , mbed::callback (obj, method), c0, c1, c2, c3, c4 );
314
606
}
315
607
316
- template <typename R, typename ... BoundArgTs , typename ... ArgTs>
317
- Event<void (ArgTs...)> EventQueue::event (mbed::Callback<R(BoundArgTs..., ArgTs...)> cb, impl::type_identity_t<BoundArgTs>... context_args )
608
+ template <typename R, typename B0, typename B1, typename B2, typename B3, typename B4, typename C0, typename C1, typename C2, typename C3, typename C4 , typename ... ArgTs>
609
+ Event<void (ArgTs...)> EventQueue::event (mbed::Callback<R(B0, B1, B2, B3, B4, ArgTs...)> cb, C0 c0, C1 c1, C2 c2, C3 c3, C4 c4 )
318
610
{
319
- return Event<void (ArgTs...)>(this , cb, context_args... );
611
+ return Event<void (ArgTs...)>(this , cb, c0, c1, c2, c3, c4 );
320
612
}
321
613
}
322
614
0 commit comments