Bitcoin Core 29.99.0
P2P Digital Currency
Classes | Namespaces | Typedefs | Functions | Variables
proxy.h File Reference
#include <mp/util.h>
#include <array>
#include <functional>
#include <list>
#include <stddef.h>
#include <tuple>
#include <type_traits>
#include <utility>
Include dependency graph for proxy.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  mp::ProxyContext
 Context data associated with proxy client and server classes. More...
 
class  mp::ProxyClientBase< Interface_, Impl_ >
 Base class for generated ProxyClient classes that implement a C++ interface and forward calls to a capnp interface. More...
 
class  mp::ProxyClientCustom< Interface, Impl >
 Customizable (through template specialization) base class used in generated ProxyClient implementations from proxy-codegen.cpp. More...
 
struct  mp::ProxyServerBase< Interface_, Impl_ >
 Base class for generated ProxyServer classes that implement capnp server methods and forward calls to a wrapped c++ implementation class. More...
 
struct  mp::ProxyServerCustom< Interface, Impl >
 Customizable (through template specialization) base class which ProxyServer classes produced by generated code will inherit from. More...
 
struct  mp::FunctionTraits< _Result(_Class::*const)(_Params...)>
 Specialization of above extracting result and params types assuming the template argument is a pointer-to-method type, decltype(&ClassName::methodName) More...
 
struct  mp::ProxyMethodTraits< MethodParams, Enable >
 Traits class for a proxy method, providing the same Params/Result/Param/Fields described in the FunctionTraits class above, plus an additional invoke() method that calls the C++ method which is being proxied, forwarding any arguments. More...
 
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. More...
 
struct  mp::ProxyClientMethodTraits< MethodParams >
 Customizable (through template specialization) traits class used in generated ProxyClient implementations from proxy-codegen.cpp. More...
 
struct  mp::ProxyServerMethodTraits< MethodParams >
 Customizable (through template specialization) traits class used in generated ProxyServer implementations from proxy-codegen.cpp. More...
 
struct  mp::Accessor< Field, flags >
 Accessor type holding flags that determine how to access a message field. More...
 
class  mp::ProxyCallback< std::function< Result(Args...)> >
 Specialization of above to separate Result and Arg types. More...
 

Namespaces

namespace  mp
 Functions to serialize / deserialize common bitcoin types.
 

Typedefs

using mp::CleanupList = std::list< std::function< void()> >
 
using mp::CleanupIt = typename CleanupList::iterator
 

Functions

void mp::CleanupRun (CleanupList &fns)
 

Variables

static constexpr int mp::FIELD_IN = 1
 
static constexpr int mp::FIELD_OUT = 2
 
static constexpr int mp::FIELD_OPTIONAL = 4
 
static constexpr int mp::FIELD_REQUESTED = 8
 
static constexpr int mp::FIELD_BOXED = 16