Bitcoin Core 29.99.0
P2P Digital Currency
Static Public Member Functions | List of all members
mp::ProxyMethodTraits< MethodParams, Require< decltype(ProxyMethod< MethodParams >::impl)> > Struct Template Reference

Specialization of above for proxy methods that have a ProxyMethod<InterfaceName::MethodNameParams>::impl pointer-to-method constant defined by generated code. More...

#include <proxy.h>

Inheritance diagram for mp::ProxyMethodTraits< MethodParams, Require< decltype(ProxyMethod< MethodParams >::impl)> >:
[legend]
Collaboration diagram for mp::ProxyMethodTraits< MethodParams, Require< decltype(ProxyMethod< MethodParams >::impl)> >:
[legend]

Static Public Member Functions

template<typename ServerContext , typename... Args>
static decltype(auto) invoke (ServerContext &server_context, Args &&... args)
 

Detailed Description

template<typename MethodParams>
struct mp::ProxyMethodTraits< MethodParams, Require< decltype(ProxyMethod< MethodParams >::impl)> >

Specialization of above for proxy methods that have a ProxyMethod<InterfaceName::MethodNameParams>::impl pointer-to-method constant defined by generated code.

This includes all functions defined in the capnp interface except any construct() or destroy() methods, that are assumed not to correspond to real member functions in the C++ class, and will use the fallback traits definition above. The generated code this specialization relies on looks like:

struct ProxyMethod<InterfaceName::MethodNameParams> { static constexpr auto impl = &ClassName::methodName; };

Definition at line 244 of file proxy.h.

Member Function Documentation

◆ invoke()

template<typename MethodParams >
template<typename ServerContext , typename... Args>
static decltype(auto) mp::ProxyMethodTraits< MethodParams, Require< decltype(ProxyMethod< MethodParams >::impl)> >::invoke ( ServerContext server_context,
Args &&...  args 
)
inlinestatic

Definition at line 248 of file proxy.h.


The documentation for this struct was generated from the following file: