| CppWAMP
    C++11 client library for the WAMP protocol | 
Wrapper around a call coroutine slot which automatically unpacks positional payload arguments. More...
#include <cppwamp/corounpacker.hpp>
| Public Types | |
| using | Slot = TSlot | 
| The function type to be wrapped. | |
| Public Member Functions | |
| CoroInvocationUnpacker (Slot slot) | |
| Constructor taking a callable target. | |
| Outcome | operator() (Invocation inv) const | 
| Spawns a new coroutine and executes the stored call slot.  More... | |
| Related Functions | |
| (Note that these are not member functions.) | |
| template<typename... TArgs, typename TSlot > | |
| CoroInvocationUnpacker< DecayedSlot< TSlot >, TArgs... > | unpackedCoroRpc (TSlot &&slot) | 
Wrapper around a call coroutine slot which automatically unpacks positional payload arguments.
The wamp::unpackedCoroRpc convenience function should be used to construct instances of CoroInvocationUnpacker.
| TSlot | Function type to be wrapped. Must have the signature void function(Invocation, TArgs..., boost::asio::yield_context). | 
| TArgs | List of static types the call slot expects following the Invocation parameter, and preceding the boost::asio::yield_context parameter. | 
| Outcome wamp::CoroInvocationUnpacker< S, A >::operator() | ( | Invocation | inv | ) | const | 
Spawns a new coroutine and executes the stored call slot.
The coroutine will be spawned using inv.executor(). The inv.args() positional arguments will be unpacked and passed to the stored call slot as additional parameters. 
| 
 | related | 
Converts an unpacked call slot into a regular slot than can be passed to Session::enroll.
| TArgs | List of static types the call slot expects following the Invocation parameter, and preceding the boost::asio::yield_contextparameter. | 
| TSlot | (deduced) Function type to be converted. Must have the signature Outcome function(Invocation, TArgs..., boost::asio::yield_context). |