|
typedef Return_ | Return |
|
typedef Receiver_ | Receiver |
|
typedef Return_(Receiver_::* | Signature) (A0, A1, A2) |
|
typedef Return_(Receiver_::* | Method) (typename Parameters::template Parameter< A0, 0 >::Type, typename Parameters::template Parameter< A1, 1 >::Type, typename Parameters::template Parameter< A2, 2 >::Type) |
|
|
| ApplyMethod (Method method) |
|
template<typename Passed > |
Return | apply (Receiver &receiver, Passed passed) |
|
template<typename Passed > |
void | observe (Passed passed) |
|
◆ ApplyMethod()
template<typename Parameters , typename Return_ , typename Receiver_ , typename A0 , typename A1 , typename A2 >
549 :
550 method(method) {}
◆ apply()
template<typename Parameters , typename Return_ , typename Receiver_ , typename A0 , typename A1 , typename A2 >
template<typename Passed >
557 {
558 return (receiver.*method)(
559 (typename Parameters::template Parameter<A0, 0>()).template yield<Passed>(passed),
560 (typename Parameters::template Parameter<A1, 1>()).template yield<Passed>(passed),
561 (typename Parameters::template Parameter<A2, 2>()).template yield<Passed>(passed));
562 }
◆ arity()
template<typename Parameters , typename Return_ , typename Receiver_ , typename A0 , typename A1 , typename A2 >
552 {
553 return 3;
554 }
◆ observe()
template<typename Parameters , typename Return_ , typename Receiver_ , typename A0 , typename A1 , typename A2 >
template<typename Passed >
565 {
566 (typename Parameters::template Parameter<A0, 0>()).template observe<Passed>(passed);
567 (typename Parameters::template Parameter<A1, 1>()).template observe<Passed>(passed);
568 (typename Parameters::template Parameter<A2, 2>()).template observe<Passed>(passed);
569 }
The documentation for this class was generated from the following file: