/tmp/bitcoin/src/ipc/libmultiprocess/include/mp/proxy-types.h
Line | Count | Source |
1 | | // Copyright (c) The Bitcoin Core developers |
2 | | // Distributed under the MIT software license, see the accompanying |
3 | | // file COPYING or http://www.opensource.org/licenses/mit-license.php. |
4 | | |
5 | | #ifndef MP_PROXY_TYPES_H |
6 | | #define MP_PROXY_TYPES_H |
7 | | |
8 | | #include <mp/proxy-io.h> |
9 | | |
10 | | #include <exception> |
11 | | #include <optional> |
12 | | #include <set> |
13 | | #include <typeindex> |
14 | | #include <vector> |
15 | | |
16 | | namespace mp { |
17 | | |
18 | | template <typename Value> |
19 | | class ValueField |
20 | | { |
21 | | public: |
22 | 0 | ValueField(Value& value) : m_value(value) {}Unexecuted instantiation: mp::ValueField<long>::ValueField(long&) Unexecuted instantiation: mp::ValueField<capnp::Data::Reader>::ValueField(capnp::Data::Reader&) |
23 | | ValueField(Value&& value) : m_value(value) {} |
24 | | Value& m_value; |
25 | | |
26 | | const Value& get() const { return m_value; } |
27 | 0 | Value& get() { return m_value; }Unexecuted instantiation: mp::ValueField<long>::get() Unexecuted instantiation: mp::ValueField<capnp::Data::Reader>::get() |
28 | | Value& init() { return m_value; } |
29 | 0 | bool has() const { return true; } |
30 | | }; |
31 | | |
32 | | template <typename Accessor, typename Struct> |
33 | | struct StructField |
34 | | { |
35 | | template <typename S> |
36 | 357 | StructField(S& struct_) : m_struct(struct_) |
37 | 357 | { |
38 | 357 | } mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>::StructField<capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>(capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>::StructField<capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>(capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>::StructField<capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>(capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Response<gen::FooInterface::AddResults>>::StructField<capnp::Response<gen::FooInterface::AddResults>>(capnp::Response<gen::FooInterface::AddResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Response<gen::FooInterface::AddResults>>::StructField<capnp::Response<gen::FooInterface::AddResults>>(capnp::Response<gen::FooInterface::AddResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, capnp::Response<gen::FooInterface::AddResults>>::StructField<capnp::Response<gen::FooInterface::AddResults>>(capnp::Response<gen::FooInterface::AddResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>::StructField<capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>(capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>::StructField<capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>(capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassOutPointResults>>::StructField<capnp::Response<gen::FooInterface::PassOutPointResults>>(capnp::Response<gen::FooInterface::PassOutPointResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassOutPointResults>>::StructField<capnp::Response<gen::FooInterface::PassOutPointResults>>(capnp::Response<gen::FooInterface::PassOutPointResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>::StructField<capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>(capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>::StructField<capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>(capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassUniValueResults>>::StructField<capnp::Response<gen::FooInterface::PassUniValueResults>>(capnp::Response<gen::FooInterface::PassUniValueResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassUniValueResults>>::StructField<capnp::Response<gen::FooInterface::PassUniValueResults>>(capnp::Response<gen::FooInterface::PassUniValueResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>::StructField<capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>(capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>::StructField<capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>(capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassTransactionResults>>::StructField<capnp::Response<gen::FooInterface::PassTransactionResults>>(capnp::Response<gen::FooInterface::PassTransactionResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>::StructField<capnp::Response<gen::FooInterface::PassTransactionResults>>(capnp::Response<gen::FooInterface::PassTransactionResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>::StructField<capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>(capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>::StructField<capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>(capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassVectorCharResults>>::StructField<capnp::Response<gen::FooInterface::PassVectorCharResults>>(capnp::Response<gen::FooInterface::PassVectorCharResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassVectorCharResults>>::StructField<capnp::Response<gen::FooInterface::PassVectorCharResults>>(capnp::Response<gen::FooInterface::PassVectorCharResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>::StructField<capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>(capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>::StructField<capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>(capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&) Line | Count | Source | 36 | 2 | StructField(S& struct_) : m_struct(struct_) | 37 | 2 | { | 38 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassScriptResults>>::StructField<capnp::Response<gen::FooInterface::PassScriptResults>>(capnp::Response<gen::FooInterface::PassScriptResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassScriptResults>>::StructField<capnp::Response<gen::FooInterface::PassScriptResults>>(capnp::Response<gen::FooInterface::PassScriptResults>&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, gen::FooInterface::AddParams::Reader const>::StructField<gen::FooInterface::AddParams::Reader const>(gen::FooInterface::AddParams::Reader const&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, gen::FooInterface::AddParams::Reader const>::StructField<gen::FooInterface::AddParams::Reader const>(gen::FooInterface::AddParams::Reader const&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, gen::FooInterface::AddResults::Builder>::StructField<gen::FooInterface::AddResults::Builder>(gen::FooInterface::AddResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, gen::FooInterface::AddResults::Builder>::StructField<gen::FooInterface::AddResults::Builder>(gen::FooInterface::AddResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, gen::FooInterface::AddResults::Builder>::StructField<gen::FooInterface::AddResults::Builder>(gen::FooInterface::AddResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassOutPointParams::Reader const>::StructField<gen::FooInterface::PassOutPointParams::Reader const>(gen::FooInterface::PassOutPointParams::Reader const&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassOutPointResults::Builder>::StructField<gen::FooInterface::PassOutPointResults::Builder>(gen::FooInterface::PassOutPointResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassOutPointResults::Builder>::StructField<gen::FooInterface::PassOutPointResults::Builder>(gen::FooInterface::PassOutPointResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassUniValueParams::Reader const>::StructField<gen::FooInterface::PassUniValueParams::Reader const>(gen::FooInterface::PassUniValueParams::Reader const&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassUniValueResults::Builder>::StructField<gen::FooInterface::PassUniValueResults::Builder>(gen::FooInterface::PassUniValueResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassUniValueResults::Builder>::StructField<gen::FooInterface::PassUniValueResults::Builder>(gen::FooInterface::PassUniValueResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>::StructField<gen::FooInterface::PassTransactionParams::Reader const>(gen::FooInterface::PassTransactionParams::Reader const&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassTransactionResults::Builder>::StructField<gen::FooInterface::PassTransactionResults::Builder>(gen::FooInterface::PassTransactionResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionResults::Builder>::StructField<gen::FooInterface::PassTransactionResults::Builder>(gen::FooInterface::PassTransactionResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassVectorCharParams::Reader const>::StructField<gen::FooInterface::PassVectorCharParams::Reader const>(gen::FooInterface::PassVectorCharParams::Reader const&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassVectorCharResults::Builder>::StructField<gen::FooInterface::PassVectorCharResults::Builder>(gen::FooInterface::PassVectorCharResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassVectorCharResults::Builder>::StructField<gen::FooInterface::PassVectorCharResults::Builder>(gen::FooInterface::PassVectorCharResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassScriptParams::Reader const>::StructField<gen::FooInterface::PassScriptParams::Reader const>(gen::FooInterface::PassScriptParams::Reader const&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassScriptResults::Builder>::StructField<gen::FooInterface::PassScriptResults::Builder>(gen::FooInterface::PassScriptResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassScriptResults::Builder>::StructField<gen::FooInterface::PassScriptResults::Builder>(gen::FooInterface::PassScriptResults::Builder&) Line | Count | Source | 36 | 1 | StructField(S& struct_) : m_struct(struct_) | 37 | 1 | { | 38 | 1 | } |
mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>::StructField<capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>(capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&) Line | Count | Source | 36 | 20 | StructField(S& struct_) : m_struct(struct_) | 37 | 20 | { | 38 | 20 | } |
mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Response<ipc::capnp::messages::Init::ConstructResults>>::StructField<capnp::Response<ipc::capnp::messages::Init::ConstructResults>>(capnp::Response<ipc::capnp::messages::Init::ConstructResults>&) Line | Count | Source | 36 | 10 | StructField(S& struct_) : m_struct(struct_) | 37 | 10 | { | 38 | 10 | } |
mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>::StructField<capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>(capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&) Line | Count | Source | 36 | 12 | StructField(S& struct_) : m_struct(struct_) | 37 | 12 | { | 38 | 12 | } |
mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>::StructField<capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>(capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&) Line | Count | Source | 36 | 12 | StructField(S& struct_) : m_struct(struct_) | 37 | 12 | { | 38 | 12 | } |
mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>::StructField<capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>(capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&) Line | Count | Source | 36 | 6 | StructField(S& struct_) : m_struct(struct_) | 37 | 6 | { | 38 | 6 | } |
mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>::StructField<capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>(capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&) Line | Count | Source | 36 | 6 | StructField(S& struct_) : m_struct(struct_) | 37 | 6 | { | 38 | 6 | } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>::StructField<capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>(capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>::StructField<capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>(capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>::StructField<capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>(capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>::StructField<capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>(capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&) mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>::StructField<capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>(capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&) Line | Count | Source | 36 | 8 | StructField(S& struct_) : m_struct(struct_) | 37 | 8 | { | 38 | 8 | } |
mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>::StructField<capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>(capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&) Line | Count | Source | 36 | 8 | StructField(S& struct_) : m_struct(struct_) | 37 | 8 | { | 38 | 8 | } |
mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>::StructField<capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>(capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>::StructField<capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>(capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>::StructField<capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>(capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&) Line | Count | Source | 36 | 12 | StructField(S& struct_) : m_struct(struct_) | 37 | 12 | { | 38 | 12 | } |
mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>>::StructField<capnp::Response<ipc::capnp::messages::Echo::DestroyResults>>(capnp::Response<ipc::capnp::messages::Echo::DestroyResults>&) Line | Count | Source | 36 | 6 | StructField(S& struct_) : m_struct(struct_) | 37 | 6 | { | 38 | 6 | } |
mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>::StructField<capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>(capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&) Line | Count | Source | 36 | 12 | StructField(S& struct_) : m_struct(struct_) | 37 | 12 | { | 38 | 12 | } |
mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>::StructField<capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>(capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&) Line | Count | Source | 36 | 12 | StructField(S& struct_) : m_struct(struct_) | 37 | 12 | { | 38 | 12 | } |
mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>::StructField<capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>(capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&) Line | Count | Source | 36 | 12 | StructField(S& struct_) : m_struct(struct_) | 37 | 12 | { | 38 | 12 | } |
mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Echo::EchoResults>>::StructField<capnp::Response<ipc::capnp::messages::Echo::EchoResults>>(capnp::Response<ipc::capnp::messages::Echo::EchoResults>&) Line | Count | Source | 36 | 6 | StructField(S& struct_) : m_struct(struct_) | 37 | 6 | { | 38 | 6 | } |
mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Response<ipc::capnp::messages::Echo::EchoResults>>::StructField<capnp::Response<ipc::capnp::messages::Echo::EchoResults>>(capnp::Response<ipc::capnp::messages::Echo::EchoResults>&) Line | Count | Source | 36 | 6 | StructField(S& struct_) : m_struct(struct_) | 37 | 6 | { | 38 | 6 | } |
mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Echo::EchoResults>>::StructField<capnp::Response<ipc::capnp::messages::Echo::EchoResults>>(capnp::Response<ipc::capnp::messages::Echo::EchoResults>&) Line | Count | Source | 36 | 6 | StructField(S& struct_) : m_struct(struct_) | 37 | 6 | { | 38 | 6 | } |
mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, ipc::capnp::messages::Init::ConstructParams::Reader const>::StructField<ipc::capnp::messages::Init::ConstructParams::Reader const>(ipc::capnp::messages::Init::ConstructParams::Reader const&) Line | Count | Source | 36 | 10 | StructField(S& struct_) : m_struct(struct_) | 37 | 10 | { | 38 | 10 | } |
mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, ipc::capnp::messages::Init::ConstructResults::Builder>::StructField<ipc::capnp::messages::Init::ConstructResults::Builder>(ipc::capnp::messages::Init::ConstructResults::Builder&) Line | Count | Source | 36 | 10 | StructField(S& struct_) : m_struct(struct_) | 37 | 10 | { | 38 | 10 | } |
mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeEchoResults::Builder>::StructField<ipc::capnp::messages::Init::MakeEchoResults::Builder>(ipc::capnp::messages::Init::MakeEchoResults::Builder&) Line | Count | Source | 36 | 6 | StructField(S& struct_) : m_struct(struct_) | 37 | 6 | { | 38 | 6 | } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeMiningResults::Builder>::StructField<ipc::capnp::messages::Init::MakeMiningResults::Builder>(ipc::capnp::messages::Init::MakeMiningResults::Builder&) mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeRpcResults::Builder>::StructField<ipc::capnp::messages::Init::MakeRpcResults::Builder>(ipc::capnp::messages::Init::MakeRpcResults::Builder&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>(capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>(capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>(capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>(capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>(capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>(capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>(capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>(capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>(capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>(capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>(capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::common_fields::Hash, 19>, ipc::capnp::messages::BlockRef::Reader const>::StructField<ipc::capnp::messages::BlockRef::Reader const>(ipc::capnp::messages::BlockRef::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::common_fields::Height, 3>, ipc::capnp::messages::BlockRef::Reader const>::StructField<ipc::capnp::messages::BlockRef::Reader const>(ipc::capnp::messages::BlockRef::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>(capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>(capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>(capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>(capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>(capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>(capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>(capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>(capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>(capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>(capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>(capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::UseMempool, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>::StructField<ipc::capnp::messages::BlockCreateOptions::Builder>(ipc::capnp::messages::BlockCreateOptions::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>::StructField<ipc::capnp::messages::BlockCreateOptions::Builder>(ipc::capnp::messages::BlockCreateOptions::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CoinbaseOutputMaxAdditionalSigops, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>::StructField<ipc::capnp::messages::BlockCreateOptions::Builder>(ipc::capnp::messages::BlockCreateOptions::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>(capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>(capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>(capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>(capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>(capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>(capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>(capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>(capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>(capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CheckMerkleRoot, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>::StructField<ipc::capnp::messages::BlockCheckOptions::Builder>(ipc::capnp::messages::BlockCheckOptions::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CheckPow, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>::StructField<ipc::capnp::messages::BlockCheckOptions::Builder>(ipc::capnp::messages::BlockCheckOptions::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>(capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>(capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>::StructField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>(capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>(capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>(capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>(capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>(capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>(capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>::StructField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>(capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Version, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>::StructField<ipc::capnp::messages::CoinbaseTx::Reader const>(ipc::capnp::messages::CoinbaseTx::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Sequence, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>::StructField<ipc::capnp::messages::CoinbaseTx::Reader const>(ipc::capnp::messages::CoinbaseTx::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::ScriptSigPrefix, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>::StructField<ipc::capnp::messages::CoinbaseTx::Reader const>(ipc::capnp::messages::CoinbaseTx::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>::StructField<ipc::capnp::messages::CoinbaseTx::Reader const>(ipc::capnp::messages::CoinbaseTx::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::BlockRewardRemaining, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>::StructField<ipc::capnp::messages::CoinbaseTx::Reader const>(ipc::capnp::messages::CoinbaseTx::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>::StructField<ipc::capnp::messages::CoinbaseTx::Reader const>(ipc::capnp::messages::CoinbaseTx::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::LockTime, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>::StructField<ipc::capnp::messages::CoinbaseTx::Reader const>(ipc::capnp::messages::CoinbaseTx::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 3>, ipc::capnp::messages::BlockWaitOptions::Builder>::StructField<ipc::capnp::messages::BlockWaitOptions::Builder>(ipc::capnp::messages::BlockWaitOptions::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::FeeThreshold, 3>, ipc::capnp::messages::BlockWaitOptions::Builder>::StructField<ipc::capnp::messages::BlockWaitOptions::Builder>(ipc::capnp::messages::BlockWaitOptions::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>::StructField<capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>(capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>::StructField<capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>(capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsTestChainResults::Builder>::StructField<ipc::capnp::messages::Mining::IsTestChainResults::Builder>(ipc::capnp::messages::Mining::IsTestChainResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults::Builder>::StructField<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults::Builder>(ipc::capnp::messages::Mining::IsInitialBlockDownloadResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::common_fields::Hash, 19>, ipc::capnp::messages::BlockRef::Builder>::StructField<ipc::capnp::messages::BlockRef::Builder>(ipc::capnp::messages::BlockRef::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::common_fields::Height, 3>, ipc::capnp::messages::BlockRef::Builder>::StructField<ipc::capnp::messages::BlockRef::Builder>(ipc::capnp::messages::BlockRef::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, ipc::capnp::messages::Mining::GetTipResults::Builder>::StructField<ipc::capnp::messages::Mining::GetTipResults::Builder>(ipc::capnp::messages::Mining::GetTipResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const>::StructField<ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const>(ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const>::StructField<ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const>(ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>::StructField<ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>(ipc::capnp::messages::Mining::WaitTipChangedResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>::StructField<ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>(ipc::capnp::messages::Mining::WaitTipChangedResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>::StructField<ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>(ipc::capnp::messages::Mining::WaitTipChangedResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::UseMempool, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>::StructField<ipc::capnp::messages::BlockCreateOptions::Reader const>(ipc::capnp::messages::BlockCreateOptions::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>::StructField<ipc::capnp::messages::BlockCreateOptions::Reader const>(ipc::capnp::messages::BlockCreateOptions::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CoinbaseOutputMaxAdditionalSigops, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>::StructField<ipc::capnp::messages::BlockCreateOptions::Reader const>(ipc::capnp::messages::BlockCreateOptions::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>::StructField<ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>(ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>::StructField<ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>(ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>::StructField<ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>(ipc::capnp::messages::Mining::CreateNewBlockResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>::StructField<ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>(ipc::capnp::messages::Mining::CreateNewBlockResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>::StructField<ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>(ipc::capnp::messages::Mining::CreateNewBlockResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>::StructField<ipc::capnp::messages::Mining::CheckBlockParams::Reader const>(ipc::capnp::messages::Mining::CheckBlockParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CheckMerkleRoot, 3>, ipc::capnp::messages::BlockCheckOptions::Reader const>::StructField<ipc::capnp::messages::BlockCheckOptions::Reader const>(ipc::capnp::messages::BlockCheckOptions::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CheckPow, 3>, ipc::capnp::messages::BlockCheckOptions::Reader const>::StructField<ipc::capnp::messages::BlockCheckOptions::Reader const>(ipc::capnp::messages::BlockCheckOptions::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>::StructField<ipc::capnp::messages::Mining::CheckBlockParams::Reader const>(ipc::capnp::messages::Mining::CheckBlockParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>::StructField<ipc::capnp::messages::Mining::CheckBlockParams::Reader const>(ipc::capnp::messages::Mining::CheckBlockParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>::StructField<ipc::capnp::messages::Mining::CheckBlockParams::Reader const>(ipc::capnp::messages::Mining::CheckBlockParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>::StructField<ipc::capnp::messages::Mining::CheckBlockResults::Builder>(ipc::capnp::messages::Mining::CheckBlockResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>::StructField<ipc::capnp::messages::Mining::CheckBlockResults::Builder>(ipc::capnp::messages::Mining::CheckBlockResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>::StructField<ipc::capnp::messages::Mining::CheckBlockResults::Builder>(ipc::capnp::messages::Mining::CheckBlockResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>::StructField<ipc::capnp::messages::Mining::CheckBlockResults::Builder>(ipc::capnp::messages::Mining::CheckBlockResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>::StructField<ipc::capnp::messages::Mining::CheckBlockResults::Builder>(ipc::capnp::messages::Mining::CheckBlockResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults::Builder>(ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::GetBlockResults::Builder>(ipc::capnp::messages::BlockTemplate::GetBlockResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxFeesResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::GetTxFeesResults::Builder>(ipc::capnp::messages::BlockTemplate::GetTxFeesResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults::Builder>(ipc::capnp::messages::BlockTemplate::GetTxSigopsResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Version, 3>, ipc::capnp::messages::CoinbaseTx::Builder>::StructField<ipc::capnp::messages::CoinbaseTx::Builder>(ipc::capnp::messages::CoinbaseTx::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Sequence, 3>, ipc::capnp::messages::CoinbaseTx::Builder>::StructField<ipc::capnp::messages::CoinbaseTx::Builder>(ipc::capnp::messages::CoinbaseTx::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::ScriptSigPrefix, 19>, ipc::capnp::messages::CoinbaseTx::Builder>::StructField<ipc::capnp::messages::CoinbaseTx::Builder>(ipc::capnp::messages::CoinbaseTx::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Builder>::StructField<ipc::capnp::messages::CoinbaseTx::Builder>(ipc::capnp::messages::CoinbaseTx::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::BlockRewardRemaining, 3>, ipc::capnp::messages::CoinbaseTx::Builder>::StructField<ipc::capnp::messages::CoinbaseTx::Builder>(ipc::capnp::messages::CoinbaseTx::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Builder>::StructField<ipc::capnp::messages::CoinbaseTx::Builder>(ipc::capnp::messages::CoinbaseTx::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::LockTime, 3>, ipc::capnp::messages::CoinbaseTx::Builder>::StructField<ipc::capnp::messages::CoinbaseTx::Builder>(ipc::capnp::messages::CoinbaseTx::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults::Builder>(ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults::Builder>(ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>::StructField<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>(ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>::StructField<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>(ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>::StructField<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>(ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>::StructField<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>(ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>(ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>(ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>(ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>(ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>(ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 3>, ipc::capnp::messages::BlockWaitOptions::Reader const>::StructField<ipc::capnp::messages::BlockWaitOptions::Reader const>(ipc::capnp::messages::BlockWaitOptions::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::FeeThreshold, 3>, ipc::capnp::messages::BlockWaitOptions::Reader const>::StructField<ipc::capnp::messages::BlockWaitOptions::Reader const>(ipc::capnp::messages::BlockWaitOptions::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const>::StructField<ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const>(ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>(ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder&) Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>::StructField<ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>(ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder&) mp::StructField<mp::Accessor<mp::rpc_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::StructField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>(capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&) Line | Count | Source | 36 | 8 | StructField(S& struct_) : m_struct(struct_) | 37 | 8 | { | 38 | 8 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::StructField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>(capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&) Line | Count | Source | 36 | 8 | StructField(S& struct_) : m_struct(struct_) | 37 | 8 | { | 38 | 8 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::StructField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>(capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&) Line | Count | Source | 36 | 8 | StructField(S& struct_) : m_struct(struct_) | 37 | 8 | { | 38 | 8 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::StructField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>(capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&) Line | Count | Source | 36 | 8 | StructField(S& struct_) : m_struct(struct_) | 37 | 8 | { | 38 | 8 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::StructField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>(capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&) Line | Count | Source | 36 | 8 | StructField(S& struct_) : m_struct(struct_) | 37 | 8 | { | 38 | 8 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>::StructField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>(capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>::StructField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>(capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>::StructField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>(capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>::StructField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>(capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>::StructField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>(capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>::StructField<ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>(ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>::StructField<ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>(ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>::StructField<ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>(ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>::StructField<ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>(ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>::StructField<ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>(ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>::StructField<ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>(ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>::StructField<ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>(ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder&) Line | Count | Source | 36 | 4 | StructField(S& struct_) : m_struct(struct_) | 37 | 4 | { | 38 | 4 | } |
mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, ipc::capnp::messages::Echo::EchoParams::Reader const>::StructField<ipc::capnp::messages::Echo::EchoParams::Reader const>(ipc::capnp::messages::Echo::EchoParams::Reader const&) Line | Count | Source | 36 | 6 | StructField(S& struct_) : m_struct(struct_) | 37 | 6 | { | 38 | 6 | } |
mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, ipc::capnp::messages::Echo::EchoResults::Builder>::StructField<ipc::capnp::messages::Echo::EchoResults::Builder>(ipc::capnp::messages::Echo::EchoResults::Builder&) Line | Count | Source | 36 | 6 | StructField(S& struct_) : m_struct(struct_) | 37 | 6 | { | 38 | 6 | } |
mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, ipc::capnp::messages::Echo::EchoResults::Builder>::StructField<ipc::capnp::messages::Echo::EchoResults::Builder>(ipc::capnp::messages::Echo::EchoResults::Builder&) Line | Count | Source | 36 | 6 | StructField(S& struct_) : m_struct(struct_) | 37 | 6 | { | 38 | 6 | } |
|
39 | | Struct& m_struct; |
40 | | |
41 | 75 | decltype(auto) get() const { return Accessor::get(this->m_struct); }mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, capnp::Response<gen::FooInterface::AddResults>>::get() const Line | Count | Source | 41 | 1 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassOutPointResults>>::get() const Line | Count | Source | 41 | 1 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassUniValueResults>>::get() const Line | Count | Source | 41 | 1 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>::get() const Line | Count | Source | 41 | 1 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassVectorCharResults>>::get() const Line | Count | Source | 41 | 2 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassScriptResults>>::get() const Line | Count | Source | 41 | 2 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>::get() const mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, gen::FooInterface::AddParams::Reader const>::get() const Line | Count | Source | 41 | 1 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, gen::FooInterface::AddParams::Reader const>::get() const Line | Count | Source | 41 | 1 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassOutPointParams::Reader const>::get() const Line | Count | Source | 41 | 1 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassUniValueParams::Reader const>::get() const Line | Count | Source | 41 | 1 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>::get() const Line | Count | Source | 41 | 1 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassVectorCharParams::Reader const>::get() const Line | Count | Source | 41 | 2 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassScriptParams::Reader const>::get() const Line | Count | Source | 41 | 2 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, gen::FooInterface::AddResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassOutPointResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassUniValueResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassTransactionResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassVectorCharResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassScriptResults::Builder>::get() const mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Response<ipc::capnp::messages::Init::ConstructResults>>::get() const Line | Count | Source | 41 | 10 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>::get() const Line | Count | Source | 41 | 6 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>::get() const mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>::get() const Line | Count | Source | 41 | 4 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>::get() const mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Echo::EchoResults>>::get() const Line | Count | Source | 41 | 6 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>::get() const mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, ipc::capnp::messages::Init::ConstructParams::Reader const>::get() const Line | Count | Source | 41 | 10 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, ipc::capnp::messages::Init::ConstructResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeEchoResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeMiningResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeRpcResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::common_fields::Hash, 19>, ipc::capnp::messages::BlockRef::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::common_fields::Height, 3>, ipc::capnp::messages::BlockRef::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Version, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Sequence, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::ScriptSigPrefix, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::BlockRewardRemaining, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::LockTime, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::UseMempool, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CoinbaseOutputMaxAdditionalSigops, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CheckMerkleRoot, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CheckPow, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 3>, ipc::capnp::messages::BlockWaitOptions::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::FeeThreshold, 3>, ipc::capnp::messages::BlockWaitOptions::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::UseMempool, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CoinbaseOutputMaxAdditionalSigops, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CheckMerkleRoot, 3>, ipc::capnp::messages::BlockCheckOptions::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CheckPow, 3>, ipc::capnp::messages::BlockCheckOptions::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 3>, ipc::capnp::messages::BlockWaitOptions::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::FeeThreshold, 3>, ipc::capnp::messages::BlockWaitOptions::Reader const>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsTestChainResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, ipc::capnp::messages::Mining::GetTipResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::common_fields::Hash, 19>, ipc::capnp::messages::BlockRef::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::common_fields::Height, 3>, ipc::capnp::messages::BlockRef::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxFeesResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Version, 3>, ipc::capnp::messages::CoinbaseTx::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Sequence, 3>, ipc::capnp::messages::CoinbaseTx::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::ScriptSigPrefix, 19>, ipc::capnp::messages::CoinbaseTx::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::BlockRewardRemaining, 3>, ipc::capnp::messages::CoinbaseTx::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::LockTime, 3>, ipc::capnp::messages::CoinbaseTx::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>::get() const mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>::get() const Line | Count | Source | 41 | 4 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::rpc_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::get() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::get() const mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>::get() const Line | Count | Source | 41 | 4 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>::get() const Line | Count | Source | 41 | 4 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>::get() const Line | Count | Source | 41 | 4 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>::get() const mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, ipc::capnp::messages::Echo::EchoParams::Reader const>::get() const Line | Count | Source | 41 | 6 | decltype(auto) get() const { return Accessor::get(this->m_struct); } |
|
42 | | |
43 | 16 | bool has() const { |
44 | 16 | if constexpr (Accessor::optional) { |
45 | 0 | return Accessor::getHas(m_struct); |
46 | 16 | } else if constexpr (Accessor::boxed) { |
47 | 16 | return Accessor::has(m_struct); |
48 | 16 | } else { |
49 | 0 | return true; |
50 | 0 | } |
51 | 16 | } mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassOutPointResults>>::has() const Line | Count | Source | 43 | 1 | bool has() const { | 44 | | if constexpr (Accessor::optional) { | 45 | | return Accessor::getHas(m_struct); | 46 | 1 | } else if constexpr (Accessor::boxed) { | 47 | 1 | return Accessor::has(m_struct); | 48 | | } else { | 49 | | return true; | 50 | | } | 51 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>::has() const Line | Count | Source | 43 | 2 | bool has() const { | 44 | | if constexpr (Accessor::optional) { | 45 | | return Accessor::getHas(m_struct); | 46 | 2 | } else if constexpr (Accessor::boxed) { | 47 | 2 | return Accessor::has(m_struct); | 48 | | } else { | 49 | | return true; | 50 | | } | 51 | 2 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassOutPointParams::Reader const>::has() const Line | Count | Source | 43 | 1 | bool has() const { | 44 | | if constexpr (Accessor::optional) { | 45 | | return Accessor::getHas(m_struct); | 46 | 1 | } else if constexpr (Accessor::boxed) { | 47 | 1 | return Accessor::has(m_struct); | 48 | | } else { | 49 | | return true; | 50 | | } | 51 | 1 | } |
mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>::has() const Line | Count | Source | 43 | 2 | bool has() const { | 44 | | if constexpr (Accessor::optional) { | 45 | | return Accessor::getHas(m_struct); | 46 | 2 | } else if constexpr (Accessor::boxed) { | 47 | 2 | return Accessor::has(m_struct); | 48 | | } else { | 49 | | return true; | 50 | | } | 51 | 2 | } |
mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>::has() const Line | Count | Source | 43 | 6 | bool has() const { | 44 | | if constexpr (Accessor::optional) { | 45 | | return Accessor::getHas(m_struct); | 46 | 6 | } else if constexpr (Accessor::boxed) { | 47 | 6 | return Accessor::has(m_struct); | 48 | | } else { | 49 | | return true; | 50 | | } | 51 | 6 | } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>::has() const mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>::has() const Line | Count | Source | 43 | 4 | bool has() const { | 44 | | if constexpr (Accessor::optional) { | 45 | | return Accessor::getHas(m_struct); | 46 | 4 | } else if constexpr (Accessor::boxed) { | 47 | 4 | return Accessor::has(m_struct); | 48 | | } else { | 49 | | return true; | 50 | | } | 51 | 4 | } |
Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>::has() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::common_fields::Hash, 19>, ipc::capnp::messages::BlockRef::Reader const>::has() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>::has() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>::has() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>::has() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>::has() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>::has() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>::has() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const>::has() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>::has() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>::has() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>::has() const |
52 | | |
53 | | bool want() const { |
54 | | if constexpr (Accessor::requested) { |
55 | | return Accessor::getWant(m_struct); |
56 | | } else { |
57 | | return true; |
58 | | } |
59 | | } |
60 | | |
61 | 33 | template <typename... Args> decltype(auto) set(Args &&...args) const { |
62 | 33 | return Accessor::set(this->m_struct, std::forward<Args>(args)...); |
63 | 33 | } decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>::set<int>(int&&) const Line | Count | Source | 61 | 1 | template <typename... Args> decltype(auto) set(Args &&...args) const { | 62 | 1 | return Accessor::set(this->m_struct, std::forward<Args>(args)...); | 63 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>::set<int>(int&&) const Line | Count | Source | 61 | 1 | template <typename... Args> decltype(auto) set(Args &&...args) const { | 62 | 1 | return Accessor::set(this->m_struct, std::forward<Args>(args)...); | 63 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, gen::FooInterface::AddResults::Builder>::set<int>(int&&) const Line | Count | Source | 61 | 1 | template <typename... Args> decltype(auto) set(Args &&...args) const { | 62 | 1 | return Accessor::set(this->m_struct, std::forward<Args>(args)...); | 63 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>::set<kj::Own<mp::ProxyServer<mp::ThreadMap>, std::nullptr_t>>(kj::Own<mp::ProxyServer<mp::ThreadMap>, std::nullptr_t>&&) const Line | Count | Source | 61 | 10 | template <typename... Args> decltype(auto) set(Args &&...args) const { | 62 | 10 | return Accessor::set(this->m_struct, std::forward<Args>(args)...); | 63 | 10 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, ipc::capnp::messages::Init::ConstructResults::Builder>::set<kj::Own<mp::ProxyServer<mp::ThreadMap>, std::nullptr_t>>(kj::Own<mp::ProxyServer<mp::ThreadMap>, std::nullptr_t>&&) const Line | Count | Source | 61 | 10 | template <typename... Args> decltype(auto) set(Args &&...args) const { | 62 | 10 | return Accessor::set(this->m_struct, std::forward<Args>(args)...); | 63 | 10 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeEchoResults::Builder>::set<kj::Own<ipc::capnp::messages::Echo::Server, std::nullptr_t>>(kj::Own<ipc::capnp::messages::Echo::Server, std::nullptr_t>&&) const Line | Count | Source | 61 | 6 | template <typename... Args> decltype(auto) set(Args &&...args) const { | 62 | 6 | return Accessor::set(this->m_struct, std::forward<Args>(args)...); | 63 | 6 | } |
Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeMiningResults::Builder>::set<kj::Own<ipc::capnp::messages::Mining::Server, std::nullptr_t>>(kj::Own<ipc::capnp::messages::Mining::Server, std::nullptr_t>&&) const decltype(auto) mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeRpcResults::Builder>::set<kj::Own<ipc::capnp::messages::Rpc::Server, std::nullptr_t>>(kj::Own<ipc::capnp::messages::Rpc::Server, std::nullptr_t>&&) const Line | Count | Source | 61 | 4 | template <typename... Args> decltype(auto) set(Args &&...args) const { | 62 | 4 | return Accessor::set(this->m_struct, std::forward<Args>(args)...); | 63 | 4 | } |
Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>::set<double>(double&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::UseMempool, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>::set<bool>(bool&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>::set<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::CoinbaseOutputMaxAdditionalSigops, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>::set<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>::set<bool>(bool&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::CheckMerkleRoot, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>::set<bool>(bool&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::CheckPow, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>::set<bool>(bool&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::set<unsigned int>(unsigned int&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::set<unsigned int>(unsigned int&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::set<unsigned int>(unsigned int&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 3>, ipc::capnp::messages::BlockWaitOptions::Builder>::set<double>(double&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::FeeThreshold, 3>, ipc::capnp::messages::BlockWaitOptions::Builder>::set<long>(long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsTestChainResults::Builder>::set<bool>(bool&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults::Builder>::set<bool>(bool&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::common_fields::Height, 3>, ipc::capnp::messages::BlockRef::Builder>::set<int>(int&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>::set<kj::Own<ipc::capnp::messages::BlockTemplate::Server, std::nullptr_t>>(kj::Own<ipc::capnp::messages::BlockTemplate::Server, std::nullptr_t>&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>::set<bool>(bool&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Version, 3>, ipc::capnp::messages::CoinbaseTx::Builder>::set<unsigned int>(unsigned int&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Sequence, 3>, ipc::capnp::messages::CoinbaseTx::Builder>::set<unsigned int>(unsigned int&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::BlockRewardRemaining, 3>, ipc::capnp::messages::CoinbaseTx::Builder>::set<long>(long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::LockTime, 3>, ipc::capnp::messages::CoinbaseTx::Builder>::set<unsigned int>(unsigned int&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>::set<bool>(bool&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>::set<kj::Own<ipc::capnp::messages::BlockTemplate::Server, std::nullptr_t>>(kj::Own<ipc::capnp::messages::BlockTemplate::Server, std::nullptr_t>&&) const |
64 | | |
65 | 64 | template <typename... Args> decltype(auto) init(Args &&...args) const { |
66 | 64 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); |
67 | 64 | } decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 1 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 1 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 1 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 1 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 1 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 1 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 1 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 1 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 1 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 1 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassOutPointResults::Builder>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 1 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 1 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassUniValueResults::Builder>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 1 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 1 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassTransactionResults::Builder>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 1 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 1 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassVectorCharResults::Builder>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 1 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 1 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassScriptResults::Builder>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 1 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 1 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 1 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>::init<>() const Line | Count | Source | 65 | 6 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 6 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 6 | } |
Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>::init<>() const decltype(auto) mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>::init<>() const Line | Count | Source | 65 | 4 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 4 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 4 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>::init<>() const Line | Count | Source | 65 | 6 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 6 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 6 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>::init<>() const Line | Count | Source | 65 | 6 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 6 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 6 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 6 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 6 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 6 | } |
Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::common_fields::Hash, 19>, ipc::capnp::messages::BlockRef::Builder>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, ipc::capnp::messages::Mining::GetTipResults::Builder>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults::Builder>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockResults::Builder>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxFeesResults::Builder>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults::Builder>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::ScriptSigPrefix, 19>, ipc::capnp::messages::CoinbaseTx::Builder>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Builder>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Builder>::init<unsigned long>(unsigned long&&) const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults::Builder>::init<>() const Unexecuted instantiation: decltype(auto) mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults::Builder>::init<unsigned long>(unsigned long&&) const decltype(auto) mp::StructField<mp::Accessor<mp::rpc_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::init<>() const Line | Count | Source | 65 | 4 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 4 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 4 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 4 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 4 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 4 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 4 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 4 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 4 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 4 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 4 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 4 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 4 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 4 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 4 | } |
decltype(auto) mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, ipc::capnp::messages::Echo::EchoResults::Builder>::init<unsigned long>(unsigned long&&) const Line | Count | Source | 65 | 6 | template <typename... Args> decltype(auto) init(Args &&...args) const { | 66 | 6 | return Accessor::init(this->m_struct, std::forward<Args>(args)...); | 67 | 6 | } |
|
68 | | |
69 | 0 | void setHas() const { |
70 | 0 | if constexpr (Accessor::optional) { |
71 | 0 | Accessor::setHas(m_struct); |
72 | 0 | } |
73 | 0 | } Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>::setHas() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, ipc::capnp::messages::Mining::GetTipResults::Builder>::setHas() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>::setHas() const Unexecuted instantiation: mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Builder>::setHas() const |
74 | | |
75 | | void setWant() const { |
76 | | if constexpr (Accessor::requested) { |
77 | | Accessor::setWant(m_struct); |
78 | | } |
79 | | } |
80 | | }; |
81 | | |
82 | | |
83 | | |
84 | | // Destination parameter type that can be passed to ReadField function as an |
85 | | // alternative to ReadDestUpdate. It allows the ReadField implementation to call |
86 | | // the provided emplace_fn function with constructor arguments, so it only needs |
87 | | // to determine the arguments, and can let the emplace function decide how to |
88 | | // actually construct the read destination object. For example, if a std::string |
89 | | // is being read, the ReadField call will call the custom emplace_fn with char* |
90 | | // and size_t arguments, and the emplace function can decide whether to call the |
91 | | // constructor via the operator, make_shared, emplace or just return a |
92 | | // temporary string that is moved from. |
93 | | template <typename LocalType, typename EmplaceFn> |
94 | | struct ReadDestEmplace |
95 | | { |
96 | 27 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {}mp::ReadDestEmplace<CTransaction, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>&&, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<CTransaction>, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>&&, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)) Line | Count | Source | 96 | 1 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
mp::ReadDestEmplace<int, void mp::PassField<mp::Accessor<mp::ipc_test_fields::A, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<int>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::A, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>&&)::'lambda'(auto&&...)) Line | Count | Source | 96 | 1 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
mp::ReadDestEmplace<int, void mp::PassField<mp::Accessor<mp::ipc_test_fields::B, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, int>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, int&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<int>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::B, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, int>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, int&&)::'lambda'(auto&&...)) Line | Count | Source | 96 | 1 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
mp::ReadDestEmplace<COutPoint, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<COutPoint>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<COutPoint>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<COutPoint>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)) Line | Count | Source | 96 | 1 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<UniValue>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)) Line | Count | Source | 96 | 1 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
mp::ReadDestEmplace<CTransaction, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<CTransaction>, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)) Line | Count | Source | 96 | 1 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<std::shared_ptr<CTransaction const>>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)) Line | Count | Source | 96 | 1 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
mp::ReadDestEmplace<std::vector<char, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<std::vector<char, std::allocator<char>>>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)) Line | Count | Source | 96 | 1 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
mp::ReadDestEmplace<CScript, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<CScript>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<CScript>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<CScript>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)) Line | Count | Source | 96 | 1 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
Unexecuted instantiation: mp::ReadDestEmplace<interfaces::BlockRef, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<interfaces::BlockRef>, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<interfaces::BlockRef, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<interfaces::BlockRef>, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<long, auto decltype(auto) mp::CustomReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&)::'lambda'(long&)::operator()<std::vector<long, std::allocator<long>>>(long&) const::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<long>, auto decltype(auto) mp::CustomReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&)::'lambda'(long&)::operator()<std::vector<long, std::allocator<long>>>(long&) const::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<long, auto decltype(auto) mp::CustomReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&)::'lambda'(long&)::operator()<std::vector<long, std::allocator<long>>>(long&) const::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<long>, auto decltype(auto) mp::CustomReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&)::'lambda'(long&)::operator()<std::vector<long, std::allocator<long>>>(long&) const::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<uint256, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::optional<uint256>>>(mp::TypeList<std::optional<uint256>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::optional<uint256>>&&)::'lambda'(uint256&)::operator()<std::optional<uint256>>(uint256&) const::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<uint256>, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::optional<uint256>>>(mp::TypeList<std::optional<uint256>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::optional<uint256>>&&)::'lambda'(uint256&)::operator()<std::optional<uint256>>(uint256&) const::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<CTxOut, auto decltype(auto) mp::CustomReadField<CTxOut, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>>(mp::TypeList<std::vector<CTxOut, std::allocator<CTxOut>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>&&)::'lambda'(CTxOut&)::operator()<std::vector<CTxOut, std::allocator<CTxOut>>>(CTxOut&) const::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<CTxOut>, auto decltype(auto) mp::CustomReadField<CTxOut, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>>(mp::TypeList<std::vector<CTxOut, std::allocator<CTxOut>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>&&)::'lambda'(CTxOut&)::operator()<std::vector<CTxOut, std::allocator<CTxOut>>>(CTxOut&) const::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<uint256, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>>(mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>&&)::'lambda'(uint256&)::operator()<std::vector<uint256, std::allocator<uint256>>>(uint256&) const::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<uint256>, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>>(mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>&&)::'lambda'(uint256&)::operator()<std::vector<uint256, std::allocator<uint256>>>(uint256&) const::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<uint256, void mp::PassField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::Priority<0>, mp::TypeList<uint256>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<uint256>, void mp::PassField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::Priority<0>, mp::TypeList<uint256>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&)::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<std::chrono::duration<double, std::ratio<1l, 1000l>>, void mp::PassField<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, uint256>(mp::Priority<0>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, uint256&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, void mp::PassField<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, uint256>(mp::Priority<0>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, uint256&&)::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<unsigned long, auto decltype(auto) mp::CustomReadField<unsigned long, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>, mp::ReadDestUpdate<std::optional<unsigned long>>>(mp::TypeList<std::optional<unsigned long>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&&, mp::ReadDestUpdate<std::optional<unsigned long>>&&)::'lambda'(unsigned long&)::operator()<std::optional<unsigned long>>(unsigned long&) const::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<unsigned long>, auto decltype(auto) mp::CustomReadField<unsigned long, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>, mp::ReadDestUpdate<std::optional<unsigned long>>>(mp::TypeList<std::optional<unsigned long>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&&, mp::ReadDestUpdate<std::optional<unsigned long>>&&)::'lambda'(unsigned long&)::operator()<std::optional<unsigned long>>(unsigned long&) const::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<node::BlockCreateOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>>(mp::Priority<0>, mp::TypeList<node::BlockCreateOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<node::BlockCreateOptions>, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>>(mp::Priority<0>, mp::TypeList<node::BlockCreateOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>&&)::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<bool, void mp::PassField<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, node::BlockCreateOptions const&>(mp::Priority<0>, mp::TypeList<bool>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, node::BlockCreateOptions const&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<bool>, void mp::PassField<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, node::BlockCreateOptions const&>(mp::Priority<0>, mp::TypeList<bool>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, node::BlockCreateOptions const&)::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<CBlock, void mp::PassField<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::Priority<0>, mp::TypeList<CBlock const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<CBlock>, void mp::PassField<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::Priority<0>, mp::TypeList<CBlock const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<node::BlockCheckOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&>(mp::Priority<0>, mp::TypeList<node::BlockCheckOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<node::BlockCheckOptions>, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&>(mp::Priority<0>, mp::TypeList<node::BlockCheckOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&)::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&, node::BlockCheckOptions const&>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&, node::BlockCheckOptions const&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, void mp::PassField<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&, node::BlockCheckOptions const&>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&, node::BlockCheckOptions const&)::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, void mp::PassField<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<unsigned int>, void mp::PassField<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>&&)::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>&&, unsigned int&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<unsigned int>, void mp::PassField<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>&&, unsigned int&&)::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<unsigned int>, void mp::PassField<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<CTransaction, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<CTransaction>, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<std::shared_ptr<CTransaction const>>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)) Unexecuted instantiation: mp::ReadDestEmplace<node::BlockWaitOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<node::BlockWaitOptions>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<node::BlockWaitOptions>, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<node::BlockWaitOptions>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)) mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<UniValue>, void mp::PassField<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&)::'lambda'(auto&&...)) Line | Count | Source | 96 | 4 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, UniValue>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, UniValue&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, void mp::PassField<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, UniValue>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, UniValue&&)::'lambda'(auto&&...)) Line | Count | Source | 96 | 4 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, void mp::PassField<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&)::'lambda'(auto&&...)) Line | Count | Source | 96 | 4 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::ReadDestEmplace(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, void mp::PassField<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)) Line | Count | Source | 96 | 6 | ReadDestEmplace(TypeList<LocalType>, EmplaceFn emplace_fn) : m_emplace_fn(std::move(emplace_fn)) {} |
|
97 | | |
98 | | //! Simple case. If ReadField implementation calls this construct() method |
99 | | //! with constructor arguments, just pass them on to the emplace function. |
100 | | template <typename... Args> |
101 | | decltype(auto) construct(Args&&... args) |
102 | 27 | { |
103 | 27 | return m_emplace_fn(std::forward<Args>(args)...); |
104 | 27 | } decltype(auto) mp::ReadDestEmplace<CTransaction, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>&&, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)>::construct<deserialize_type const&, ParamsStream<SpanReader&, TransactionSerParams>&>(auto&&...) Line | Count | Source | 102 | 1 | { | 103 | 1 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 1 | } |
decltype(auto) mp::ReadDestEmplace<int, void mp::PassField<mp::Accessor<mp::ipc_test_fields::A, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>&&)::'lambda'(auto&&...)>::construct<int>(auto&&...) Line | Count | Source | 102 | 1 | { | 103 | 1 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 1 | } |
decltype(auto) mp::ReadDestEmplace<int, void mp::PassField<mp::Accessor<mp::ipc_test_fields::B, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, int>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, int&&)::'lambda'(auto&&...)>::construct<int>(auto&&...) Line | Count | Source | 102 | 1 | { | 103 | 1 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 1 | } |
decltype(auto) mp::ReadDestEmplace<COutPoint, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<COutPoint>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::construct<>(auto&&...) Line | Count | Source | 102 | 1 | { | 103 | 1 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 1 | } |
decltype(auto) mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::construct<>(auto&&...) Line | Count | Source | 102 | 1 | { | 103 | 1 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 1 | } |
decltype(auto) mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::construct<>(auto&&...) Line | Count | Source | 102 | 1 | { | 103 | 1 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 1 | } |
decltype(auto) mp::ReadDestEmplace<CTransaction, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)>::construct<deserialize_type const&, ParamsStream<SpanReader&, TransactionSerParams>&>(auto&&...) Line | Count | Source | 102 | 1 | { | 103 | 1 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 1 | } |
decltype(auto) mp::ReadDestEmplace<std::vector<char, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::construct<char const*, char const*>(auto&&...) Line | Count | Source | 102 | 1 | { | 103 | 1 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 1 | } |
decltype(auto) mp::ReadDestEmplace<CScript, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<CScript>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::construct<unsigned char const*, unsigned char const*>(auto&&...) Line | Count | Source | 102 | 1 | { | 103 | 1 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 1 | } |
Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<interfaces::BlockRef, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)>::construct<>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<interfaces::BlockRef, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)>::construct<>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<long, auto decltype(auto) mp::CustomReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&)::'lambda'(long&)::operator()<std::vector<long, std::allocator<long>>>(long&) const::'lambda'(auto&&...)>::construct<long>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<long, auto decltype(auto) mp::CustomReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&)::'lambda'(long&)::operator()<std::vector<long, std::allocator<long>>>(long&) const::'lambda'(auto&&...)>::construct<long>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<uint256, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::optional<uint256>>>(mp::TypeList<std::optional<uint256>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::optional<uint256>>&&)::'lambda'(uint256&)::operator()<std::optional<uint256>>(uint256&) const::'lambda'(auto&&...)>::construct<>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<CTxOut, auto decltype(auto) mp::CustomReadField<CTxOut, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>>(mp::TypeList<std::vector<CTxOut, std::allocator<CTxOut>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>&&)::'lambda'(CTxOut&)::operator()<std::vector<CTxOut, std::allocator<CTxOut>>>(CTxOut&) const::'lambda'(auto&&...)>::construct<>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<uint256, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>>(mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>&&)::'lambda'(uint256&)::operator()<std::vector<uint256, std::allocator<uint256>>>(uint256&) const::'lambda'(auto&&...)>::construct<>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<uint256, void mp::PassField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::Priority<0>, mp::TypeList<uint256>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&)::'lambda'(auto&&...)>::construct<>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<std::chrono::duration<double, std::ratio<1l, 1000l>>, void mp::PassField<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, uint256>(mp::Priority<0>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, uint256&&)::'lambda'(auto&&...)>::construct<double>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<node::BlockCreateOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>>(mp::Priority<0>, mp::TypeList<node::BlockCreateOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>&&)::'lambda'(auto&&...)>::construct<>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<unsigned long, auto decltype(auto) mp::CustomReadField<unsigned long, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>, mp::ReadDestUpdate<std::optional<unsigned long>>>(mp::TypeList<std::optional<unsigned long>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&&, mp::ReadDestUpdate<std::optional<unsigned long>>&&)::'lambda'(unsigned long&)::operator()<std::optional<unsigned long>>(unsigned long&) const::'lambda'(auto&&...)>::construct<unsigned long>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<bool, void mp::PassField<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, node::BlockCreateOptions const&>(mp::Priority<0>, mp::TypeList<bool>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, node::BlockCreateOptions const&)::'lambda'(auto&&...)>::construct<bool>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<CBlock, void mp::PassField<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::Priority<0>, mp::TypeList<CBlock const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda'(auto&&...)>::construct<>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<node::BlockCheckOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&>(mp::Priority<0>, mp::TypeList<node::BlockCheckOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&)::'lambda'(auto&&...)>::construct<>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>&&)::'lambda'(auto&&...)>::construct<unsigned int>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>&&, unsigned int&&)::'lambda'(auto&&...)>::construct<unsigned int>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>::construct<unsigned int>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>::construct<>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<CTransaction, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)>::construct<deserialize_type const&, ParamsStream<SpanReader&, TransactionSerParams>&>(auto&&...) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<node::BlockWaitOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<node::BlockWaitOptions>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::construct<>(auto&&...) decltype(auto) mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&)::'lambda'(auto&&...)>::construct<>(auto&&...) Line | Count | Source | 102 | 4 | { | 103 | 4 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 4 | } |
decltype(auto) mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, UniValue>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, UniValue&&)::'lambda'(auto&&...)>::construct<char const*, unsigned long>(auto&&...) Line | Count | Source | 102 | 4 | { | 103 | 4 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 4 | } |
decltype(auto) mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&)::'lambda'(auto&&...)>::construct<char const*, unsigned long>(auto&&...) Line | Count | Source | 102 | 4 | { | 103 | 4 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 4 | } |
decltype(auto) mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::construct<char const*, unsigned long>(auto&&...) Line | Count | Source | 102 | 6 | { | 103 | 6 | return m_emplace_fn(std::forward<Args>(args)...); | 104 | 6 | } |
|
105 | | |
106 | | //! More complicated case. If ReadField implementation works by calling this |
107 | | //! update() method, adapt it call construct() instead. This requires |
108 | | //! LocalType to have a default constructor to create new object that can be |
109 | | //! passed to update() |
110 | | template <typename UpdateFn> |
111 | | decltype(auto) update(UpdateFn&& update_fn) |
112 | 7 | { |
113 | | if constexpr (std::is_const_v<std::remove_reference_t<std::invoke_result_t<EmplaceFn>>>) { |
114 | | // If destination type is const, default construct temporary |
115 | | // to pass to update, then call move constructor via construct() to |
116 | | // move from that temporary. |
117 | | std::remove_cv_t<LocalType> temp; |
118 | | update_fn(temp); |
119 | | return construct(std::move(temp)); |
120 | 7 | } else { |
121 | | // Default construct object and pass it to update_fn. |
122 | 7 | decltype(auto) temp = construct(); |
123 | 7 | update_fn(temp); |
124 | 7 | return temp; |
125 | 7 | } |
126 | 7 | } decltype(auto) mp::ReadDestEmplace<COutPoint, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<COutPoint>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<COutPoint, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassOutPointParams::Reader const>, mp::ReadDestEmplace<COutPoint, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<COutPoint>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<COutPoint>, mp::Priority<1>, mp::InvokeContext&, COutPoint&&, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&&) requires Unserializable<COutPoint, DataStream> && !ipc::capnp::Deserializable<COutPoint>::'lambda'(COutPoint&)>(COutPoint&&) Line | Count | Source | 112 | 1 | { | 113 | | if constexpr (std::is_const_v<std::remove_reference_t<std::invoke_result_t<EmplaceFn>>>) { | 114 | | // If destination type is const, default construct temporary | 115 | | // to pass to update, then call move constructor via construct() to | 116 | | // move from that temporary. | 117 | | std::remove_cv_t<LocalType> temp; | 118 | | update_fn(temp); | 119 | | return construct(std::move(temp)); | 120 | 1 | } else { | 121 | | // Default construct object and pass it to update_fn. | 122 | 1 | decltype(auto) temp = construct(); | 123 | 1 | update_fn(temp); | 124 | 1 | return temp; | 125 | 1 | } | 126 | 1 | } |
decltype(auto) mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassUniValueParams::Reader const>, mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<UniValue>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassUniValueParams::Reader const>&&, UniValue&&)::'lambda'(mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassUniValueParams::Reader const>&)>(mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassUniValueParams::Reader const>&&) Line | Count | Source | 112 | 1 | { | 113 | | if constexpr (std::is_const_v<std::remove_reference_t<std::invoke_result_t<EmplaceFn>>>) { | 114 | | // If destination type is const, default construct temporary | 115 | | // to pass to update, then call move constructor via construct() to | 116 | | // move from that temporary. | 117 | | std::remove_cv_t<LocalType> temp; | 118 | | update_fn(temp); | 119 | | return construct(std::move(temp)); | 120 | 1 | } else { | 121 | | // Default construct object and pass it to update_fn. | 122 | 1 | decltype(auto) temp = construct(); | 123 | 1 | update_fn(temp); | 124 | 1 | return temp; | 125 | 1 | } | 126 | 1 | } |
decltype(auto) mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&&)::'lambda'(CTransaction&)>(CTransaction&&) Line | Count | Source | 112 | 1 | { | 113 | | if constexpr (std::is_const_v<std::remove_reference_t<std::invoke_result_t<EmplaceFn>>>) { | 114 | | // If destination type is const, default construct temporary | 115 | | // to pass to update, then call move constructor via construct() to | 116 | | // move from that temporary. | 117 | | std::remove_cv_t<LocalType> temp; | 118 | | update_fn(temp); | 119 | | return construct(std::move(temp)); | 120 | 1 | } else { | 121 | | // Default construct object and pass it to update_fn. | 122 | 1 | decltype(auto) temp = construct(); | 123 | 1 | update_fn(temp); | 124 | 1 | return temp; | 125 | 1 | } | 126 | 1 | } |
Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<interfaces::BlockRef, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&, mp::ReadDestEmplace<interfaces::BlockRef, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)>>(mp::TypeList<interfaces::BlockRef>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&, mp::ProxyType<interfaces::BlockRef>::Struct*)::'lambda'(interfaces::BlockRef&)>(interfaces::BlockRef&&) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<interfaces::BlockRef, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ReadDestEmplace<interfaces::BlockRef, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)>>(mp::TypeList<interfaces::BlockRef>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&, mp::ProxyType<interfaces::BlockRef>::Struct*)::'lambda'(interfaces::BlockRef&)>(interfaces::BlockRef&&) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<uint256, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::optional<uint256>>>(mp::TypeList<std::optional<uint256>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::optional<uint256>>&&)::'lambda'(uint256&)::operator()<std::optional<uint256>>(uint256&) const::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&, mp::ReadDestEmplace<uint256, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::optional<uint256>>>(mp::TypeList<std::optional<uint256>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::optional<uint256>>&&)::'lambda'(uint256&)::operator()<std::optional<uint256>>(uint256&) const::'lambda'(auto&&...)>>(mp::TypeList<uint256>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::optional<uint256>>&&) requires Unserializable<uint256, DataStream> && !ipc::capnp::Deserializable<uint256>::'lambda'(uint256&)>(uint256&&) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<CTxOut, auto decltype(auto) mp::CustomReadField<CTxOut, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>>(mp::TypeList<std::vector<CTxOut, std::allocator<CTxOut>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>&&)::'lambda'(CTxOut&)::operator()<std::vector<CTxOut, std::allocator<CTxOut>>>(CTxOut&) const::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<CTxOut, mp::ValueField<capnp::Data::Reader>, mp::ReadDestEmplace<CTxOut, auto decltype(auto) mp::CustomReadField<CTxOut, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>>(mp::TypeList<std::vector<CTxOut, std::allocator<CTxOut>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>&&)::'lambda'(CTxOut&)::operator()<std::vector<CTxOut, std::allocator<CTxOut>>>(CTxOut&) const::'lambda'(auto&&...)>>(mp::TypeList<CTxOut>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>&&) requires Unserializable<CTxOut, DataStream> && !ipc::capnp::Deserializable<CTxOut>::'lambda'(CTxOut&)>(CTxOut&&) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<uint256, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>>(mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>&&)::'lambda'(uint256&)::operator()<std::vector<uint256, std::allocator<uint256>>>(uint256&) const::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<uint256, mp::ValueField<capnp::Data::Reader>, mp::ReadDestEmplace<uint256, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>>(mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>&&)::'lambda'(uint256&)::operator()<std::vector<uint256, std::allocator<uint256>>>(uint256&) const::'lambda'(auto&&...)>>(mp::TypeList<uint256>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>&&) requires Unserializable<uint256, DataStream> && !ipc::capnp::Deserializable<uint256>::'lambda'(uint256&)>(uint256&&) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<uint256, void mp::PassField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::Priority<0>, mp::TypeList<uint256>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&)::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const>, mp::ReadDestEmplace<uint256, void mp::PassField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::Priority<0>, mp::TypeList<uint256>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&)::'lambda'(auto&&...)>>(mp::TypeList<uint256>, mp::Priority<1>, mp::InvokeContext&, uint256&&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&&) requires Unserializable<uint256, DataStream> && !ipc::capnp::Deserializable<uint256>::'lambda'(uint256&)>(uint256&&) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<node::BlockCreateOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>>(mp::Priority<0>, mp::TypeList<node::BlockCreateOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>&&)::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<node::BlockCreateOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>, mp::ReadDestEmplace<node::BlockCreateOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>>(mp::Priority<0>, mp::TypeList<node::BlockCreateOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>&&)::'lambda'(auto&&...)>>(mp::TypeList<node::BlockCreateOptions>, mp::Priority<1>, mp::InvokeContext&, node::BlockCreateOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&&, mp::ProxyType<node::BlockCreateOptions>::Struct*)::'lambda'(node::BlockCreateOptions&)>(node::BlockCreateOptions&&) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<CBlock, void mp::PassField<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::Priority<0>, mp::TypeList<CBlock const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<CBlock, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>, mp::ReadDestEmplace<CBlock, void mp::PassField<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::Priority<0>, mp::TypeList<CBlock const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda'(auto&&...)>>(mp::TypeList<CBlock>, mp::Priority<1>, mp::InvokeContext&, CBlock const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&&) requires Unserializable<CBlock, DataStream> && !ipc::capnp::Deserializable<CBlock>::'lambda'(CBlock&)>(CBlock&&) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<node::BlockCheckOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&>(mp::Priority<0>, mp::TypeList<node::BlockCheckOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&)::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<node::BlockCheckOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>, mp::ReadDestEmplace<node::BlockCheckOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&>(mp::Priority<0>, mp::TypeList<node::BlockCheckOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&)::'lambda'(auto&&...)>>(mp::TypeList<node::BlockCheckOptions>, mp::Priority<1>, mp::InvokeContext&, node::BlockCheckOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&&, mp::ProxyType<node::BlockCheckOptions>::Struct*)::'lambda'(node::BlockCheckOptions&)>(node::BlockCheckOptions&&) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&)::'lambda'(CTransaction&)>(CTransaction&&) Unexecuted instantiation: decltype(auto) mp::ReadDestEmplace<node::BlockWaitOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<node::BlockWaitOptions>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<node::BlockWaitOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const>, mp::ReadDestEmplace<node::BlockWaitOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<node::BlockWaitOptions>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<node::BlockWaitOptions>, mp::Priority<1>, mp::InvokeContext&, node::BlockWaitOptions&&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&&, mp::ProxyType<node::BlockWaitOptions>::Struct*)::'lambda'(node::BlockWaitOptions&)>(node::BlockWaitOptions&&) decltype(auto) mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&)::'lambda'(auto&&...)>::update<decltype(auto) mp::CustomReadField<mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>, mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&)::'lambda'(auto&&...)>>(mp::TypeList<UniValue>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>&&, UniValue&&)::'lambda'(mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>&)>(mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>&&) Line | Count | Source | 112 | 4 | { | 113 | | if constexpr (std::is_const_v<std::remove_reference_t<std::invoke_result_t<EmplaceFn>>>) { | 114 | | // If destination type is const, default construct temporary | 115 | | // to pass to update, then call move constructor via construct() to | 116 | | // move from that temporary. | 117 | | std::remove_cv_t<LocalType> temp; | 118 | | update_fn(temp); | 119 | | return construct(std::move(temp)); | 120 | 4 | } else { | 121 | | // Default construct object and pass it to update_fn. | 122 | 4 | decltype(auto) temp = construct(); | 123 | 4 | update_fn(temp); | 124 | 4 | return temp; | 125 | 4 | } | 126 | 4 | } |
|
127 | | EmplaceFn m_emplace_fn; |
128 | | }; |
129 | | |
130 | | //! Helper function to create a ReadDestEmplace object that constructs a |
131 | | //! temporary, ReadField can return. |
132 | | template <typename LocalType> |
133 | | auto ReadDestTemp() |
134 | 0 | { |
135 | 0 | return ReadDestEmplace{TypeList<LocalType>(), [](auto&&... args) -> decltype(auto) { |
136 | 0 | return LocalType{std::forward<decltype(args)>(args)...}; |
137 | 0 | }}; |
138 | 0 | } |
139 | | |
140 | | //! Destination parameter type that can be passed to ReadField function as an |
141 | | //! alternative to ReadDestEmplace. Instead of requiring an emplace callback to |
142 | | //! construct a new value, it just takes a reference to an existing value and |
143 | | //! assigns a new value to it. |
144 | | template <typename Value> |
145 | | struct ReadDestUpdate |
146 | | { |
147 | 51 | ReadDestUpdate(Value& value) : m_value(value) {}mp::ReadDestUpdate<int>::ReadDestUpdate(int&) Line | Count | Source | 147 | 3 | ReadDestUpdate(Value& value) : m_value(value) {} |
mp::ReadDestUpdate<COutPoint>::ReadDestUpdate(COutPoint&) Line | Count | Source | 147 | 2 | ReadDestUpdate(Value& value) : m_value(value) {} |
mp::ReadDestUpdate<UniValue>::ReadDestUpdate(UniValue&) Line | Count | Source | 147 | 10 | ReadDestUpdate(Value& value) : m_value(value) {} |
mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>::ReadDestUpdate(std::shared_ptr<CTransaction const>&) Line | Count | Source | 147 | 2 | ReadDestUpdate(Value& value) : m_value(value) {} |
mp::ReadDestUpdate<std::vector<char, std::allocator<char>>>::ReadDestUpdate(std::vector<char, std::allocator<char>>&) Line | Count | Source | 147 | 2 | ReadDestUpdate(Value& value) : m_value(value) {} |
mp::ReadDestUpdate<CScript>::ReadDestUpdate(CScript&) Line | Count | Source | 147 | 2 | ReadDestUpdate(Value& value) : m_value(value) {} |
mp::ReadDestUpdate<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>::ReadDestUpdate(std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&) Line | Count | Source | 147 | 6 | ReadDestUpdate(Value& value) : m_value(value) {} |
Unexecuted instantiation: mp::ReadDestUpdate<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>::ReadDestUpdate(std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&) mp::ReadDestUpdate<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>::ReadDestUpdate(std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&) Line | Count | Source | 147 | 4 | ReadDestUpdate(Value& value) : m_value(value) {} |
mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const>::ReadDestUpdate(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) Line | Count | Source | 147 | 6 | ReadDestUpdate(Value& value) : m_value(value) {} |
mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadDestUpdate(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Line | Count | Source | 147 | 14 | ReadDestUpdate(Value& value) : m_value(value) {} |
Unexecuted instantiation: mp::ReadDestUpdate<bool>::ReadDestUpdate(bool&) Unexecuted instantiation: mp::ReadDestUpdate<uint256>::ReadDestUpdate(uint256&) Unexecuted instantiation: mp::ReadDestUpdate<interfaces::BlockRef>::ReadDestUpdate(interfaces::BlockRef&) Unexecuted instantiation: mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>::ReadDestUpdate(std::optional<interfaces::BlockRef>&) Unexecuted instantiation: mp::ReadDestUpdate<std::chrono::duration<double, std::ratio<1l, 1000l>>>::ReadDestUpdate(std::chrono::duration<double, std::ratio<1l, 1000l>>&) Unexecuted instantiation: mp::ReadDestUpdate<node::BlockCreateOptions const>::ReadDestUpdate(node::BlockCreateOptions const&) Unexecuted instantiation: mp::ReadDestUpdate<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>::ReadDestUpdate(std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&) Unexecuted instantiation: mp::ReadDestUpdate<CBlock const>::ReadDestUpdate(CBlock const&) Unexecuted instantiation: mp::ReadDestUpdate<node::BlockCheckOptions const>::ReadDestUpdate(node::BlockCheckOptions const&) Unexecuted instantiation: mp::ReadDestUpdate<CBlockHeader>::ReadDestUpdate(CBlockHeader&) Unexecuted instantiation: mp::ReadDestUpdate<CBlock>::ReadDestUpdate(CBlock&) Unexecuted instantiation: mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>::ReadDestUpdate(std::vector<long, std::allocator<long>>&) Unexecuted instantiation: mp::ReadDestUpdate<unsigned int>::ReadDestUpdate(unsigned int&) Unexecuted instantiation: mp::ReadDestUpdate<std::optional<uint256>>::ReadDestUpdate(std::optional<uint256>&) Unexecuted instantiation: mp::ReadDestUpdate<long>::ReadDestUpdate(long&) Unexecuted instantiation: mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>::ReadDestUpdate(std::vector<CTxOut, std::allocator<CTxOut>>&) Unexecuted instantiation: mp::ReadDestUpdate<node::CoinbaseTx>::ReadDestUpdate(node::CoinbaseTx&) Unexecuted instantiation: mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>::ReadDestUpdate(std::vector<uint256, std::allocator<uint256>>&) Unexecuted instantiation: mp::ReadDestUpdate<node::BlockWaitOptions>::ReadDestUpdate(node::BlockWaitOptions&) Unexecuted instantiation: mp::ReadDestUpdate<unsigned long>::ReadDestUpdate(unsigned long&) Unexecuted instantiation: mp::ReadDestUpdate<std::optional<unsigned long>>::ReadDestUpdate(std::optional<unsigned long>&) |
148 | | |
149 | | //! Simple case. If ReadField works by calling update() just forward arguments to update_fn. |
150 | | template <typename UpdateFn> |
151 | | Value& update(UpdateFn&& update_fn) |
152 | 7 | { |
153 | 7 | update_fn(m_value); |
154 | 7 | return m_value; |
155 | 7 | } COutPoint& mp::ReadDestUpdate<COutPoint>::update<decltype(auto) mp::CustomReadField<COutPoint, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassOutPointResults>>, mp::ReadDestUpdate<COutPoint>>(mp::TypeList<COutPoint>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassOutPointResults>>&&, mp::ReadDestUpdate<COutPoint>&&) requires Unserializable<COutPoint, DataStream> && !ipc::capnp::Deserializable<COutPoint>::'lambda'(COutPoint&)>(COutPoint&&) Line | Count | Source | 152 | 1 | { | 153 | 1 | update_fn(m_value); | 154 | 1 | return m_value; | 155 | 1 | } |
UniValue& mp::ReadDestUpdate<UniValue>::update<decltype(auto) mp::CustomReadField<mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassUniValueResults>>, mp::ReadDestUpdate<UniValue>>(mp::TypeList<UniValue>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassUniValueResults>>&&, mp::ReadDestUpdate<UniValue>&&)::'lambda'(mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassUniValueResults>>&)>(mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassUniValueResults>>&&) Line | Count | Source | 152 | 1 | { | 153 | 1 | update_fn(m_value); | 154 | 1 | return m_value; | 155 | 1 | } |
std::shared_ptr<CTransaction const>& mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>::update<decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>&&, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>&&)::'lambda'(CTransaction&)>(CTransaction&&) Line | Count | Source | 152 | 1 | { | 153 | 1 | update_fn(m_value); | 154 | 1 | return m_value; | 155 | 1 | } |
Unexecuted instantiation: std::optional<interfaces::BlockRef>& mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>::update<decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)>(interfaces::BlockRef&&) Unexecuted instantiation: interfaces::BlockRef& mp::ReadDestUpdate<interfaces::BlockRef>::update<decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&, mp::ReadDestUpdate<interfaces::BlockRef>>(mp::TypeList<interfaces::BlockRef>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&, mp::ReadDestUpdate<interfaces::BlockRef>&&, mp::ProxyType<interfaces::BlockRef>::Struct*)::'lambda'(interfaces::BlockRef&)>(interfaces::BlockRef&&) Unexecuted instantiation: uint256& mp::ReadDestUpdate<uint256>::update<decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::common_fields::Hash, 19>, ipc::capnp::messages::BlockRef::Reader const>, mp::ReadDestUpdate<uint256>>(mp::TypeList<uint256>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::common_fields::Hash, 19>, ipc::capnp::messages::BlockRef::Reader const>&&, mp::ReadDestUpdate<uint256>&&) requires Unserializable<uint256, DataStream> && !ipc::capnp::Deserializable<uint256>::'lambda'(uint256&)>(uint256&&) Unexecuted instantiation: std::optional<interfaces::BlockRef>& mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>::update<decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)>(interfaces::BlockRef&&) Unexecuted instantiation: interfaces::BlockRef& mp::ReadDestUpdate<interfaces::BlockRef>::update<decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ReadDestUpdate<interfaces::BlockRef>>(mp::TypeList<interfaces::BlockRef>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ReadDestUpdate<interfaces::BlockRef>&&, mp::ProxyType<interfaces::BlockRef>::Struct*)::'lambda'(interfaces::BlockRef&)>(interfaces::BlockRef&&) Unexecuted instantiation: CBlockHeader& mp::ReadDestUpdate<CBlockHeader>::update<decltype(auto) mp::CustomReadField<CBlockHeader, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>, mp::ReadDestUpdate<CBlockHeader>>(mp::TypeList<CBlockHeader>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>&&, mp::ReadDestUpdate<CBlockHeader>&&) requires Unserializable<CBlockHeader, DataStream> && !ipc::capnp::Deserializable<CBlockHeader>::'lambda'(CBlockHeader&)>(CBlockHeader&&) Unexecuted instantiation: CBlock& mp::ReadDestUpdate<CBlock>::update<decltype(auto) mp::CustomReadField<CBlock, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>, mp::ReadDestUpdate<CBlock>>(mp::TypeList<CBlock>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>&&, mp::ReadDestUpdate<CBlock>&&) requires Unserializable<CBlock, DataStream> && !ipc::capnp::Deserializable<CBlock>::'lambda'(CBlock&)>(CBlock&&) Unexecuted instantiation: std::vector<long, std::allocator<long>>& mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>::update<decltype(auto) mp::CustomReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&)::'lambda'(long&)>(long&&) Unexecuted instantiation: std::vector<long, std::allocator<long>>& mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>::update<decltype(auto) mp::CustomReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&)::'lambda'(long&)>(long&&) Unexecuted instantiation: node::CoinbaseTx& mp::ReadDestUpdate<node::CoinbaseTx>::update<decltype(auto) mp::CustomReadField<node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>, mp::ReadDestUpdate<node::CoinbaseTx>>(mp::TypeList<node::CoinbaseTx>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&&, mp::ReadDestUpdate<node::CoinbaseTx>&&, mp::ProxyType<node::CoinbaseTx>::Struct*)::'lambda'(node::CoinbaseTx&)>(node::CoinbaseTx&&) Unexecuted instantiation: std::optional<uint256>& mp::ReadDestUpdate<std::optional<uint256>>::update<decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::optional<uint256>>>(mp::TypeList<std::optional<uint256>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::optional<uint256>>&&)::'lambda'(uint256&)>(uint256&&) Unexecuted instantiation: uint256& mp::ReadDestUpdate<uint256>::update<decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&, mp::ReadDestUpdate<uint256>>(mp::TypeList<uint256>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&, mp::ReadDestUpdate<uint256>&&) requires Unserializable<uint256, DataStream> && !ipc::capnp::Deserializable<uint256>::'lambda'(uint256&)>(uint256&&) Unexecuted instantiation: std::vector<CTxOut, std::allocator<CTxOut>>& mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>::update<decltype(auto) mp::CustomReadField<CTxOut, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>>(mp::TypeList<std::vector<CTxOut, std::allocator<CTxOut>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>&&)::'lambda'(CTxOut&)>(CTxOut&&) Unexecuted instantiation: std::vector<uint256, std::allocator<uint256>>& mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>::update<decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>>(mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>&&)::'lambda'(uint256&)>(uint256&&) Unexecuted instantiation: std::optional<unsigned long>& mp::ReadDestUpdate<std::optional<unsigned long>>::update<decltype(auto) mp::CustomReadField<unsigned long, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>, mp::ReadDestUpdate<std::optional<unsigned long>>>(mp::TypeList<std::optional<unsigned long>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&&, mp::ReadDestUpdate<std::optional<unsigned long>>&&)::'lambda'(unsigned long&)>(unsigned long&&) UniValue& mp::ReadDestUpdate<UniValue>::update<decltype(auto) mp::CustomReadField<mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ReadDestUpdate<UniValue>>(mp::TypeList<UniValue>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, mp::ReadDestUpdate<UniValue>&&)::'lambda'(mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>&)>(mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&) Line | Count | Source | 152 | 4 | { | 153 | 4 | update_fn(m_value); | 154 | 4 | return m_value; | 155 | 4 | } |
|
156 | | |
157 | | //! More complicated case. If ReadField works by calling construct(), need |
158 | | //! to reconstruct m_value in place. |
159 | | template <typename... Args> |
160 | | Value& construct(Args&&... args) |
161 | 19 | { |
162 | 19 | m_value.~Value(); |
163 | 19 | new (&m_value) Value(std::forward<Args>(args)...); |
164 | 19 | return m_value; |
165 | 19 | } int& mp::ReadDestUpdate<int>::construct<int>(int&&) Line | Count | Source | 161 | 1 | { | 162 | 1 | m_value.~Value(); | 163 | 1 | new (&m_value) Value(std::forward<Args>(args)...); | 164 | 1 | return m_value; | 165 | 1 | } |
std::vector<char, std::allocator<char>>& mp::ReadDestUpdate<std::vector<char, std::allocator<char>>>::construct<char const*, char const*>(char const*&&, char const*&&) Line | Count | Source | 161 | 1 | { | 162 | 1 | m_value.~Value(); | 163 | 1 | new (&m_value) Value(std::forward<Args>(args)...); | 164 | 1 | return m_value; | 165 | 1 | } |
CScript& mp::ReadDestUpdate<CScript>::construct<unsigned char const*, unsigned char const*>(unsigned char const*&&, unsigned char const*&&) Line | Count | Source | 161 | 1 | { | 162 | 1 | m_value.~Value(); | 163 | 1 | new (&m_value) Value(std::forward<Args>(args)...); | 164 | 1 | return m_value; | 165 | 1 | } |
std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>& mp::ReadDestUpdate<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>::construct<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>(std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&&) Line | Count | Source | 161 | 6 | { | 162 | 6 | m_value.~Value(); | 163 | 6 | new (&m_value) Value(std::forward<Args>(args)...); | 164 | 6 | return m_value; | 165 | 6 | } |
Unexecuted instantiation: std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>& mp::ReadDestUpdate<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>::construct<>() Unexecuted instantiation: std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>& mp::ReadDestUpdate<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>::construct<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>(std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&&) Unexecuted instantiation: std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>& mp::ReadDestUpdate<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>::construct<>() std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>& mp::ReadDestUpdate<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>::construct<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>(std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&&) Line | Count | Source | 161 | 4 | { | 162 | 4 | m_value.~Value(); | 163 | 4 | new (&m_value) Value(std::forward<Args>(args)...); | 164 | 4 | return m_value; | 165 | 4 | } |
Unexecuted instantiation: std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>& mp::ReadDestUpdate<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>::construct<>() std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>& mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::construct<char const*, unsigned long>(char const*&&, unsigned long&&) Line | Count | Source | 161 | 6 | { | 162 | 6 | m_value.~Value(); | 163 | 6 | new (&m_value) Value(std::forward<Args>(args)...); | 164 | 6 | return m_value; | 165 | 6 | } |
Unexecuted instantiation: bool& mp::ReadDestUpdate<bool>::construct<bool>(bool&&) Unexecuted instantiation: std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>& mp::ReadDestUpdate<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>::construct<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>(std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&&) Unexecuted instantiation: std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>& mp::ReadDestUpdate<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>::construct<>() Unexecuted instantiation: unsigned int& mp::ReadDestUpdate<unsigned int>::construct<unsigned int>(unsigned int&&) Unexecuted instantiation: long& mp::ReadDestUpdate<long>::construct<long>(long&&) Unexecuted instantiation: unsigned long& mp::ReadDestUpdate<unsigned long>::construct<unsigned long>(unsigned long&&) Unexecuted instantiation: std::chrono::duration<double, std::ratio<1l, 1000l>>& mp::ReadDestUpdate<std::chrono::duration<double, std::ratio<1l, 1000l>>>::construct<double>(double&&) |
166 | | |
167 | | Value& m_value; |
168 | | }; |
169 | | |
170 | | //! Return whether to read a C++ value from a Cap'n Proto field. Returning |
171 | | //! false can be useful to interpret certain Cap'n Proto field values as null |
172 | | //! C++ values when initializing nullable C++ std::optional / std::unique_ptr / |
173 | | //! std::shared_ptr types. |
174 | | //! |
175 | | //! For example, when reading from a `List(Data)` field into a |
176 | | //! `std::vector<std::shared_ptr<const CTransaction>>` value, it's useful to be |
177 | | //! able to interpret empty `Data` values as null pointers. This is useful |
178 | | //! because the Cap'n Proto C++ API does not currently provide a way to |
179 | | //! distinguish between null and empty Data values in a List[*], so we need to |
180 | | //! choose some Data value to represent null if we want to allow passing null |
181 | | //! pointers. Since no CTransaction is ever serialized as empty Data, it's safe |
182 | | //! to use empty Data values to represent null pointers. |
183 | | //! |
184 | | //! [*] The Cap'n Proto wire format actually does distinguish between null and |
185 | | //! empty Data values inside Lists, and the C++ API does allow distinguishing |
186 | | //! between null and empty Data values in other contexts, just not the List |
187 | | //! context, so this limitation could be removed in the future. |
188 | | //! |
189 | | //! Design note: CustomHasField() and CustomHasValue() are inverses of each |
190 | | //! other. CustomHasField() allows leaving Cap'n Proto fields unset when C++ |
191 | | //! types have certain values, and CustomHasValue() allows leaving C++ values |
192 | | //! unset when Cap'n Proto fields have certain values. But internally the |
193 | | //! functions get called in different ways. This is because in C++, unlike in |
194 | | //! Cap'n Proto not every C++ type is default constructible, and it may be |
195 | | //! impossible to leave certain C++ values unset. For example if a C++ method |
196 | | //! requires function parameters, there's no way to call the function without |
197 | | //! constructing values for each of the parameters. Similarly there's no way to |
198 | | //! add values to C++ vectors or maps without initializing those values. This |
199 | | //! is not the case in Cap'n Proto where all values are optional and it's |
200 | | //! possible to skip initializing parameters and list elements. |
201 | | //! |
202 | | //! Because of this difference, CustomHasValue() works universally and can be |
203 | | //! used to disable BuildField() calls in every context, while CustomHasField() |
204 | | //! can only be used to disable ReadField() calls in certain contexts like |
205 | | //! std::optional and pointer contexts. |
206 | | template <typename... LocalTypes, typename Input> |
207 | | bool CustomHasField(TypeList<LocalTypes...>, InvokeContext& invoke_context, const Input& input) |
208 | 12 | { |
209 | 12 | return input.has(); |
210 | 12 | } bool mp::CustomHasField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>>(mp::TypeList<CTransaction>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>> const&) Line | Count | Source | 208 | 1 | { | 209 | 1 | return input.has(); | 210 | 1 | } |
bool mp::CustomHasField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>>(mp::TypeList<CTransaction>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const> const&) Line | Count | Source | 208 | 1 | { | 209 | 1 | return input.has(); | 210 | 1 | } |
bool mp::CustomHasField<interfaces::Echo, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>>(mp::TypeList<interfaces::Echo>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>> const&) Line | Count | Source | 208 | 6 | { | 209 | 6 | return input.has(); | 210 | 6 | } |
Unexecuted instantiation: bool mp::CustomHasField<interfaces::Mining, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>>(mp::TypeList<interfaces::Mining>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>> const&) bool mp::CustomHasField<interfaces::Rpc, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>>(mp::TypeList<interfaces::Rpc>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>> const&) Line | Count | Source | 208 | 4 | { | 209 | 4 | return input.has(); | 210 | 4 | } |
Unexecuted instantiation: bool mp::CustomHasField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>> const&) Unexecuted instantiation: bool mp::CustomHasField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>> const&) Unexecuted instantiation: bool mp::CustomHasField<interfaces::BlockTemplate, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>>(mp::TypeList<interfaces::BlockTemplate>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>> const&) Unexecuted instantiation: bool mp::CustomHasField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>>(mp::TypeList<uint256>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const> const&) Unexecuted instantiation: bool mp::CustomHasField<interfaces::BlockTemplate, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>>(mp::TypeList<interfaces::BlockTemplate>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>> const&) Unexecuted instantiation: bool mp::CustomHasField<unsigned long, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>>(mp::TypeList<unsigned long>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const> const&) Unexecuted instantiation: bool mp::CustomHasField<CTransaction, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>>(mp::TypeList<CTransaction>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const> const&) |
211 | | |
212 | | template <typename... LocalTypes, typename Input, typename... Args> |
213 | | decltype(auto) ReadField(TypeList<LocalTypes...>, InvokeContext& invoke_context, Input&& input, Args&&... args) |
214 | 73 | { |
215 | 73 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); |
216 | 73 | } decltype(auto) mp::ReadField<int, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, capnp::Response<gen::FooInterface::AddResults>>, mp::ReadDestUpdate<int>>(mp::TypeList<int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, capnp::Response<gen::FooInterface::AddResults>>&&, mp::ReadDestUpdate<int>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<COutPoint, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassOutPointResults>>, mp::ReadDestUpdate<COutPoint>>(mp::TypeList<COutPoint>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassOutPointResults>>&&, mp::ReadDestUpdate<COutPoint>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<UniValue, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassUniValueResults>>, mp::ReadDestUpdate<UniValue>>(mp::TypeList<UniValue>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassUniValueResults>>&&, mp::ReadDestUpdate<UniValue>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<std::shared_ptr<CTransaction const>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>&&, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>, mp::ReadDestEmplace<CTransaction, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>&&, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>&&, mp::ReadDestEmplace<CTransaction, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>&&, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<std::vector<char, std::allocator<char>>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassVectorCharResults>>, mp::ReadDestUpdate<std::vector<char, std::allocator<char>>>>(mp::TypeList<std::vector<char, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassVectorCharResults>>&&, mp::ReadDestUpdate<std::vector<char, std::allocator<char>>>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<CScript, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassScriptResults>>, mp::ReadDestUpdate<CScript>>(mp::TypeList<CScript>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassScriptResults>>&&, mp::ReadDestUpdate<CScript>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<int, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, gen::FooInterface::AddParams::Reader const>, mp::ReadDestEmplace<int, void mp::PassField<mp::Accessor<mp::ipc_test_fields::A, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, int&&, mp::ReadDestEmplace<int, void mp::PassField<mp::Accessor<mp::ipc_test_fields::A, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>&&)::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<int, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, gen::FooInterface::AddParams::Reader const>, mp::ReadDestEmplace<int, void mp::PassField<mp::Accessor<mp::ipc_test_fields::B, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, int>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, int&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, int&&, mp::ReadDestEmplace<int, void mp::PassField<mp::Accessor<mp::ipc_test_fields::B, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, int>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, int&&)::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<COutPoint, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassOutPointParams::Reader const>, mp::ReadDestEmplace<COutPoint, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<COutPoint>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, COutPoint&&, mp::ReadDestEmplace<COutPoint, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<COutPoint>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<UniValue, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassUniValueParams::Reader const>, mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, UniValue&&, mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<std::shared_ptr<CTransaction const>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>, mp::ReadDestEmplace<CTransaction, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ReadDestEmplace<CTransaction, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<std::vector<char, std::allocator<char>>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassVectorCharParams::Reader const>, mp::ReadDestEmplace<std::vector<char, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, std::vector<char, std::allocator<char>>&&, mp::ReadDestEmplace<std::vector<char, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<CScript, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassScriptParams::Reader const>, mp::ReadDestEmplace<CScript, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<CScript>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, CScript&&, mp::ReadDestEmplace<CScript, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<CScript>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 1 | { | 215 | 1 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 1 | } |
decltype(auto) mp::ReadField<mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Response<ipc::capnp::messages::Init::ConstructResults>>>(mp::TypeList<>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Response<ipc::capnp::messages::Init::ConstructResults>>&&) Line | Count | Source | 214 | 10 | { | 215 | 10 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 10 | } |
decltype(auto) mp::ReadField<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>, mp::ReadDestUpdate<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>>(mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>&&, mp::ReadDestUpdate<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>&&) Line | Count | Source | 214 | 6 | { | 215 | 6 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 6 | } |
Unexecuted instantiation: decltype(auto) mp::ReadField<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>, mp::ReadDestUpdate<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>>(mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>&&, mp::ReadDestUpdate<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>&&) decltype(auto) mp::ReadField<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>, mp::ReadDestUpdate<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>>(mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>&&, mp::ReadDestUpdate<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>&&) Line | Count | Source | 214 | 4 | { | 215 | 4 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 4 | } |
decltype(auto) mp::ReadField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Echo::EchoResults>>, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Echo::EchoResults>>&&, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&) Line | Count | Source | 214 | 6 | { | 215 | 6 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 6 | } |
decltype(auto) mp::ReadField<mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, ipc::capnp::messages::Init::ConstructParams::Reader const> const&>(mp::TypeList<>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, ipc::capnp::messages::Init::ConstructParams::Reader const> const&) Line | Count | Source | 214 | 10 | { | 215 | 10 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 10 | } |
Unexecuted instantiation: decltype(auto) mp::ReadField<bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>, mp::ReadDestUpdate<bool>>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>&&, mp::ReadDestUpdate<bool>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>, mp::ReadDestUpdate<bool>>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>&&, mp::ReadDestUpdate<bool>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::optional<interfaces::BlockRef>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&, mp::ReadDestUpdate<interfaces::BlockRef>>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&, mp::ReadDestUpdate<interfaces::BlockRef>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<uint256, mp::StructField<mp::Accessor<mp::common_fields::Hash, 19>, ipc::capnp::messages::BlockRef::Reader const>, mp::ReadDestUpdate<uint256>>(mp::TypeList<uint256>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::common_fields::Hash, 19>, ipc::capnp::messages::BlockRef::Reader const>&&, mp::ReadDestUpdate<uint256>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<int, mp::StructField<mp::Accessor<mp::common_fields::Height, 3>, ipc::capnp::messages::BlockRef::Reader const>, mp::ReadDestUpdate<int>>(mp::TypeList<int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::common_fields::Height, 3>, ipc::capnp::messages::BlockRef::Reader const>&&, mp::ReadDestUpdate<int>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&, mp::ReadDestEmplace<interfaces::BlockRef, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&, mp::ReadDestEmplace<interfaces::BlockRef, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::optional<interfaces::BlockRef>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ReadDestUpdate<interfaces::BlockRef>>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ReadDestUpdate<interfaces::BlockRef>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ReadDestEmplace<interfaces::BlockRef, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestEmplace<interfaces::BlockRef, auto decltype(auto) mp::CustomReadField<interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&)::'lambda'(interfaces::BlockRef&)::operator()<std::optional<interfaces::BlockRef>>(interfaces::BlockRef&) const::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ReadDestUpdate<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>>(mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>&&, mp::ReadDestUpdate<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>&&, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>&&, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ReadDestUpdate<bool>>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>&&, mp::ReadDestUpdate<bool>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<CBlockHeader, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>, mp::ReadDestUpdate<CBlockHeader>>(mp::TypeList<CBlockHeader>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>&&, mp::ReadDestUpdate<CBlockHeader>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<CBlock, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>, mp::ReadDestUpdate<CBlock>>(mp::TypeList<CBlock>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>&&, mp::ReadDestUpdate<CBlock>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::vector<long, std::allocator<long>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<long, mp::ValueField<long>, mp::ReadDestEmplace<long, auto decltype(auto) mp::CustomReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&)::'lambda'(long&)::operator()<std::vector<long, std::allocator<long>>>(long&) const::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&, mp::ReadDestEmplace<long, auto decltype(auto) mp::CustomReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&)::'lambda'(long&)::operator()<std::vector<long, std::allocator<long>>>(long&) const::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::vector<long, std::allocator<long>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<long, mp::ValueField<long>, mp::ReadDestEmplace<long, auto decltype(auto) mp::CustomReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&)::'lambda'(long&)::operator()<std::vector<long, std::allocator<long>>>(long&) const::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&, mp::ReadDestEmplace<long, auto decltype(auto) mp::CustomReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&)::'lambda'(long&)::operator()<std::vector<long, std::allocator<long>>>(long&) const::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>, mp::ReadDestUpdate<node::CoinbaseTx>>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&&, mp::ReadDestUpdate<node::CoinbaseTx>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Version, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<unsigned int>>(mp::TypeList<unsigned int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<unsigned int>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Sequence, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<unsigned int>>(mp::TypeList<unsigned int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Sequence, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<unsigned int>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<CScript, mp::StructField<mp::Accessor<mp::mining_fields::ScriptSigPrefix, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<CScript>>(mp::TypeList<CScript>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::ScriptSigPrefix, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<CScript>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::optional<uint256>, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::optional<uint256>>>(mp::TypeList<std::optional<uint256>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::optional<uint256>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&, mp::ReadDestUpdate<uint256>>(mp::TypeList<uint256>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&, mp::ReadDestUpdate<uint256>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&, mp::ReadDestEmplace<uint256, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::optional<uint256>>>(mp::TypeList<std::optional<uint256>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::optional<uint256>>&&)::'lambda'(uint256&)::operator()<std::optional<uint256>>(uint256&) const::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestEmplace<uint256, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::optional<uint256>>>(mp::TypeList<std::optional<uint256>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::optional<uint256>>&&)::'lambda'(uint256&)::operator()<std::optional<uint256>>(uint256&) const::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::BlockRewardRemaining, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<long>>(mp::TypeList<long>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockRewardRemaining, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<long>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::vector<CTxOut, std::allocator<CTxOut>>, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>>(mp::TypeList<std::vector<CTxOut, std::allocator<CTxOut>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<CTxOut, mp::ValueField<capnp::Data::Reader>, mp::ReadDestEmplace<CTxOut, auto decltype(auto) mp::CustomReadField<CTxOut, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>>(mp::TypeList<std::vector<CTxOut, std::allocator<CTxOut>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>&&)::'lambda'(CTxOut&)::operator()<std::vector<CTxOut, std::allocator<CTxOut>>>(CTxOut&) const::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestEmplace<CTxOut, auto decltype(auto) mp::CustomReadField<CTxOut, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>>(mp::TypeList<std::vector<CTxOut, std::allocator<CTxOut>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<std::vector<CTxOut, std::allocator<CTxOut>>>&&)::'lambda'(CTxOut&)::operator()<std::vector<CTxOut, std::allocator<CTxOut>>>(CTxOut&) const::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::LockTime, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>, mp::ReadDestUpdate<unsigned int>>(mp::TypeList<unsigned int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::LockTime, 3>, ipc::capnp::messages::CoinbaseTx::Reader const>&&, mp::ReadDestUpdate<unsigned int>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::vector<uint256, std::allocator<uint256>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>>(mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<uint256, mp::ValueField<capnp::Data::Reader>, mp::ReadDestEmplace<uint256, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>>(mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>&&)::'lambda'(uint256&)::operator()<std::vector<uint256, std::allocator<uint256>>>(uint256&) const::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, mp::ReadDestEmplace<uint256, auto decltype(auto) mp::CustomReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>>(mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>&&)::'lambda'(uint256&)::operator()<std::vector<uint256, std::allocator<uint256>>>(uint256&) const::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ReadDestUpdate<bool>>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, mp::ReadDestUpdate<bool>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ReadDestUpdate<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>>(mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>&&, mp::ReadDestUpdate<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<uint256, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const>, mp::ReadDestEmplace<uint256, void mp::PassField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::Priority<0>, mp::TypeList<uint256>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, uint256&&, mp::ReadDestEmplace<uint256, void mp::PassField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::Priority<0>, mp::TypeList<uint256>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&)::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const>, mp::ReadDestEmplace<std::chrono::duration<double, std::ratio<1l, 1000l>>, void mp::PassField<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, uint256>(mp::Priority<0>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, uint256&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, std::chrono::duration<double, std::ratio<1l, 1000l>>&&, mp::ReadDestEmplace<std::chrono::duration<double, std::ratio<1l, 1000l>>, void mp::PassField<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, uint256>(mp::Priority<0>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, uint256&&)::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<node::BlockCreateOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>, mp::ReadDestEmplace<node::BlockCreateOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>>(mp::Priority<0>, mp::TypeList<node::BlockCreateOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, node::BlockCreateOptions const&, mp::ReadDestEmplace<node::BlockCreateOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>>(mp::Priority<0>, mp::TypeList<node::BlockCreateOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>&&)::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<bool, mp::StructField<mp::Accessor<mp::mining_fields::UseMempool, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>, mp::ReadDestUpdate<bool>>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::UseMempool, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&&, mp::ReadDestUpdate<bool>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::optional<unsigned long>, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>, mp::ReadDestUpdate<std::optional<unsigned long>>>(mp::TypeList<std::optional<unsigned long>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&&, mp::ReadDestUpdate<std::optional<unsigned long>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<unsigned long, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&, mp::ReadDestUpdate<unsigned long>>(mp::TypeList<unsigned long>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&, mp::ReadDestUpdate<unsigned long>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<unsigned long, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&, mp::ReadDestEmplace<unsigned long, auto decltype(auto) mp::CustomReadField<unsigned long, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>, mp::ReadDestUpdate<std::optional<unsigned long>>>(mp::TypeList<std::optional<unsigned long>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&&, mp::ReadDestUpdate<std::optional<unsigned long>>&&)::'lambda'(unsigned long&)::operator()<std::optional<unsigned long>>(unsigned long&) const::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&&, mp::ReadDestEmplace<unsigned long, auto decltype(auto) mp::CustomReadField<unsigned long, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>, mp::ReadDestUpdate<std::optional<unsigned long>>>(mp::TypeList<std::optional<unsigned long>>, mp::Priority<1>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&&, mp::ReadDestUpdate<std::optional<unsigned long>>&&)::'lambda'(unsigned long&)::operator()<std::optional<unsigned long>>(unsigned long&) const::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<unsigned long, mp::StructField<mp::Accessor<mp::mining_fields::CoinbaseOutputMaxAdditionalSigops, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>, mp::ReadDestUpdate<unsigned long>>(mp::TypeList<unsigned long>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CoinbaseOutputMaxAdditionalSigops, 3>, ipc::capnp::messages::BlockCreateOptions::Reader const>&&, mp::ReadDestUpdate<unsigned long>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<bool, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>, mp::ReadDestEmplace<bool, void mp::PassField<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, node::BlockCreateOptions const&>(mp::Priority<0>, mp::TypeList<bool>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, node::BlockCreateOptions const&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, bool&&, mp::ReadDestEmplace<bool, void mp::PassField<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, node::BlockCreateOptions const&>(mp::Priority<0>, mp::TypeList<bool>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, node::BlockCreateOptions const&)::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<CBlock, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>, mp::ReadDestEmplace<CBlock, void mp::PassField<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::Priority<0>, mp::TypeList<CBlock const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, CBlock const&, mp::ReadDestEmplace<CBlock, void mp::PassField<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::Priority<0>, mp::TypeList<CBlock const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<node::BlockCheckOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>, mp::ReadDestEmplace<node::BlockCheckOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&>(mp::Priority<0>, mp::TypeList<node::BlockCheckOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, node::BlockCheckOptions const&, mp::ReadDestEmplace<node::BlockCheckOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&>(mp::Priority<0>, mp::TypeList<node::BlockCheckOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&)::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<bool, mp::StructField<mp::Accessor<mp::mining_fields::CheckMerkleRoot, 3>, ipc::capnp::messages::BlockCheckOptions::Reader const>, mp::ReadDestUpdate<bool>>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CheckMerkleRoot, 3>, ipc::capnp::messages::BlockCheckOptions::Reader const>&&, mp::ReadDestUpdate<bool>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<bool, mp::StructField<mp::Accessor<mp::mining_fields::CheckPow, 3>, ipc::capnp::messages::BlockCheckOptions::Reader const>, mp::ReadDestUpdate<bool>>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CheckPow, 3>, ipc::capnp::messages::BlockCheckOptions::Reader const>&&, mp::ReadDestUpdate<bool>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, unsigned int&&, mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>&&)::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>&&, unsigned int&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, unsigned int&&, mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>&&, unsigned int&&)::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, unsigned int&&, mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::shared_ptr<CTransaction const>, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<CTransaction, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<CTransaction, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ReadDestEmplace<CTransaction, auto decltype(auto) mp::CustomReadField<CTransaction, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<1>, mp::InvokeContext&, std::shared_ptr<CTransaction const>&&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&)::'lambda'(CTransaction&)::operator()<std::shared_ptr<CTransaction const>>(CTransaction&) const::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<node::BlockWaitOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const>, mp::ReadDestEmplace<node::BlockWaitOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<node::BlockWaitOptions>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, node::BlockWaitOptions&&, mp::ReadDestEmplace<node::BlockWaitOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<node::BlockWaitOptions>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 3>, ipc::capnp::messages::BlockWaitOptions::Reader const>, mp::ReadDestUpdate<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 3>, ipc::capnp::messages::BlockWaitOptions::Reader const>&&, mp::ReadDestUpdate<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&) Unexecuted instantiation: decltype(auto) mp::ReadField<long, mp::StructField<mp::Accessor<mp::mining_fields::FeeThreshold, 3>, ipc::capnp::messages::BlockWaitOptions::Reader const>, mp::ReadDestUpdate<long>>(mp::TypeList<long>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::FeeThreshold, 3>, ipc::capnp::messages::BlockWaitOptions::Reader const>&&, mp::ReadDestUpdate<long>&&) decltype(auto) mp::ReadField<UniValue, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ReadDestUpdate<UniValue>>(mp::TypeList<UniValue>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, mp::ReadDestUpdate<UniValue>&&) Line | Count | Source | 214 | 4 | { | 215 | 4 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 4 | } |
decltype(auto) mp::ReadField<UniValue, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>, mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, UniValue&&, mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&)::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 4 | { | 215 | 4 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 4 | } |
decltype(auto) mp::ReadField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>, mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, UniValue>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, UniValue&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&, mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, UniValue>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, UniValue&&)::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 4 | { | 215 | 4 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 4 | } |
decltype(auto) mp::ReadField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>, mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&, mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&)::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 4 | { | 215 | 4 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 4 | } |
decltype(auto) mp::ReadField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, ipc::capnp::messages::Echo::EchoParams::Reader const>, mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(mp::TypeList<auto...>, mp::InvokeContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>&&) Line | Count | Source | 214 | 6 | { | 215 | 6 | return CustomReadField(TypeList<RemoveCvRef<LocalTypes>...>(), Priority<2>(), invoke_context, std::forward<Input>(input), std::forward<Args>(args)...); | 216 | 6 | } |
|
217 | | |
218 | | template <typename LocalType, typename Input> |
219 | | void ThrowField(TypeList<LocalType>, InvokeContext& invoke_context, Input&& input) |
220 | | { |
221 | | ReadField( |
222 | | TypeList<LocalType>(), invoke_context, input, ReadDestEmplace(TypeList<LocalType>(), |
223 | | [](auto&& ...args) -> const LocalType& { throw LocalType{std::forward<decltype(args)>(args)...}; })); |
224 | | } |
225 | | |
226 | | //! Special case for generic std::exception. It's an abstract type so it can't |
227 | | //! be created directly. Rethrow as std::runtime_error so callers expecting it |
228 | | //! will still catch it. |
229 | | template <typename Input> |
230 | | void ThrowField(TypeList<std::exception>, InvokeContext& invoke_context, Input&& input) |
231 | | { |
232 | | auto data = input.get(); |
233 | | throw std::runtime_error(std::string(CharCast(data.begin()), data.size())); |
234 | | } |
235 | | |
236 | | //! Return whether to write a C++ value into a Cap'n Proto field. Returning |
237 | | //! false can be useful to map certain C++ values to unset Cap'n Proto fields. |
238 | | //! |
239 | | //! For example the bitcoin `Coin` class asserts false when a spent coin is |
240 | | //! serialized. But some C++ methods return these coins, so there needs to be a |
241 | | //! way to represent them in Cap'n Proto and a null Data field is a convenient |
242 | | //! representation. |
243 | | template <typename... Values> |
244 | | bool CustomHasValue(InvokeContext& invoke_context, const Values&... value) |
245 | 139 | { |
246 | 139 | return true; |
247 | 139 | } bool mp::CustomHasValue<int>(mp::InvokeContext&, int const&) Line | Count | Source | 245 | 4 | { | 246 | 4 | return true; | 247 | 4 | } |
bool mp::CustomHasValue<COutPoint>(mp::InvokeContext&, COutPoint const&) Line | Count | Source | 245 | 3 | { | 246 | 3 | return true; | 247 | 3 | } |
bool mp::CustomHasValue<UniValue>(mp::InvokeContext&, UniValue const&) Line | Count | Source | 245 | 15 | { | 246 | 15 | return true; | 247 | 15 | } |
bool mp::CustomHasValue<std::shared_ptr<CTransaction const>>(mp::InvokeContext&, std::shared_ptr<CTransaction const> const&) Line | Count | Source | 245 | 3 | { | 246 | 3 | return true; | 247 | 3 | } |
bool mp::CustomHasValue<CTransaction>(mp::InvokeContext&, CTransaction const&) Line | Count | Source | 245 | 4 | { | 246 | 4 | return true; | 247 | 4 | } |
bool mp::CustomHasValue<std::vector<char, std::allocator<char>>>(mp::InvokeContext&, std::vector<char, std::allocator<char>> const&) Line | Count | Source | 245 | 3 | { | 246 | 3 | return true; | 247 | 3 | } |
bool mp::CustomHasValue<CScript>(mp::InvokeContext&, CScript const&) Line | Count | Source | 245 | 3 | { | 246 | 3 | return true; | 247 | 3 | } |
bool mp::CustomHasValue<>(mp::InvokeContext&) Line | Count | Source | 245 | 46 | { | 246 | 46 | return true; | 247 | 46 | } |
bool mp::CustomHasValue<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::InvokeContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) Line | Count | Source | 245 | 38 | { | 246 | 38 | return true; | 247 | 38 | } |
bool mp::CustomHasValue<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>(mp::InvokeContext&, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>> const&) Line | Count | Source | 245 | 12 | { | 246 | 12 | return true; | 247 | 12 | } |
Unexecuted instantiation: bool mp::CustomHasValue<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>(mp::InvokeContext&, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>> const&) bool mp::CustomHasValue<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>(mp::InvokeContext&, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>> const&) Line | Count | Source | 245 | 8 | { | 246 | 8 | return true; | 247 | 8 | } |
Unexecuted instantiation: bool mp::CustomHasValue<uint256>(mp::InvokeContext&, uint256 const&) Unexecuted instantiation: bool mp::CustomHasValue<std::chrono::duration<double, std::ratio<1l, 1000l>>>(mp::InvokeContext&, std::chrono::duration<double, std::ratio<1l, 1000l>> const&) Unexecuted instantiation: bool mp::CustomHasValue<node::BlockCreateOptions>(mp::InvokeContext&, node::BlockCreateOptions const&) Unexecuted instantiation: bool mp::CustomHasValue<bool>(mp::InvokeContext&, bool const&) Unexecuted instantiation: bool mp::CustomHasValue<std::optional<unsigned long>>(mp::InvokeContext&, std::optional<unsigned long> const&) Unexecuted instantiation: bool mp::CustomHasValue<unsigned long>(mp::InvokeContext&, unsigned long const&) Unexecuted instantiation: bool mp::CustomHasValue<CBlock>(mp::InvokeContext&, CBlock const&) Unexecuted instantiation: bool mp::CustomHasValue<node::BlockCheckOptions>(mp::InvokeContext&, node::BlockCheckOptions const&) Unexecuted instantiation: bool mp::CustomHasValue<unsigned int>(mp::InvokeContext&, unsigned int const&) Unexecuted instantiation: bool mp::CustomHasValue<node::BlockWaitOptions>(mp::InvokeContext&, node::BlockWaitOptions const&) Unexecuted instantiation: bool mp::CustomHasValue<long>(mp::InvokeContext&, long const&) Unexecuted instantiation: bool mp::CustomHasValue<std::optional<interfaces::BlockRef>>(mp::InvokeContext&, std::optional<interfaces::BlockRef> const&) Unexecuted instantiation: bool mp::CustomHasValue<interfaces::BlockRef>(mp::InvokeContext&, interfaces::BlockRef const&) Unexecuted instantiation: bool mp::CustomHasValue<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>(mp::InvokeContext&, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>> const&) Unexecuted instantiation: bool mp::CustomHasValue<CBlockHeader>(mp::InvokeContext&, CBlockHeader const&) Unexecuted instantiation: bool mp::CustomHasValue<std::vector<long, std::allocator<long>>>(mp::InvokeContext&, std::vector<long, std::allocator<long>> const&) Unexecuted instantiation: bool mp::CustomHasValue<node::CoinbaseTx>(mp::InvokeContext&, node::CoinbaseTx const&) Unexecuted instantiation: bool mp::CustomHasValue<std::optional<uint256>>(mp::InvokeContext&, std::optional<uint256> const&) Unexecuted instantiation: bool mp::CustomHasValue<std::vector<CTxOut, std::allocator<CTxOut>>>(mp::InvokeContext&, std::vector<CTxOut, std::allocator<CTxOut>> const&) Unexecuted instantiation: bool mp::CustomHasValue<CTxOut>(mp::InvokeContext&, CTxOut const&) Unexecuted instantiation: bool mp::CustomHasValue<std::vector<uint256, std::allocator<uint256>>>(mp::InvokeContext&, std::vector<uint256, std::allocator<uint256>> const&) |
248 | | |
249 | | template <typename... LocalTypes, typename Context, typename... Values, typename Output> |
250 | | void BuildField(TypeList<LocalTypes...>, Context& context, Output&& output, Values&&... values) |
251 | 139 | { |
252 | 139 | if (CustomHasValue(context, values...)) { |
253 | 139 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., |
254 | 139 | std::forward<Output>(output)); |
255 | 139 | } |
256 | 139 | } void mp::BuildField<int, mp::ClientInvokeContext, int, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>>(mp::TypeList<int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&&, int&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<int, mp::ClientInvokeContext, int, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>>(mp::TypeList<int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&&, int&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<COutPoint, mp::ClientInvokeContext, COutPoint, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>>(mp::TypeList<COutPoint>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&&, COutPoint&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<UniValue, mp::ClientInvokeContext, UniValue, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>>(mp::TypeList<UniValue>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&&, UniValue&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<std::shared_ptr<CTransaction const>, mp::ClientInvokeContext, std::shared_ptr<CTransaction const>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&&, std::shared_ptr<CTransaction const>&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<CTransaction const, mp::InvokeContext, CTransaction const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&>(mp::TypeList<CTransaction const>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, CTransaction const&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<CTransaction, mp::InvokeContext, CTransaction const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&>(mp::TypeList<CTransaction>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, CTransaction const&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<std::vector<char, std::allocator<char>>, mp::ClientInvokeContext, std::vector<char, std::allocator<char>>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>>(mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&&, std::vector<char, std::allocator<char>>&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<CScript, mp::ClientInvokeContext, CScript, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>>(mp::TypeList<CScript>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&&, CScript&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<int&&, mp::InvokeContext, int, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, gen::FooInterface::AddResults::Builder>>(mp::TypeList<int&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, gen::FooInterface::AddResults::Builder>&&, int&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<int, mp::InvokeContext, int, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, gen::FooInterface::AddResults::Builder>&>(mp::TypeList<int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, gen::FooInterface::AddResults::Builder>&, int&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<COutPoint&&, mp::InvokeContext, COutPoint, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassOutPointResults::Builder>>(mp::TypeList<COutPoint&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassOutPointResults::Builder>&&, COutPoint&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<COutPoint, mp::InvokeContext, COutPoint, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassOutPointResults::Builder>&>(mp::TypeList<COutPoint>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassOutPointResults::Builder>&, COutPoint&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<UniValue&&, mp::InvokeContext, UniValue, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassUniValueResults::Builder>>(mp::TypeList<UniValue&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassUniValueResults::Builder>&&, UniValue&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<UniValue, mp::InvokeContext, UniValue, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassUniValueResults::Builder>&>(mp::TypeList<UniValue>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassUniValueResults::Builder>&, UniValue&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<std::shared_ptr<CTransaction const>&&, mp::InvokeContext, std::shared_ptr<CTransaction const>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassTransactionResults::Builder>>(mp::TypeList<std::shared_ptr<CTransaction const>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassTransactionResults::Builder>&&, std::shared_ptr<CTransaction const>&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<std::shared_ptr<CTransaction const>, mp::InvokeContext, std::shared_ptr<CTransaction const>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassTransactionResults::Builder>&>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassTransactionResults::Builder>&, std::shared_ptr<CTransaction const>&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<CTransaction const, mp::InvokeContext, CTransaction const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassTransactionResults::Builder>&>(mp::TypeList<CTransaction const>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassTransactionResults::Builder>&, CTransaction const&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<CTransaction, mp::InvokeContext, CTransaction const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassTransactionResults::Builder>&>(mp::TypeList<CTransaction>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassTransactionResults::Builder>&, CTransaction const&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<std::vector<char, std::allocator<char>>&&, mp::InvokeContext, std::vector<char, std::allocator<char>>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassVectorCharResults::Builder>>(mp::TypeList<std::vector<char, std::allocator<char>>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassVectorCharResults::Builder>&&, std::vector<char, std::allocator<char>>&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<std::vector<char, std::allocator<char>>, mp::InvokeContext, std::vector<char, std::allocator<char>>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassVectorCharResults::Builder>&>(mp::TypeList<std::vector<char, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassVectorCharResults::Builder>&, std::vector<char, std::allocator<char>>&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<CScript&&, mp::InvokeContext, CScript, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassScriptResults::Builder>>(mp::TypeList<CScript&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassScriptResults::Builder>&&, CScript&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<CScript, mp::InvokeContext, CScript, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassScriptResults::Builder>&>(mp::TypeList<CScript>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, gen::FooInterface::PassScriptResults::Builder>&, CScript&&) Line | Count | Source | 251 | 1 | { | 252 | 1 | if (CustomHasValue(context, values...)) { | 253 | 1 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 1 | std::forward<Output>(output)); | 255 | 1 | } | 256 | 1 | } |
void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>&&) Line | Count | Source | 251 | 10 | { | 252 | 10 | if (CustomHasValue(context, values...)) { | 253 | 10 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 10 | std::forward<Output>(output)); | 255 | 10 | } | 256 | 10 | } |
void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>&&) Line | Count | Source | 251 | 6 | { | 252 | 6 | if (CustomHasValue(context, values...)) { | 253 | 6 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 6 | std::forward<Output>(output)); | 255 | 6 | } | 256 | 6 | } |
Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>&&) void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>&&) Line | Count | Source | 251 | 4 | { | 252 | 4 | if (CustomHasValue(context, values...)) { | 253 | 4 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 4 | std::forward<Output>(output)); | 255 | 4 | } | 256 | 4 | } |
void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>&&) Line | Count | Source | 251 | 6 | { | 252 | 6 | if (CustomHasValue(context, values...)) { | 253 | 6 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 6 | std::forward<Output>(output)); | 255 | 6 | } | 256 | 6 | } |
void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&&) Line | Count | Source | 251 | 6 | { | 252 | 6 | if (CustomHasValue(context, values...)) { | 253 | 6 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 6 | std::forward<Output>(output)); | 255 | 6 | } | 256 | 6 | } |
void mp::BuildField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::ClientInvokeContext, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) Line | Count | Source | 251 | 6 | { | 252 | 6 | if (CustomHasValue(context, values...)) { | 253 | 6 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 6 | std::forward<Output>(output)); | 255 | 6 | } | 256 | 6 | } |
void mp::BuildField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const, mp::InvokeContext, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) Line | Count | Source | 251 | 6 | { | 252 | 6 | if (CustomHasValue(context, values...)) { | 253 | 6 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 6 | std::forward<Output>(output)); | 255 | 6 | } | 256 | 6 | } |
void mp::BuildField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::InvokeContext, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) Line | Count | Source | 251 | 6 | { | 252 | 6 | if (CustomHasValue(context, values...)) { | 253 | 6 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 6 | std::forward<Output>(output)); | 255 | 6 | } | 256 | 6 | } |
void mp::BuildField<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>, mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, ipc::capnp::messages::Init::ConstructResults::Builder>>(mp::TypeList<>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>&, mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, ipc::capnp::messages::Init::ConstructResults::Builder>&&) Line | Count | Source | 251 | 10 | { | 252 | 10 | if (CustomHasValue(context, values...)) { | 253 | 10 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 10 | std::forward<Output>(output)); | 255 | 10 | } | 256 | 10 | } |
void mp::BuildField<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&&, mp::InvokeContext, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeEchoResults::Builder>>(mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeEchoResults::Builder>&&, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&&) Line | Count | Source | 251 | 6 | { | 252 | 6 | if (CustomHasValue(context, values...)) { | 253 | 6 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 6 | std::forward<Output>(output)); | 255 | 6 | } | 256 | 6 | } |
void mp::BuildField<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>, mp::InvokeContext, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeEchoResults::Builder>&>(mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeEchoResults::Builder>&, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&&) Line | Count | Source | 251 | 6 | { | 252 | 6 | if (CustomHasValue(context, values...)) { | 253 | 6 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 6 | std::forward<Output>(output)); | 255 | 6 | } | 256 | 6 | } |
Unexecuted instantiation: void mp::BuildField<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&&, mp::InvokeContext, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeMiningResults::Builder>>(mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeMiningResults::Builder>&&, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&&) Unexecuted instantiation: void mp::BuildField<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>, mp::InvokeContext, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeMiningResults::Builder>&>(mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeMiningResults::Builder>&, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&&) void mp::BuildField<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&&, mp::InvokeContext, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeRpcResults::Builder>>(mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeRpcResults::Builder>&&, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&&) Line | Count | Source | 251 | 4 | { | 252 | 4 | if (CustomHasValue(context, values...)) { | 253 | 4 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 4 | std::forward<Output>(output)); | 255 | 4 | } | 256 | 4 | } |
void mp::BuildField<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>, mp::InvokeContext, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeRpcResults::Builder>&>(mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, ipc::capnp::messages::Init::MakeRpcResults::Builder>&, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&&) Line | Count | Source | 251 | 4 | { | 252 | 4 | if (CustomHasValue(context, values...)) { | 253 | 4 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 4 | std::forward<Output>(output)); | 255 | 4 | } | 256 | 4 | } |
Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>&&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>&&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>&&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&&) Unexecuted instantiation: void mp::BuildField<uint256, mp::ClientInvokeContext, uint256, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>>(mp::TypeList<uint256>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, uint256&&) Unexecuted instantiation: void mp::BuildField<std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::ClientInvokeContext, std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>>(mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, std::chrono::duration<double, std::ratio<1l, 1000l>>&&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&&) Unexecuted instantiation: void mp::BuildField<node::BlockCreateOptions const&, mp::ClientInvokeContext, node::BlockCreateOptions const&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>>(mp::TypeList<node::BlockCreateOptions const&>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&&, node::BlockCreateOptions const&) Unexecuted instantiation: void mp::BuildField<node::BlockCreateOptions const, mp::InvokeContext, node::BlockCreateOptions const&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&>(mp::TypeList<node::BlockCreateOptions const>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, node::BlockCreateOptions const&) Unexecuted instantiation: void mp::BuildField<node::BlockCreateOptions, mp::InvokeContext, node::BlockCreateOptions const&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&>(mp::TypeList<node::BlockCreateOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, node::BlockCreateOptions const&) Unexecuted instantiation: void mp::BuildField<bool, mp::InvokeContext, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::UseMempool, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::UseMempool, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&, bool const&) Unexecuted instantiation: void mp::BuildField<std::optional<unsigned long>, mp::InvokeContext, std::optional<unsigned long> const&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&>(mp::TypeList<std::optional<unsigned long>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&, std::optional<unsigned long> const&) Unexecuted instantiation: void mp::BuildField<unsigned long, mp::InvokeContext, unsigned long const&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&>(mp::TypeList<unsigned long>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&, unsigned long const&) Unexecuted instantiation: void mp::BuildField<unsigned long, mp::InvokeContext, unsigned long const&, mp::StructField<mp::Accessor<mp::mining_fields::CoinbaseOutputMaxAdditionalSigops, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&>(mp::TypeList<unsigned long>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CoinbaseOutputMaxAdditionalSigops, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&, unsigned long const&) Unexecuted instantiation: void mp::BuildField<bool, mp::ClientInvokeContext, bool, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>>(mp::TypeList<bool>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&&, bool&&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&&) Unexecuted instantiation: void mp::BuildField<CBlock const&, mp::ClientInvokeContext, CBlock const&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>>(mp::TypeList<CBlock const&>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&&, CBlock const&) Unexecuted instantiation: void mp::BuildField<CBlock const, mp::InvokeContext, CBlock const&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&>(mp::TypeList<CBlock const>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, CBlock const&) Unexecuted instantiation: void mp::BuildField<CBlock, mp::InvokeContext, CBlock const&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&>(mp::TypeList<CBlock>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, CBlock const&) Unexecuted instantiation: void mp::BuildField<node::BlockCheckOptions const&, mp::ClientInvokeContext, node::BlockCheckOptions const&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>>(mp::TypeList<node::BlockCheckOptions const&>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&&, node::BlockCheckOptions const&) Unexecuted instantiation: void mp::BuildField<node::BlockCheckOptions const, mp::InvokeContext, node::BlockCheckOptions const&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&>(mp::TypeList<node::BlockCheckOptions const>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, node::BlockCheckOptions const&) Unexecuted instantiation: void mp::BuildField<node::BlockCheckOptions, mp::InvokeContext, node::BlockCheckOptions const&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&>(mp::TypeList<node::BlockCheckOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, node::BlockCheckOptions const&) Unexecuted instantiation: void mp::BuildField<bool, mp::InvokeContext, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::CheckMerkleRoot, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>&>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CheckMerkleRoot, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>&, bool const&) Unexecuted instantiation: void mp::BuildField<bool, mp::InvokeContext, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::CheckPow, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>&>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CheckPow, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>&, bool const&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>&&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>&&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>&&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&) Unexecuted instantiation: void mp::BuildField<unsigned int, mp::ClientInvokeContext, unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<unsigned int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, unsigned int&&) Unexecuted instantiation: void mp::BuildField<unsigned int, mp::ClientInvokeContext, unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<unsigned int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, unsigned int&&) Unexecuted instantiation: void mp::BuildField<unsigned int, mp::ClientInvokeContext, unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<unsigned int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, unsigned int&&) Unexecuted instantiation: void mp::BuildField<std::shared_ptr<CTransaction const>, mp::ClientInvokeContext, std::shared_ptr<CTransaction const>, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, std::shared_ptr<CTransaction const>&&) Unexecuted instantiation: void mp::BuildField<CTransaction const, mp::InvokeContext, CTransaction const&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&>(mp::TypeList<CTransaction const>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, CTransaction const&) Unexecuted instantiation: void mp::BuildField<CTransaction, mp::InvokeContext, CTransaction const&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&>(mp::TypeList<CTransaction>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, CTransaction const&) Unexecuted instantiation: void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&&) Unexecuted instantiation: void mp::BuildField<node::BlockWaitOptions, mp::ClientInvokeContext, node::BlockWaitOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>>(mp::TypeList<node::BlockWaitOptions>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&&, node::BlockWaitOptions&&) Unexecuted instantiation: void mp::BuildField<std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::InvokeContext, std::chrono::duration<double, std::ratio<1l, 1000l>>&, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 3>, ipc::capnp::messages::BlockWaitOptions::Builder>&>(mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 3>, ipc::capnp::messages::BlockWaitOptions::Builder>&, std::chrono::duration<double, std::ratio<1l, 1000l>>&) Unexecuted instantiation: void mp::BuildField<long, mp::InvokeContext, long&, mp::StructField<mp::Accessor<mp::mining_fields::FeeThreshold, 3>, ipc::capnp::messages::BlockWaitOptions::Builder>&>(mp::TypeList<long>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::FeeThreshold, 3>, ipc::capnp::messages::BlockWaitOptions::Builder>&, long&) Unexecuted instantiation: void mp::BuildField<bool&&, mp::InvokeContext, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsTestChainResults::Builder>>(mp::TypeList<bool&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsTestChainResults::Builder>&&, bool&&) Unexecuted instantiation: void mp::BuildField<bool, mp::InvokeContext, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsTestChainResults::Builder>&>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsTestChainResults::Builder>&, bool&&) Unexecuted instantiation: void mp::BuildField<bool&&, mp::InvokeContext, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults::Builder>>(mp::TypeList<bool&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults::Builder>&&, bool&&) Unexecuted instantiation: void mp::BuildField<bool, mp::InvokeContext, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults::Builder>&>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults::Builder>&, bool&&) Unexecuted instantiation: void mp::BuildField<std::optional<interfaces::BlockRef>&&, mp::InvokeContext, std::optional<interfaces::BlockRef>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, ipc::capnp::messages::Mining::GetTipResults::Builder>>(mp::TypeList<std::optional<interfaces::BlockRef>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, ipc::capnp::messages::Mining::GetTipResults::Builder>&&, std::optional<interfaces::BlockRef>&&) Unexecuted instantiation: void mp::BuildField<std::optional<interfaces::BlockRef>, mp::InvokeContext, std::optional<interfaces::BlockRef>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, ipc::capnp::messages::Mining::GetTipResults::Builder>&>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, ipc::capnp::messages::Mining::GetTipResults::Builder>&, std::optional<interfaces::BlockRef>&&) Unexecuted instantiation: void mp::BuildField<interfaces::BlockRef, mp::InvokeContext, interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, ipc::capnp::messages::Mining::GetTipResults::Builder>&>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, ipc::capnp::messages::Mining::GetTipResults::Builder>&, interfaces::BlockRef&&) Unexecuted instantiation: void mp::BuildField<uint256, mp::InvokeContext, uint256&, mp::StructField<mp::Accessor<mp::common_fields::Hash, 19>, ipc::capnp::messages::BlockRef::Builder>&>(mp::TypeList<uint256>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::common_fields::Hash, 19>, ipc::capnp::messages::BlockRef::Builder>&, uint256&) Unexecuted instantiation: void mp::BuildField<int, mp::InvokeContext, int&, mp::StructField<mp::Accessor<mp::common_fields::Height, 3>, ipc::capnp::messages::BlockRef::Builder>&>(mp::TypeList<int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::common_fields::Height, 3>, ipc::capnp::messages::BlockRef::Builder>&, int&) Unexecuted instantiation: void mp::BuildField<std::optional<interfaces::BlockRef>&&, mp::InvokeContext, std::optional<interfaces::BlockRef>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>>(mp::TypeList<std::optional<interfaces::BlockRef>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>&&, std::optional<interfaces::BlockRef>&&) Unexecuted instantiation: void mp::BuildField<std::optional<interfaces::BlockRef>, mp::InvokeContext, std::optional<interfaces::BlockRef>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>&>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>&, std::optional<interfaces::BlockRef>&&) Unexecuted instantiation: void mp::BuildField<interfaces::BlockRef, mp::InvokeContext, interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>&>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>&, interfaces::BlockRef&&) Unexecuted instantiation: void mp::BuildField<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&&, mp::InvokeContext, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>>(mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>&&, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&&) Unexecuted instantiation: void mp::BuildField<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>, mp::InvokeContext, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>&>(mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>&, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&&) Unexecuted instantiation: void mp::BuildField<bool&&, mp::InvokeContext, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>>(mp::TypeList<bool&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&&, bool&&) Unexecuted instantiation: void mp::BuildField<bool, mp::InvokeContext, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&, bool&&) Unexecuted instantiation: void mp::BuildField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::InvokeContext, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Unexecuted instantiation: void mp::BuildField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::InvokeContext, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Unexecuted instantiation: void mp::BuildField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::InvokeContext, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Unexecuted instantiation: void mp::BuildField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::InvokeContext, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Unexecuted instantiation: void mp::BuildField<CBlockHeader&&, mp::InvokeContext, CBlockHeader, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults::Builder>>(mp::TypeList<CBlockHeader&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults::Builder>&&, CBlockHeader&&) Unexecuted instantiation: void mp::BuildField<CBlockHeader, mp::InvokeContext, CBlockHeader, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults::Builder>&>(mp::TypeList<CBlockHeader>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults::Builder>&, CBlockHeader&&) Unexecuted instantiation: void mp::BuildField<CBlock&&, mp::InvokeContext, CBlock, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockResults::Builder>>(mp::TypeList<CBlock&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockResults::Builder>&&, CBlock&&) Unexecuted instantiation: void mp::BuildField<CBlock, mp::InvokeContext, CBlock, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockResults::Builder>&>(mp::TypeList<CBlock>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetBlockResults::Builder>&, CBlock&&) Unexecuted instantiation: void mp::BuildField<std::vector<long, std::allocator<long>>&&, mp::InvokeContext, std::vector<long, std::allocator<long>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxFeesResults::Builder>>(mp::TypeList<std::vector<long, std::allocator<long>>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxFeesResults::Builder>&&, std::vector<long, std::allocator<long>>&&) Unexecuted instantiation: void mp::BuildField<std::vector<long, std::allocator<long>>, mp::InvokeContext, std::vector<long, std::allocator<long>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxFeesResults::Builder>&>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxFeesResults::Builder>&, std::vector<long, std::allocator<long>>&&) Unexecuted instantiation: void mp::BuildField<long, mp::InvokeContext, long&, mp::ListOutput<capnp::List<long, (capnp::Kind)0>>>(mp::TypeList<long>, mp::InvokeContext&, mp::ListOutput<capnp::List<long, (capnp::Kind)0>>&&, long&) Unexecuted instantiation: void mp::BuildField<std::vector<long, std::allocator<long>>&&, mp::InvokeContext, std::vector<long, std::allocator<long>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults::Builder>>(mp::TypeList<std::vector<long, std::allocator<long>>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults::Builder>&&, std::vector<long, std::allocator<long>>&&) Unexecuted instantiation: void mp::BuildField<std::vector<long, std::allocator<long>>, mp::InvokeContext, std::vector<long, std::allocator<long>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults::Builder>&>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults::Builder>&, std::vector<long, std::allocator<long>>&&) Unexecuted instantiation: void mp::BuildField<node::CoinbaseTx&&, mp::InvokeContext, node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults::Builder>>(mp::TypeList<node::CoinbaseTx&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults::Builder>&&, node::CoinbaseTx&&) Unexecuted instantiation: void mp::BuildField<node::CoinbaseTx, mp::InvokeContext, node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults::Builder>&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults::Builder>&, node::CoinbaseTx&&) Unexecuted instantiation: void mp::BuildField<unsigned int, mp::InvokeContext, unsigned int&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&>(mp::TypeList<unsigned int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&, unsigned int&) Unexecuted instantiation: void mp::BuildField<unsigned int, mp::InvokeContext, unsigned int&, mp::StructField<mp::Accessor<mp::mining_fields::Sequence, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&>(mp::TypeList<unsigned int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Sequence, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&, unsigned int&) Unexecuted instantiation: void mp::BuildField<CScript, mp::InvokeContext, CScript&, mp::StructField<mp::Accessor<mp::mining_fields::ScriptSigPrefix, 19>, ipc::capnp::messages::CoinbaseTx::Builder>&>(mp::TypeList<CScript>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::ScriptSigPrefix, 19>, ipc::capnp::messages::CoinbaseTx::Builder>&, CScript&) Unexecuted instantiation: void mp::BuildField<std::optional<uint256>, mp::InvokeContext, std::optional<uint256>&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Builder>&>(mp::TypeList<std::optional<uint256>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Builder>&, std::optional<uint256>&) Unexecuted instantiation: void mp::BuildField<uint256, mp::InvokeContext, uint256&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Builder>&>(mp::TypeList<uint256>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Witness, 19>, ipc::capnp::messages::CoinbaseTx::Builder>&, uint256&) Unexecuted instantiation: void mp::BuildField<long, mp::InvokeContext, long&, mp::StructField<mp::Accessor<mp::mining_fields::BlockRewardRemaining, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&>(mp::TypeList<long>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::BlockRewardRemaining, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&, long&) Unexecuted instantiation: void mp::BuildField<std::vector<CTxOut, std::allocator<CTxOut>>, mp::InvokeContext, std::vector<CTxOut, std::allocator<CTxOut>>&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Builder>&>(mp::TypeList<std::vector<CTxOut, std::allocator<CTxOut>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::RequiredOutputs, 19>, ipc::capnp::messages::CoinbaseTx::Builder>&, std::vector<CTxOut, std::allocator<CTxOut>>&) Unexecuted instantiation: void mp::BuildField<CTxOut, mp::InvokeContext, CTxOut&, mp::ListOutput<capnp::List<capnp::Data, (capnp::Kind)1>>>(mp::TypeList<CTxOut>, mp::InvokeContext&, mp::ListOutput<capnp::List<capnp::Data, (capnp::Kind)1>>&&, CTxOut&) Unexecuted instantiation: void mp::BuildField<unsigned int, mp::InvokeContext, unsigned int&, mp::StructField<mp::Accessor<mp::mining_fields::LockTime, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&>(mp::TypeList<unsigned int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::LockTime, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&, unsigned int&) Unexecuted instantiation: void mp::BuildField<std::vector<uint256, std::allocator<uint256>>&&, mp::InvokeContext, std::vector<uint256, std::allocator<uint256>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults::Builder>>(mp::TypeList<std::vector<uint256, std::allocator<uint256>>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults::Builder>&&, std::vector<uint256, std::allocator<uint256>>&&) Unexecuted instantiation: void mp::BuildField<std::vector<uint256, std::allocator<uint256>>, mp::InvokeContext, std::vector<uint256, std::allocator<uint256>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults::Builder>&>(mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults::Builder>&, std::vector<uint256, std::allocator<uint256>>&&) Unexecuted instantiation: void mp::BuildField<uint256, mp::InvokeContext, uint256&, mp::ListOutput<capnp::List<capnp::Data, (capnp::Kind)1>>>(mp::TypeList<uint256>, mp::InvokeContext&, mp::ListOutput<capnp::List<capnp::Data, (capnp::Kind)1>>&&, uint256&) Unexecuted instantiation: void mp::BuildField<bool&&, mp::InvokeContext, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>>(mp::TypeList<bool&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>&&, bool&&) Unexecuted instantiation: void mp::BuildField<bool, mp::InvokeContext, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>&>(mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>&, bool&&) Unexecuted instantiation: void mp::BuildField<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&&, mp::InvokeContext, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>>(mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>&&, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&&) Unexecuted instantiation: void mp::BuildField<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>, mp::InvokeContext, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>&>(mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>&, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&&) void mp::BuildField<mp::ClientInvokeContext, mp::StructField<mp::Accessor<mp::rpc_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>>(mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&) Line | Count | Source | 251 | 4 | { | 252 | 4 | if (CustomHasValue(context, values...)) { | 253 | 4 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 4 | std::forward<Output>(output)); | 255 | 4 | } | 256 | 4 | } |
void mp::BuildField<UniValue, mp::ClientInvokeContext, UniValue, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>>(mp::TypeList<UniValue>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, UniValue&&) Line | Count | Source | 251 | 4 | { | 252 | 4 | if (CustomHasValue(context, values...)) { | 253 | 4 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 4 | std::forward<Output>(output)); | 255 | 4 | } | 256 | 4 | } |
void mp::BuildField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ClientInvokeContext, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) Line | Count | Source | 251 | 4 | { | 252 | 4 | if (CustomHasValue(context, values...)) { | 253 | 4 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 4 | std::forward<Output>(output)); | 255 | 4 | } | 256 | 4 | } |
void mp::BuildField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ClientInvokeContext, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) Line | Count | Source | 251 | 4 | { | 252 | 4 | if (CustomHasValue(context, values...)) { | 253 | 4 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 4 | std::forward<Output>(output)); | 255 | 4 | } | 256 | 4 | } |
void mp::BuildField<UniValue&&, mp::InvokeContext, UniValue, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>>(mp::TypeList<UniValue&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>&&, UniValue&&) Line | Count | Source | 251 | 4 | { | 252 | 4 | if (CustomHasValue(context, values...)) { | 253 | 4 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 4 | std::forward<Output>(output)); | 255 | 4 | } | 256 | 4 | } |
void mp::BuildField<UniValue, mp::InvokeContext, UniValue, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>&>(mp::TypeList<UniValue>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>&, UniValue&&) Line | Count | Source | 251 | 4 | { | 252 | 4 | if (CustomHasValue(context, values...)) { | 253 | 4 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 4 | std::forward<Output>(output)); | 255 | 4 | } | 256 | 4 | } |
void mp::BuildField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&, mp::InvokeContext, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, ipc::capnp::messages::Echo::EchoResults::Builder>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, ipc::capnp::messages::Echo::EchoResults::Builder>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) Line | Count | Source | 251 | 6 | { | 252 | 6 | if (CustomHasValue(context, values...)) { | 253 | 6 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 6 | std::forward<Output>(output)); | 255 | 6 | } | 256 | 6 | } |
void mp::BuildField<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::InvokeContext, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, ipc::capnp::messages::Echo::EchoResults::Builder>&>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, ipc::capnp::messages::Echo::EchoResults::Builder>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) Line | Count | Source | 251 | 6 | { | 252 | 6 | if (CustomHasValue(context, values...)) { | 253 | 6 | CustomBuildField(TypeList<LocalTypes...>(), Priority<3>(), context, std::forward<Values>(values)..., | 254 | 6 | std::forward<Output>(output)); | 255 | 6 | } | 256 | 6 | } |
|
257 | | |
258 | | // Adapter that allows BuildField overloads to work with, set, and initialize list |
259 | | // elements as if they were fields of a struct. If BuildField is changed to use some |
260 | | // kind of accessor class instead of calling method pointers, then maybe this could |
261 | | // go away or be simplified, because there would no longer be a need to return |
262 | | // ListOutput method pointers emulating capnp struct method pointers. |
263 | | template <typename ListType> |
264 | | struct ListOutput; |
265 | | |
266 | | template <typename T, ::capnp::Kind kind> |
267 | | struct ListOutput<::capnp::List<T, kind>> |
268 | | { |
269 | | using Builder = typename ::capnp::List<T, kind>::Builder; |
270 | | |
271 | 0 | ListOutput(Builder& builder, size_t index) : m_builder(builder), m_index(index) {}Unexecuted instantiation: mp::ListOutput<capnp::List<long, (capnp::Kind)0>>::ListOutput(capnp::List<long, (capnp::Kind)0>::Builder&, unsigned long) Unexecuted instantiation: mp::ListOutput<capnp::List<capnp::Data, (capnp::Kind)1>>::ListOutput(capnp::List<capnp::Data, (capnp::Kind)1>::Builder&, unsigned long) |
272 | | Builder& m_builder; |
273 | | size_t m_index; |
274 | | |
275 | | // clang-format off |
276 | 0 | decltype(auto) get() const { return this->m_builder[this->m_index]; }Unexecuted instantiation: mp::ListOutput<capnp::List<long, (capnp::Kind)0>>::get() const Unexecuted instantiation: mp::ListOutput<capnp::List<capnp::Data, (capnp::Kind)1>>::get() const |
277 | | decltype(auto) init() const { return this->m_builder[this->m_index]; } |
278 | 0 | template<typename B = Builder, typename Arg> decltype(auto) set(Arg&& arg) const { return static_cast<B&>(this->m_builder).set(m_index, std::forward<Arg>(arg)); } |
279 | 0 | template<typename B = Builder, typename Arg> decltype(auto) init(Arg&& arg) const { return static_cast<B&>(this->m_builder).init(m_index, std::forward<Arg>(arg)); } |
280 | | // clang-format on |
281 | | }; |
282 | | |
283 | | template <typename LocalType, typename Value, typename Output> |
284 | | void CustomBuildField(TypeList<LocalType>, Priority<0>, InvokeContext& invoke_context, Value&& value, Output&& output) |
285 | 3 | { |
286 | 3 | output.set(BuildPrimitive(invoke_context, std::forward<Value>(value), TypeList<decltype(output.get())>())); |
287 | 3 | } void mp::CustomBuildField<int, int, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>>(mp::TypeList<int>, mp::Priority<0>, mp::InvokeContext&, int&&, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&&) Line | Count | Source | 285 | 1 | { | 286 | 1 | output.set(BuildPrimitive(invoke_context, std::forward<Value>(value), TypeList<decltype(output.get())>())); | 287 | 1 | } |
void mp::CustomBuildField<int, int, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>>(mp::TypeList<int>, mp::Priority<0>, mp::InvokeContext&, int&&, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&&) Line | Count | Source | 285 | 1 | { | 286 | 1 | output.set(BuildPrimitive(invoke_context, std::forward<Value>(value), TypeList<decltype(output.get())>())); | 287 | 1 | } |
void mp::CustomBuildField<int, int, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, gen::FooInterface::AddResults::Builder>&>(mp::TypeList<int>, mp::Priority<0>, mp::InvokeContext&, int&&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, gen::FooInterface::AddResults::Builder>&) Line | Count | Source | 285 | 1 | { | 286 | 1 | output.set(BuildPrimitive(invoke_context, std::forward<Value>(value), TypeList<decltype(output.get())>())); | 287 | 1 | } |
Unexecuted instantiation: void mp::CustomBuildField<bool, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::UseMempool, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&>(mp::TypeList<bool>, mp::Priority<0>, mp::InvokeContext&, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::UseMempool, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<unsigned long, unsigned long const&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&>(mp::TypeList<unsigned long>, mp::Priority<0>, mp::InvokeContext&, unsigned long const&, mp::StructField<mp::Accessor<mp::mining_fields::BlockReservedWeight, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<unsigned long, unsigned long const&, mp::StructField<mp::Accessor<mp::mining_fields::CoinbaseOutputMaxAdditionalSigops, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&>(mp::TypeList<unsigned long>, mp::Priority<0>, mp::InvokeContext&, unsigned long const&, mp::StructField<mp::Accessor<mp::mining_fields::CoinbaseOutputMaxAdditionalSigops, 3>, ipc::capnp::messages::BlockCreateOptions::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<bool, bool, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>>(mp::TypeList<bool>, mp::Priority<0>, mp::InvokeContext&, bool&&, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&&) Unexecuted instantiation: void mp::CustomBuildField<bool, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::CheckMerkleRoot, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>&>(mp::TypeList<bool>, mp::Priority<0>, mp::InvokeContext&, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::CheckMerkleRoot, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<bool, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::CheckPow, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>&>(mp::TypeList<bool>, mp::Priority<0>, mp::InvokeContext&, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::CheckPow, 3>, ipc::capnp::messages::BlockCheckOptions::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<unsigned int, unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<unsigned int>, mp::Priority<0>, mp::InvokeContext&, unsigned int&&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&) Unexecuted instantiation: void mp::CustomBuildField<unsigned int, unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<unsigned int>, mp::Priority<0>, mp::InvokeContext&, unsigned int&&, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&) Unexecuted instantiation: void mp::CustomBuildField<unsigned int, unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<unsigned int>, mp::Priority<0>, mp::InvokeContext&, unsigned int&&, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&) Unexecuted instantiation: void mp::CustomBuildField<long, long&, mp::StructField<mp::Accessor<mp::mining_fields::FeeThreshold, 3>, ipc::capnp::messages::BlockWaitOptions::Builder>&>(mp::TypeList<long>, mp::Priority<0>, mp::InvokeContext&, long&, mp::StructField<mp::Accessor<mp::mining_fields::FeeThreshold, 3>, ipc::capnp::messages::BlockWaitOptions::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<bool, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsTestChainResults::Builder>&>(mp::TypeList<bool>, mp::Priority<0>, mp::InvokeContext&, bool&&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsTestChainResults::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<bool, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults::Builder>&>(mp::TypeList<bool>, mp::Priority<0>, mp::InvokeContext&, bool&&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<int, int&, mp::StructField<mp::Accessor<mp::common_fields::Height, 3>, ipc::capnp::messages::BlockRef::Builder>&>(mp::TypeList<int>, mp::Priority<0>, mp::InvokeContext&, int&, mp::StructField<mp::Accessor<mp::common_fields::Height, 3>, ipc::capnp::messages::BlockRef::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<bool, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&>(mp::TypeList<bool>, mp::Priority<0>, mp::InvokeContext&, bool&&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<long, long&, mp::ListOutput<capnp::List<long, (capnp::Kind)0>>>(mp::TypeList<long>, mp::Priority<0>, mp::InvokeContext&, long&, mp::ListOutput<capnp::List<long, (capnp::Kind)0>>&&) Unexecuted instantiation: void mp::CustomBuildField<unsigned int, unsigned int&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&>(mp::TypeList<unsigned int>, mp::Priority<0>, mp::InvokeContext&, unsigned int&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<unsigned int, unsigned int&, mp::StructField<mp::Accessor<mp::mining_fields::Sequence, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&>(mp::TypeList<unsigned int>, mp::Priority<0>, mp::InvokeContext&, unsigned int&, mp::StructField<mp::Accessor<mp::mining_fields::Sequence, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<long, long&, mp::StructField<mp::Accessor<mp::mining_fields::BlockRewardRemaining, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&>(mp::TypeList<long>, mp::Priority<0>, mp::InvokeContext&, long&, mp::StructField<mp::Accessor<mp::mining_fields::BlockRewardRemaining, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<unsigned int, unsigned int&, mp::StructField<mp::Accessor<mp::mining_fields::LockTime, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&>(mp::TypeList<unsigned int>, mp::Priority<0>, mp::InvokeContext&, unsigned int&, mp::StructField<mp::Accessor<mp::mining_fields::LockTime, 3>, ipc::capnp::messages::CoinbaseTx::Builder>&) Unexecuted instantiation: void mp::CustomBuildField<bool, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>&>(mp::TypeList<bool>, mp::Priority<0>, mp::InvokeContext&, bool&&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>&) |
288 | | |
289 | | //! PassField override for callable interface reference arguments. |
290 | | template <typename Accessor, typename LocalType, typename ServerContext, typename Fn, typename... Args> |
291 | | auto PassField(Priority<1>, TypeList<LocalType&>, ServerContext& server_context, Fn&& fn, Args&&... args) |
292 | | -> Require<typename decltype(Accessor::get(server_context.call_context.getParams()))::Calls> |
293 | | { |
294 | | // Just create a temporary ProxyClient if argument is a reference to an |
295 | | // interface client. If argument needs to have a longer lifetime and not be |
296 | | // destroyed after this call, a CustomPassField overload can be implemented |
297 | | // to bypass this code, and a custom ProxyServerMethodTraits overload can be |
298 | | // implemented in order to read the capability pointer out of params and |
299 | | // construct a ProxyClient with a longer lifetime. |
300 | | const auto& params = server_context.call_context.getParams(); |
301 | | const auto& input = Make<StructField, Accessor>(params); |
302 | | using Interface = typename Decay<decltype(input.get())>::Calls; |
303 | | auto param = std::make_unique<ProxyClient<Interface>>(input.get(), server_context.proxy_server.m_context.connection, false); |
304 | | fn.invoke(server_context, std::forward<Args>(args)..., *param); |
305 | | } |
306 | | |
307 | | template <typename... Args> |
308 | | void MaybeBuildField(std::true_type, Args&&... args) |
309 | 61 | { |
310 | 61 | BuildField(std::forward<Args>(args)...); |
311 | 61 | } void mp::MaybeBuildField<mp::TypeList<int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, int>(std::integral_constant<bool, true>, mp::TypeList<int>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&&, int&&) Line | Count | Source | 309 | 1 | { | 310 | 1 | BuildField(std::forward<Args>(args)...); | 311 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, int>(std::integral_constant<bool, true>, mp::TypeList<int>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&&, int&&) Line | Count | Source | 309 | 1 | { | 310 | 1 | BuildField(std::forward<Args>(args)...); | 311 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<COutPoint>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, COutPoint>(std::integral_constant<bool, true>, mp::TypeList<COutPoint>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&&, COutPoint&&) Line | Count | Source | 309 | 1 | { | 310 | 1 | BuildField(std::forward<Args>(args)...); | 311 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<UniValue>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, UniValue>(std::integral_constant<bool, true>, mp::TypeList<UniValue>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&&, UniValue&&) Line | Count | Source | 309 | 1 | { | 310 | 1 | BuildField(std::forward<Args>(args)...); | 311 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, std::shared_ptr<CTransaction const>>(std::integral_constant<bool, true>, mp::TypeList<std::shared_ptr<CTransaction const>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&&, std::shared_ptr<CTransaction const>&&) Line | Count | Source | 309 | 1 | { | 310 | 1 | BuildField(std::forward<Args>(args)...); | 311 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, std::vector<char, std::allocator<char>>>(std::integral_constant<bool, true>, mp::TypeList<std::vector<char, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&&, std::vector<char, std::allocator<char>>&&) Line | Count | Source | 309 | 1 | { | 310 | 1 | BuildField(std::forward<Args>(args)...); | 311 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<CScript>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, CScript>(std::integral_constant<bool, true>, mp::TypeList<CScript>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&&, CScript&&) Line | Count | Source | 309 | 1 | { | 310 | 1 | BuildField(std::forward<Args>(args)...); | 311 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>&&) Line | Count | Source | 309 | 10 | { | 310 | 10 | BuildField(std::forward<Args>(args)...); | 311 | 10 | } |
void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>&&) Line | Count | Source | 309 | 6 | { | 310 | 6 | BuildField(std::forward<Args>(args)...); | 311 | 6 | } |
Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>&&) void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>&&) Line | Count | Source | 309 | 4 | { | 310 | 4 | BuildField(std::forward<Args>(args)...); | 311 | 4 | } |
void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>&&) Line | Count | Source | 309 | 6 | { | 310 | 6 | BuildField(std::forward<Args>(args)...); | 311 | 6 | } |
void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&&) Line | Count | Source | 309 | 6 | { | 310 | 6 | BuildField(std::forward<Args>(args)...); | 311 | 6 | } |
void mp::MaybeBuildField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(std::integral_constant<bool, true>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) Line | Count | Source | 309 | 6 | { | 310 | 6 | BuildField(std::forward<Args>(args)...); | 311 | 6 | } |
Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<uint256>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, uint256>(std::integral_constant<bool, true>, mp::TypeList<uint256>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, uint256&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, std::chrono::duration<double, std::ratio<1l, 1000l>>>(std::integral_constant<bool, true>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, std::chrono::duration<double, std::ratio<1l, 1000l>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<node::BlockCreateOptions const&>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, node::BlockCreateOptions const&>(std::integral_constant<bool, true>, mp::TypeList<node::BlockCreateOptions const&>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&&, node::BlockCreateOptions const&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<bool>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, bool>(std::integral_constant<bool, true>, mp::TypeList<bool>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&&, bool&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<CBlock const&>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, CBlock const&>(std::integral_constant<bool, true>, mp::TypeList<CBlock const&>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&&, CBlock const&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<node::BlockCheckOptions const&>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, node::BlockCheckOptions const&>(std::integral_constant<bool, true>, mp::TypeList<node::BlockCheckOptions const&>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&&, node::BlockCheckOptions const&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<unsigned int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, unsigned int>(std::integral_constant<bool, true>, mp::TypeList<unsigned int>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, unsigned int&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<unsigned int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, unsigned int>(std::integral_constant<bool, true>, mp::TypeList<unsigned int>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, unsigned int&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<unsigned int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, unsigned int>(std::integral_constant<bool, true>, mp::TypeList<unsigned int>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, unsigned int&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, std::shared_ptr<CTransaction const>>(std::integral_constant<bool, true>, mp::TypeList<std::shared_ptr<CTransaction const>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, std::shared_ptr<CTransaction const>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<node::BlockWaitOptions>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, node::BlockWaitOptions>(std::integral_constant<bool, true>, mp::TypeList<node::BlockWaitOptions>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&&, node::BlockWaitOptions&&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(std::integral_constant<bool, true>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(std::integral_constant<bool, true>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) void mp::MaybeBuildField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&) Line | Count | Source | 309 | 4 | { | 310 | 4 | BuildField(std::forward<Args>(args)...); | 311 | 4 | } |
void mp::MaybeBuildField<mp::TypeList<UniValue>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, UniValue>(std::integral_constant<bool, true>, mp::TypeList<UniValue>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, UniValue&&) Line | Count | Source | 309 | 4 | { | 310 | 4 | BuildField(std::forward<Args>(args)...); | 311 | 4 | } |
void mp::MaybeBuildField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(std::integral_constant<bool, true>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) Line | Count | Source | 309 | 4 | { | 310 | 4 | BuildField(std::forward<Args>(args)...); | 311 | 4 | } |
void mp::MaybeBuildField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(std::integral_constant<bool, true>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) Line | Count | Source | 309 | 4 | { | 310 | 4 | BuildField(std::forward<Args>(args)...); | 311 | 4 | } |
|
312 | | template <typename... Args> |
313 | | void MaybeBuildField(std::false_type, Args&&...) |
314 | 51 | { |
315 | 51 | } void mp::MaybeBuildField<mp::TypeList<int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, int&>(std::integral_constant<bool, false>, mp::TypeList<int>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&&, int&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<COutPoint>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, COutPoint&>(std::integral_constant<bool, false>, mp::TypeList<COutPoint>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&&, COutPoint&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<UniValue>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, UniValue&>(std::integral_constant<bool, false>, mp::TypeList<UniValue>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&&, UniValue&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, std::shared_ptr<CTransaction const>&>(std::integral_constant<bool, false>, mp::TypeList<std::shared_ptr<CTransaction const>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&&, std::shared_ptr<CTransaction const>&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, std::vector<char, std::allocator<char>>&>(std::integral_constant<bool, false>, mp::TypeList<std::vector<char, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&&, std::vector<char, std::allocator<char>>&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<CScript>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, CScript&>(std::integral_constant<bool, false>, mp::TypeList<CScript>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&&, CScript&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, gen::FooInterface::AddResults::Builder>, int&>(std::integral_constant<bool, false>, mp::TypeList<int>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, gen::FooInterface::AddResults::Builder>&&, int&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, gen::FooInterface::AddResults::Builder>, int&>(std::integral_constant<bool, false>, mp::TypeList<int>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, gen::FooInterface::AddResults::Builder>&&, int&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<COutPoint>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassOutPointResults::Builder>, COutPoint&>(std::integral_constant<bool, false>, mp::TypeList<COutPoint>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassOutPointResults::Builder>&&, COutPoint&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<UniValue>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassUniValueResults::Builder>, UniValue&>(std::integral_constant<bool, false>, mp::TypeList<UniValue>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassUniValueResults::Builder>&&, UniValue&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<std::shared_ptr<CTransaction const>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionResults::Builder>, std::shared_ptr<CTransaction const>&>(std::integral_constant<bool, false>, mp::TypeList<std::shared_ptr<CTransaction const>>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionResults::Builder>&&, std::shared_ptr<CTransaction const>&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<std::vector<char, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassVectorCharResults::Builder>, std::vector<char, std::allocator<char>>&>(std::integral_constant<bool, false>, mp::TypeList<std::vector<char, std::allocator<char>>>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassVectorCharResults::Builder>&&, std::vector<char, std::allocator<char>>&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<CScript>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassScriptResults::Builder>, CScript&>(std::integral_constant<bool, false>, mp::TypeList<CScript>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassScriptResults::Builder>&&, CScript&) Line | Count | Source | 314 | 1 | { | 315 | 1 | } |
void mp::MaybeBuildField<mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>(std::integral_constant<bool, false>, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>&&, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&) Line | Count | Source | 314 | 6 | { | 315 | 6 | } |
Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>(std::integral_constant<bool, false>, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>&&, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&) void mp::MaybeBuildField<mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>(std::integral_constant<bool, false>, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>&&, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&) Line | Count | Source | 314 | 4 | { | 315 | 4 | } |
void mp::MaybeBuildField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(std::integral_constant<bool, false>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Line | Count | Source | 314 | 6 | { | 315 | 6 | } |
Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<bool>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>, bool&>(std::integral_constant<bool, false>, mp::TypeList<bool>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>&&, bool&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<bool>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>, bool&>(std::integral_constant<bool, false>, mp::TypeList<bool>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>&&, bool&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::optional<interfaces::BlockRef>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>, std::optional<interfaces::BlockRef>&>(std::integral_constant<bool, false>, mp::TypeList<std::optional<interfaces::BlockRef>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>&&, std::optional<interfaces::BlockRef>&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::optional<interfaces::BlockRef>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, std::optional<interfaces::BlockRef>&>(std::integral_constant<bool, false>, mp::TypeList<std::optional<interfaces::BlockRef>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, std::optional<interfaces::BlockRef>&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>(std::integral_constant<bool, false>, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&&, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(std::integral_constant<bool, false>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(std::integral_constant<bool, false>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<bool>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, bool&>(std::integral_constant<bool, false>, mp::TypeList<bool>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&&, bool&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<CBlockHeader>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>, CBlockHeader&>(std::integral_constant<bool, false>, mp::TypeList<CBlockHeader>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>&&, CBlockHeader&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<CBlock>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>, CBlock&>(std::integral_constant<bool, false>, mp::TypeList<CBlock>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>&&, CBlock&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>, std::vector<long, std::allocator<long>>&>(std::integral_constant<bool, false>, mp::TypeList<std::vector<long, std::allocator<long>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&, std::vector<long, std::allocator<long>>&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>, std::vector<long, std::allocator<long>>&>(std::integral_constant<bool, false>, mp::TypeList<std::vector<long, std::allocator<long>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&, std::vector<long, std::allocator<long>>&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<node::CoinbaseTx>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>, node::CoinbaseTx&>(std::integral_constant<bool, false>, mp::TypeList<node::CoinbaseTx>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&&, node::CoinbaseTx&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>, std::vector<uint256, std::allocator<uint256>>&>(std::integral_constant<bool, false>, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, std::vector<uint256, std::allocator<uint256>>&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<bool>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, bool&>(std::integral_constant<bool, false>, mp::TypeList<bool>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, bool&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>(std::integral_constant<bool, false>, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&&, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>, std::chrono::duration<double, std::ratio<1l, 1000l>>&>(std::integral_constant<bool, false>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>&&, std::chrono::duration<double, std::ratio<1l, 1000l>>&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<uint256>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>, uint256&>(std::integral_constant<bool, false>, mp::TypeList<uint256>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>&&, uint256&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>, bool&>(std::integral_constant<bool, false>, mp::TypeList<bool>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>&&, bool&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<node::BlockCreateOptions const&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>, node::BlockCreateOptions&>(std::integral_constant<bool, false>, mp::TypeList<node::BlockCreateOptions const&>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockResults::Builder>&&, node::BlockCreateOptions&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<node::BlockCheckOptions const&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>, node::BlockCheckOptions&>(std::integral_constant<bool, false>, mp::TypeList<node::BlockCheckOptions const&>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&&, node::BlockCheckOptions&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<CBlock const&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>, CBlock&>(std::integral_constant<bool, false>, mp::TypeList<CBlock const&>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>&&, CBlock&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<std::shared_ptr<CTransaction const>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>, std::shared_ptr<CTransaction const>&>(std::integral_constant<bool, false>, mp::TypeList<std::shared_ptr<CTransaction const>>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>&&, std::shared_ptr<CTransaction const>&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<unsigned int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>, unsigned int&>(std::integral_constant<bool, false>, mp::TypeList<unsigned int>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>&&, unsigned int&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<unsigned int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>, unsigned int&>(std::integral_constant<bool, false>, mp::TypeList<unsigned int>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>&&, unsigned int&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<unsigned int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>, unsigned int&>(std::integral_constant<bool, false>, mp::TypeList<unsigned int>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults::Builder>&&, unsigned int&) Unexecuted instantiation: void mp::MaybeBuildField<mp::TypeList<node::BlockWaitOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>, node::BlockWaitOptions&>(std::integral_constant<bool, false>, mp::TypeList<node::BlockWaitOptions>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>&&, node::BlockWaitOptions&) void mp::MaybeBuildField<mp::TypeList<UniValue>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, UniValue&>(std::integral_constant<bool, false>, mp::TypeList<UniValue>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, UniValue&) Line | Count | Source | 314 | 4 | { | 315 | 4 | } |
void mp::MaybeBuildField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(std::integral_constant<bool, false>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Line | Count | Source | 314 | 4 | { | 315 | 4 | } |
void mp::MaybeBuildField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(std::integral_constant<bool, false>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Line | Count | Source | 314 | 4 | { | 315 | 4 | } |
void mp::MaybeBuildField<mp::TypeList<UniValue>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>, UniValue&>(std::integral_constant<bool, false>, mp::TypeList<UniValue>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, ipc::capnp::messages::Rpc::ExecuteRpcResults::Builder>&&, UniValue&) Line | Count | Source | 314 | 4 | { | 315 | 4 | } |
void mp::MaybeBuildField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, ipc::capnp::messages::Echo::EchoResults::Builder>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(std::integral_constant<bool, false>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>&&, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, ipc::capnp::messages::Echo::EchoResults::Builder>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Line | Count | Source | 314 | 6 | { | 315 | 6 | } |
|
316 | | template <typename... Args> |
317 | | void MaybeReadField(std::true_type, Args&&... args) |
318 | 61 | { |
319 | 61 | ReadField(std::forward<Args>(args)...); |
320 | 61 | } void mp::MaybeReadField<mp::TypeList<int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, capnp::Response<gen::FooInterface::AddResults>>, mp::ReadDestUpdate<int>>(std::integral_constant<bool, true>, mp::TypeList<int>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, capnp::Response<gen::FooInterface::AddResults>>&&, mp::ReadDestUpdate<int>&&) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<COutPoint>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassOutPointResults>>, mp::ReadDestUpdate<COutPoint>>(std::integral_constant<bool, true>, mp::TypeList<COutPoint>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassOutPointResults>>&&, mp::ReadDestUpdate<COutPoint>&&) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<UniValue>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassUniValueResults>>, mp::ReadDestUpdate<UniValue>>(std::integral_constant<bool, true>, mp::TypeList<UniValue>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassUniValueResults>>&&, mp::ReadDestUpdate<UniValue>&&) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>>(std::integral_constant<bool, true>, mp::TypeList<std::shared_ptr<CTransaction const>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassTransactionResults>>&&, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>&&) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassVectorCharResults>>, mp::ReadDestUpdate<std::vector<char, std::allocator<char>>>>(std::integral_constant<bool, true>, mp::TypeList<std::vector<char, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassVectorCharResults>>&&, mp::ReadDestUpdate<std::vector<char, std::allocator<char>>>&&) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<CScript>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassScriptResults>>, mp::ReadDestUpdate<CScript>>(std::integral_constant<bool, true>, mp::TypeList<CScript>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Response<gen::FooInterface::PassScriptResults>>&&, mp::ReadDestUpdate<CScript>&&) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, gen::FooInterface::AddParams::Reader const>, mp::ReadDestEmplace<int, void mp::PassField<mp::Accessor<mp::ipc_test_fields::A, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, gen::FooInterface::AddParams::Reader const>, mp::ReadDestEmplace<int, void mp::PassField<mp::Accessor<mp::ipc_test_fields::B, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, int>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, int&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<COutPoint>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassOutPointParams::Reader const>, mp::ReadDestEmplace<COutPoint, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<COutPoint>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<UniValue>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassUniValueParams::Reader const>, mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<std::shared_ptr<CTransaction const>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<std::vector<char, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassVectorCharParams::Reader const>, mp::ReadDestEmplace<std::vector<char, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<CScript>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassScriptParams::Reader const>, mp::ReadDestEmplace<CScript, void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<CScript>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Line | Count | Source | 318 | 1 | { | 319 | 1 | ReadField(std::forward<Args>(args)...); | 320 | 1 | } |
void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Response<ipc::capnp::messages::Init::ConstructResults>>>(std::integral_constant<bool, true>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Response<ipc::capnp::messages::Init::ConstructResults>>&&) Line | Count | Source | 318 | 10 | { | 319 | 10 | ReadField(std::forward<Args>(args)...); | 320 | 10 | } |
void mp::MaybeReadField<mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>, mp::ReadDestUpdate<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>>(std::integral_constant<bool, true>, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>&&, mp::ReadDestUpdate<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>&&) Line | Count | Source | 318 | 6 | { | 319 | 6 | ReadField(std::forward<Args>(args)...); | 320 | 6 | } |
Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>, mp::ReadDestUpdate<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>>(std::integral_constant<bool, true>, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>&&, mp::ReadDestUpdate<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>&&) void mp::MaybeReadField<mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>, mp::ReadDestUpdate<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>>(std::integral_constant<bool, true>, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>&&, mp::ReadDestUpdate<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>&&) Line | Count | Source | 318 | 4 | { | 319 | 4 | ReadField(std::forward<Args>(args)...); | 320 | 4 | } |
void mp::MaybeReadField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Echo::EchoResults>>, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(std::integral_constant<bool, true>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Echo::EchoResults>>&&, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&) Line | Count | Source | 318 | 6 | { | 319 | 6 | ReadField(std::forward<Args>(args)...); | 320 | 6 | } |
Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<bool>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>, mp::ReadDestUpdate<bool>>(std::integral_constant<bool, true>, mp::TypeList<bool>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>&&, mp::ReadDestUpdate<bool>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<bool>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>, mp::ReadDestUpdate<bool>>(std::integral_constant<bool, true>, mp::TypeList<bool>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>&&, mp::ReadDestUpdate<bool>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::optional<interfaces::BlockRef>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(std::integral_constant<bool, true>, mp::TypeList<std::optional<interfaces::BlockRef>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::optional<interfaces::BlockRef>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>>(std::integral_constant<bool, true>, mp::TypeList<std::optional<interfaces::BlockRef>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<std::optional<interfaces::BlockRef>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ReadDestUpdate<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>>(std::integral_constant<bool, true>, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>&&, mp::ReadDestUpdate<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(std::integral_constant<bool, true>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>&&, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(std::integral_constant<bool, true>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>&&, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<bool>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ReadDestUpdate<bool>>(std::integral_constant<bool, true>, mp::TypeList<bool>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>&&, mp::ReadDestUpdate<bool>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<CBlockHeader>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>, mp::ReadDestUpdate<CBlockHeader>>(std::integral_constant<bool, true>, mp::TypeList<CBlockHeader>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>&&, mp::ReadDestUpdate<CBlockHeader>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<CBlock>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>, mp::ReadDestUpdate<CBlock>>(std::integral_constant<bool, true>, mp::TypeList<CBlock>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>&&, mp::ReadDestUpdate<CBlock>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(std::integral_constant<bool, true>, mp::TypeList<std::vector<long, std::allocator<long>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>>(std::integral_constant<bool, true>, mp::TypeList<std::vector<long, std::allocator<long>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&, mp::ReadDestUpdate<std::vector<long, std::allocator<long>>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<node::CoinbaseTx>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>, mp::ReadDestUpdate<node::CoinbaseTx>>(std::integral_constant<bool, true>, mp::TypeList<node::CoinbaseTx>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&&, mp::ReadDestUpdate<node::CoinbaseTx>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>>(std::integral_constant<bool, true>, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&, mp::ReadDestUpdate<std::vector<uint256, std::allocator<uint256>>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<bool>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ReadDestUpdate<bool>>(std::integral_constant<bool, true>, mp::TypeList<bool>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, mp::ReadDestUpdate<bool>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ReadDestUpdate<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>>(std::integral_constant<bool, true>, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>&&, mp::ReadDestUpdate<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<uint256>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const>, mp::ReadDestEmplace<uint256, void mp::PassField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::Priority<0>, mp::TypeList<uint256>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader const>, mp::ReadDestEmplace<std::chrono::duration<double, std::ratio<1l, 1000l>>, void mp::PassField<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, uint256>(mp::Priority<0>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, uint256&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<node::BlockCreateOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>, mp::ReadDestEmplace<node::BlockCreateOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>>(mp::Priority<0>, mp::TypeList<node::BlockCreateOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<bool>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>, mp::ReadDestEmplace<bool, void mp::PassField<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, node::BlockCreateOptions const&>(mp::Priority<0>, mp::TypeList<bool>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, node::BlockCreateOptions const&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<CBlock>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>, mp::ReadDestEmplace<CBlock, void mp::PassField<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::Priority<0>, mp::TypeList<CBlock const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<node::BlockCheckOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>, mp::ReadDestEmplace<node::BlockCheckOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&>(mp::Priority<0>, mp::TypeList<node::BlockCheckOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<unsigned int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<unsigned int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>&&, unsigned int&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<unsigned int>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<unsigned int, void mp::PassField<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::shared_ptr<CTransaction const>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader const>, mp::ReadDestEmplace<std::shared_ptr<CTransaction const>, void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<node::BlockWaitOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const>, mp::ReadDestEmplace<node::BlockWaitOptions, void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<node::BlockWaitOptions>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) void mp::MaybeReadField<mp::TypeList<UniValue>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ReadDestUpdate<UniValue>>(std::integral_constant<bool, true>, mp::TypeList<UniValue>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, mp::ReadDestUpdate<UniValue>&&) Line | Count | Source | 318 | 4 | { | 319 | 4 | ReadField(std::forward<Args>(args)...); | 320 | 4 | } |
void mp::MaybeReadField<mp::TypeList<UniValue>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>, mp::ReadDestEmplace<UniValue, void mp::PassField<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Line | Count | Source | 318 | 4 | { | 319 | 4 | ReadField(std::forward<Args>(args)...); | 320 | 4 | } |
void mp::MaybeReadField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>, mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, UniValue>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, UniValue&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Line | Count | Source | 318 | 4 | { | 319 | 4 | ReadField(std::forward<Args>(args)...); | 320 | 4 | } |
void mp::MaybeReadField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader const>, mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Line | Count | Source | 318 | 4 | { | 319 | 4 | ReadField(std::forward<Args>(args)...); | 320 | 4 | } |
void mp::MaybeReadField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, ipc::capnp::messages::Echo::EchoParams::Reader const>, mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)>>(std::integral_constant<bool, true>, auto&&...) Line | Count | Source | 318 | 6 | { | 319 | 6 | ReadField(std::forward<Args>(args)...); | 320 | 6 | } |
|
321 | | template <typename... Args> |
322 | | void MaybeReadField(std::false_type, Args&&...) |
323 | 51 | { |
324 | 51 | } void mp::MaybeReadField<mp::TypeList<int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Response<gen::FooInterface::AddResults>>, mp::ReadDestUpdate<int>>(std::integral_constant<bool, false>, mp::TypeList<int>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Response<gen::FooInterface::AddResults>>&&, mp::ReadDestUpdate<int>&&) Line | Count | Source | 323 | 1 | { | 324 | 1 | } |
void mp::MaybeReadField<mp::TypeList<int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Response<gen::FooInterface::AddResults>>, mp::ReadDestUpdate<int>>(std::integral_constant<bool, false>, mp::TypeList<int>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Response<gen::FooInterface::AddResults>>&&, mp::ReadDestUpdate<int>&&) Line | Count | Source | 323 | 1 | { | 324 | 1 | } |
void mp::MaybeReadField<mp::TypeList<COutPoint>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassOutPointResults>>, mp::ReadDestUpdate<COutPoint>>(std::integral_constant<bool, false>, mp::TypeList<COutPoint>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassOutPointResults>>&&, mp::ReadDestUpdate<COutPoint>&&) Line | Count | Source | 323 | 1 | { | 324 | 1 | } |
void mp::MaybeReadField<mp::TypeList<UniValue>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassUniValueResults>>, mp::ReadDestUpdate<UniValue>>(std::integral_constant<bool, false>, mp::TypeList<UniValue>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassUniValueResults>>&&, mp::ReadDestUpdate<UniValue>&&) Line | Count | Source | 323 | 1 | { | 324 | 1 | } |
void mp::MaybeReadField<mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassTransactionResults>>, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>>(std::integral_constant<bool, false>, mp::TypeList<std::shared_ptr<CTransaction const>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassTransactionResults>>&&, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>&&) Line | Count | Source | 323 | 1 | { | 324 | 1 | } |
void mp::MaybeReadField<mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassVectorCharResults>>, mp::ReadDestUpdate<std::vector<char, std::allocator<char>>>>(std::integral_constant<bool, false>, mp::TypeList<std::vector<char, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassVectorCharResults>>&&, mp::ReadDestUpdate<std::vector<char, std::allocator<char>>>&&) Line | Count | Source | 323 | 1 | { | 324 | 1 | } |
void mp::MaybeReadField<mp::TypeList<CScript>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassScriptResults>>, mp::ReadDestUpdate<CScript>>(std::integral_constant<bool, false>, mp::TypeList<CScript>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Response<gen::FooInterface::PassScriptResults>>&&, mp::ReadDestUpdate<CScript>&&) Line | Count | Source | 323 | 1 | { | 324 | 1 | } |
void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>&&) Line | Count | Source | 323 | 6 | { | 324 | 6 | } |
Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>&&) void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>&&) Line | Count | Source | 323 | 4 | { | 324 | 4 | } |
void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>>&&) Line | Count | Source | 323 | 6 | { | 324 | 6 | } |
void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Echo::EchoResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Echo::EchoResults>>&&) Line | Count | Source | 323 | 6 | { | 324 | 6 | } |
void mp::MaybeReadField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Response<ipc::capnp::messages::Echo::EchoResults>>, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const>>(std::integral_constant<bool, false>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Response<ipc::capnp::messages::Echo::EchoResults>>&&, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const>&&) Line | Count | Source | 323 | 6 | { | 324 | 6 | } |
Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<uint256>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ReadDestUpdate<uint256>>(std::integral_constant<bool, false>, mp::TypeList<uint256>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<uint256>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ReadDestUpdate<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(std::integral_constant<bool, false>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&&, mp::ReadDestUpdate<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<node::BlockCreateOptions>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ReadDestUpdate<node::BlockCreateOptions const>>(std::integral_constant<bool, false>, mp::TypeList<node::BlockCreateOptions>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>&&, mp::ReadDestUpdate<node::BlockCreateOptions const>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<bool>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ReadDestUpdate<bool>>(std::integral_constant<bool, false>, mp::TypeList<bool>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>&&, mp::ReadDestUpdate<bool>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<CBlock>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ReadDestUpdate<CBlock const>>(std::integral_constant<bool, false>, mp::TypeList<CBlock>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>&&, mp::ReadDestUpdate<CBlock const>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<node::BlockCheckOptions>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ReadDestUpdate<node::BlockCheckOptions const>>(std::integral_constant<bool, false>, mp::TypeList<node::BlockCheckOptions>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>&&, mp::ReadDestUpdate<node::BlockCheckOptions const>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<unsigned int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ReadDestUpdate<unsigned int>>(std::integral_constant<bool, false>, mp::TypeList<unsigned int>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, mp::ReadDestUpdate<unsigned int>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<unsigned int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ReadDestUpdate<unsigned int>>(std::integral_constant<bool, false>, mp::TypeList<unsigned int>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, mp::ReadDestUpdate<unsigned int>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<unsigned int>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ReadDestUpdate<unsigned int>>(std::integral_constant<bool, false>, mp::TypeList<unsigned int>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, mp::ReadDestUpdate<unsigned int>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>>(std::integral_constant<bool, false>, mp::TypeList<std::shared_ptr<CTransaction const>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&&, mp::ReadDestUpdate<std::shared_ptr<CTransaction const>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<node::BlockWaitOptions>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ReadDestUpdate<node::BlockWaitOptions>>(std::integral_constant<bool, false>, mp::TypeList<node::BlockWaitOptions>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>&&, mp::ReadDestUpdate<node::BlockWaitOptions>&&) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>, mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&, node::BlockCheckOptions const&>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&, node::BlockCheckOptions const&)::'lambda'(auto&&...)>>(std::integral_constant<bool, false>, auto&&...) Unexecuted instantiation: void mp::MaybeReadField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>, mp::ReadDestEmplace<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, void mp::PassField<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)::'lambda'(auto&&...)>>(std::integral_constant<bool, false>, auto&&...) void mp::MaybeReadField<mp::TypeList<>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>>(std::integral_constant<bool, false>, mp::TypeList<>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Context, 17>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&) Line | Count | Source | 323 | 4 | { | 324 | 4 | } |
void mp::MaybeReadField<mp::TypeList<UniValue>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ReadDestUpdate<UniValue>>(std::integral_constant<bool, false>, mp::TypeList<UniValue>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, mp::ReadDestUpdate<UniValue>&&) Line | Count | Source | 323 | 4 | { | 324 | 4 | } |
void mp::MaybeReadField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(std::integral_constant<bool, false>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&) Line | Count | Source | 323 | 4 | { | 324 | 4 | } |
void mp::MaybeReadField<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(std::integral_constant<bool, false>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientInvokeContext&, mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>&&, mp::ReadDestUpdate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&) Line | Count | Source | 323 | 4 | { | 324 | 4 | } |
|
325 | | |
326 | | template <typename LocalType, typename Value, typename Output> |
327 | | void MaybeSetWant(TypeList<LocalType*>, Priority<1>, const Value& value, Output&& output) |
328 | | { |
329 | | if (value) { |
330 | | output.setWant(); |
331 | | } |
332 | | } |
333 | | |
334 | | template <typename LocalTypes, typename... Args> |
335 | | void MaybeSetWant(LocalTypes, Priority<0>, const Args&...) |
336 | 87 | { |
337 | 87 | } void mp::MaybeSetWant<mp::TypeList<int>, int, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>>(mp::TypeList<int>, mp::Priority<0>, int const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::A, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<int>, int, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>>(mp::TypeList<int>, mp::Priority<0>, int const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::B, 1>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<int>, int, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>>(mp::TypeList<int>, mp::Priority<0>, int const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 2>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<COutPoint>, COutPoint, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>>(mp::TypeList<COutPoint>, mp::Priority<0>, COutPoint const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<COutPoint>, COutPoint, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>>(mp::TypeList<COutPoint>, mp::Priority<0>, COutPoint const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<UniValue>, UniValue, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>>(mp::TypeList<UniValue>, mp::Priority<0>, UniValue const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<UniValue>, UniValue, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>>(mp::TypeList<UniValue>, mp::Priority<0>, UniValue const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<std::shared_ptr<CTransaction const>>, std::shared_ptr<CTransaction const>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<0>, std::shared_ptr<CTransaction const> const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<std::shared_ptr<CTransaction const>>, std::shared_ptr<CTransaction const>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<0>, std::shared_ptr<CTransaction const> const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<std::vector<char, std::allocator<char>>>, std::vector<char, std::allocator<char>>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>>(mp::TypeList<std::vector<char, std::allocator<char>>>, mp::Priority<0>, std::vector<char, std::allocator<char>> const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<std::vector<char, std::allocator<char>>>, std::vector<char, std::allocator<char>>, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>>(mp::TypeList<std::vector<char, std::allocator<char>>>, mp::Priority<0>, std::vector<char, std::allocator<char>> const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<CScript>, CScript, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>>(mp::TypeList<CScript>, mp::Priority<0>, CScript const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<CScript>, CScript, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>>(mp::TypeList<CScript>, mp::Priority<0>, CScript const&, mp::StructField<mp::Accessor<mp::ipc_test_fields::Result, 18>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>> const&) Line | Count | Source | 336 | 1 | { | 337 | 1 | } |
void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::init_fields::ThreadMap, 19>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>> const&) Line | Count | Source | 336 | 10 | { | 337 | 10 | } |
void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>> const&) Line | Count | Source | 336 | 6 | { | 337 | 6 | } |
void mp::MaybeSetWant<mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>>(mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::Priority<0>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>> const&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>> const&) Line | Count | Source | 336 | 6 | { | 337 | 6 | } |
Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>>(mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::Priority<0>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>> const&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>> const&) void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::init_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>> const&) Line | Count | Source | 336 | 4 | { | 337 | 4 | } |
void mp::MaybeSetWant<mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>>(mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::Priority<0>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>> const&, mp::StructField<mp::Accessor<mp::init_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>> const&) Line | Count | Source | 336 | 4 | { | 337 | 4 | } |
void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>> const&) Line | Count | Source | 336 | 6 | { | 337 | 6 | } |
void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::echo_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>> const&) Line | Count | Source | 336 | 6 | { | 337 | 6 | } |
void mp::MaybeSetWant<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::Priority<0>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::StructField<mp::Accessor<mp::echo_fields::Echo, 17>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>> const&) Line | Count | Source | 336 | 6 | { | 337 | 6 | } |
void mp::MaybeSetWant<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::Priority<0>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::StructField<mp::Accessor<mp::echo_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>> const&) Line | Count | Source | 336 | 6 | { | 337 | 6 | } |
Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<bool>, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>>(mp::TypeList<bool>, mp::Priority<0>, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<bool>, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>>(mp::TypeList<bool>, mp::Priority<0>, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<std::optional<interfaces::BlockRef>>, std::optional<interfaces::BlockRef>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<0>, std::optional<interfaces::BlockRef> const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<uint256>, uint256, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>>(mp::TypeList<uint256>, mp::Priority<0>, uint256 const&, mp::StructField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>>(mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::Priority<0>, std::chrono::duration<double, std::ratio<1l, 1000l>> const&, mp::StructField<mp::Accessor<mp::mining_fields::Timeout, 1>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<std::optional<interfaces::BlockRef>>, std::optional<interfaces::BlockRef>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>>(mp::TypeList<std::optional<interfaces::BlockRef>>, mp::Priority<0>, std::optional<interfaces::BlockRef> const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<node::BlockCreateOptions const&>, node::BlockCreateOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>>(mp::TypeList<node::BlockCreateOptions const&>, mp::Priority<0>, node::BlockCreateOptions const&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<bool>, bool, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>>(mp::TypeList<bool>, mp::Priority<0>, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::Cooldown, 1>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>>(mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::Priority<0>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>> const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<CBlock const&>, CBlock, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>>(mp::TypeList<CBlock const&>, mp::Priority<0>, CBlock const&, mp::StructField<mp::Accessor<mp::mining_fields::Block, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<node::BlockCheckOptions const&>, node::BlockCheckOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>>(mp::TypeList<node::BlockCheckOptions const&>, mp::Priority<0>, node::BlockCheckOptions const&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::Priority<0>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::StructField<mp::Accessor<mp::mining_fields::Reason, 18>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::Priority<0>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::StructField<mp::Accessor<mp::mining_fields::Debug, 18>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<bool>, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>>(mp::TypeList<bool>, mp::Priority<0>, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<CBlockHeader>, CBlockHeader, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>>(mp::TypeList<CBlockHeader>, mp::Priority<0>, CBlockHeader const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<CBlock>, CBlock, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>>(mp::TypeList<CBlock>, mp::Priority<0>, CBlock const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<std::vector<long, std::allocator<long>>>, std::vector<long, std::allocator<long>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<0>, std::vector<long, std::allocator<long>> const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<std::vector<long, std::allocator<long>>>, std::vector<long, std::allocator<long>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>>(mp::TypeList<std::vector<long, std::allocator<long>>>, mp::Priority<0>, std::vector<long, std::allocator<long>> const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<node::CoinbaseTx>, node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>>(mp::TypeList<node::CoinbaseTx>, mp::Priority<0>, node::CoinbaseTx const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, std::vector<uint256, std::allocator<uint256>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>>(mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::Priority<0>, std::vector<uint256, std::allocator<uint256>> const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<unsigned int>, unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<unsigned int>, mp::Priority<0>, unsigned int const&, mp::StructField<mp::Accessor<mp::mining_fields::Version, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<unsigned int>, unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<unsigned int>, mp::Priority<0>, unsigned int const&, mp::StructField<mp::Accessor<mp::mining_fields::Timestamp, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<unsigned int>, unsigned int, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<unsigned int>, mp::Priority<0>, unsigned int const&, mp::StructField<mp::Accessor<mp::mining_fields::Nonce, 1>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<std::shared_ptr<CTransaction const>>, std::shared_ptr<CTransaction const>, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<std::shared_ptr<CTransaction const>>, mp::Priority<0>, std::shared_ptr<CTransaction const> const&, mp::StructField<mp::Accessor<mp::mining_fields::Coinbase, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<bool>, bool, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>>(mp::TypeList<bool>, mp::Priority<0>, bool const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 2>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::mining_fields::Context, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<node::BlockWaitOptions>, node::BlockWaitOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>>(mp::TypeList<node::BlockWaitOptions>, mp::Priority<0>, node::BlockWaitOptions const&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>> const&) Unexecuted instantiation: void mp::MaybeSetWant<mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>>(mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::Priority<0>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>> const&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>> const&) void mp::MaybeSetWant<mp::TypeList<>, mp::StructField<mp::Accessor<mp::rpc_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>>(mp::TypeList<>, mp::Priority<0>, mp::StructField<mp::Accessor<mp::rpc_fields::Context, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>> const&) Line | Count | Source | 336 | 4 | { | 337 | 4 | } |
void mp::MaybeSetWant<mp::TypeList<UniValue>, UniValue, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>>(mp::TypeList<UniValue>, mp::Priority<0>, UniValue const&, mp::StructField<mp::Accessor<mp::rpc_fields::Request, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>> const&) Line | Count | Source | 336 | 4 | { | 337 | 4 | } |
void mp::MaybeSetWant<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::Priority<0>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::StructField<mp::Accessor<mp::rpc_fields::Uri, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>> const&) Line | Count | Source | 336 | 4 | { | 337 | 4 | } |
void mp::MaybeSetWant<mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>>(mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::Priority<0>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::StructField<mp::Accessor<mp::rpc_fields::User, 17>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>> const&) Line | Count | Source | 336 | 4 | { | 337 | 4 | } |
void mp::MaybeSetWant<mp::TypeList<UniValue>, UniValue, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>>(mp::TypeList<UniValue>, mp::Priority<0>, UniValue const&, mp::StructField<mp::Accessor<mp::rpc_fields::Result, 18>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>> const&) Line | Count | Source | 336 | 4 | { | 337 | 4 | } |
|
338 | | |
339 | | //! Default PassField implementation calling MaybeReadField/MaybeBuildField. |
340 | | template <typename Accessor, typename LocalType, typename ServerContext, typename Fn, typename... Args> |
341 | | void PassField(Priority<0>, TypeList<LocalType>, ServerContext& server_context, Fn&& fn, Args&&... args) |
342 | 25 | { |
343 | 25 | InvokeContext& invoke_context = server_context; |
344 | 25 | using ArgType = RemoveCvRef<LocalType>; |
345 | 25 | std::optional<ArgType> param; |
346 | 25 | const auto& params = server_context.call_context.getParams(); |
347 | 25 | MaybeReadField(std::integral_constant<bool, Accessor::in>(), TypeList<ArgType>(), invoke_context, |
348 | 25 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { |
349 | 25 | param.emplace(std::forward<decltype(args)>(args)...); |
350 | 25 | return *param; |
351 | 25 | })); auto& void mp::PassField<mp::Accessor<mp::ipc_test_fields::A, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>&&)::'lambda'(auto&&...)::operator()<int>(auto&&...) const Line | Count | Source | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); |
auto& void mp::PassField<mp::Accessor<mp::ipc_test_fields::B, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, int>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, int&&)::'lambda'(auto&&...)::operator()<int>(auto&&...) const Line | Count | Source | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); |
auto& void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<COutPoint>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)::operator()<>(auto&&...) const Line | Count | Source | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); |
auto& void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)::operator()<>(auto&&...) const Line | Count | Source | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); |
auto& void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)::operator()<>(auto&&...) const Line | Count | Source | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); |
auto& void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)::operator()<char const*, char const*>(auto&&...) const Line | Count | Source | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); |
auto& void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<CScript>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)::operator()<unsigned char const*, unsigned char const*>(auto&&...) const Line | Count | Source | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); |
Unexecuted instantiation: auto& void mp::PassField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::Priority<0>, mp::TypeList<uint256>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&)::'lambda'(auto&&...)::operator()<>(auto&&...) const Unexecuted instantiation: auto& void mp::PassField<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, uint256>(mp::Priority<0>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, uint256&&)::'lambda'(auto&&...)::operator()<double>(auto&&...) const Unexecuted instantiation: auto& void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>>(mp::Priority<0>, mp::TypeList<node::BlockCreateOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>&&)::'lambda'(auto&&...)::operator()<>(auto&&...) const Unexecuted instantiation: auto& void mp::PassField<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, node::BlockCreateOptions const&>(mp::Priority<0>, mp::TypeList<bool>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, node::BlockCreateOptions const&)::'lambda'(auto&&...)::operator()<bool>(auto&&...) const Unexecuted instantiation: auto& void mp::PassField<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::Priority<0>, mp::TypeList<CBlock const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda'(auto&&...)::operator()<>(auto&&...) const Unexecuted instantiation: auto& void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&>(mp::Priority<0>, mp::TypeList<node::BlockCheckOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&)::'lambda'(auto&&...)::operator()<>(auto&&...) const Unexecuted instantiation: auto& void mp::PassField<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>&&)::'lambda'(auto&&...)::operator()<unsigned int>(auto&&...) const Unexecuted instantiation: auto& void mp::PassField<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>&&, unsigned int&&)::'lambda'(auto&&...)::operator()<unsigned int>(auto&&...) const Unexecuted instantiation: auto& void mp::PassField<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)::operator()<unsigned int>(auto&&...) const Unexecuted instantiation: auto& void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&)::'lambda'(auto&&...)::operator()<>(auto&&...) const Unexecuted instantiation: auto& void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<node::BlockWaitOptions>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)::operator()<>(auto&&...) const auto& void mp::PassField<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&)::'lambda'(auto&&...)::operator()<>(auto&&...) const Line | Count | Source | 348 | 4 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 4 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 4 | return *param; | 351 | 4 | })); |
auto& void mp::PassField<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, UniValue>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, UniValue&&)::'lambda'(auto&&...)::operator()<char const*, unsigned long>(auto&&...) const Line | Count | Source | 348 | 4 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 4 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 4 | return *param; | 351 | 4 | })); |
auto& void mp::PassField<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&)::'lambda'(auto&&...)::operator()<char const*, unsigned long>(auto&&...) const Line | Count | Source | 348 | 4 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 4 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 4 | return *param; | 351 | 4 | })); |
auto& void mp::PassField<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&)::'lambda'(auto&&...)::operator()<char const*, unsigned long>(auto&&...) const Line | Count | Source | 348 | 6 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 6 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 6 | return *param; | 351 | 6 | })); |
|
352 | 25 | if constexpr (Accessor::in) { |
353 | 25 | assert(param); |
354 | 25 | } else { |
355 | 0 | if (!param) param.emplace(); |
356 | 0 | } |
357 | 25 | fn.invoke(server_context, std::forward<Args>(args)..., static_cast<LocalType&&>(*param)); |
358 | 25 | auto&& results = server_context.call_context.getResults(); |
359 | 25 | MaybeBuildField(std::integral_constant<bool, Accessor::out>(), TypeList<LocalType>(), invoke_context, |
360 | 25 | Make<StructField, Accessor>(results), *param); |
361 | 25 | } void mp::PassField<mp::Accessor<mp::ipc_test_fields::A, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<int>&&) Line | Count | Source | 342 | 1 | { | 343 | 1 | InvokeContext& invoke_context = server_context; | 344 | 1 | using ArgType = RemoveCvRef<LocalType>; | 345 | 1 | std::optional<ArgType> param; | 346 | 1 | const auto& params = server_context.call_context.getParams(); | 347 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::in>(), TypeList<ArgType>(), invoke_context, | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); | 352 | 1 | if constexpr (Accessor::in) { | 353 | 1 | assert(param); | 354 | | } else { | 355 | | if (!param) param.emplace(); | 356 | | } | 357 | 1 | fn.invoke(server_context, std::forward<Args>(args)..., static_cast<LocalType&&>(*param)); | 358 | 1 | auto&& results = server_context.call_context.getResults(); | 359 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::out>(), TypeList<LocalType>(), invoke_context, | 360 | 1 | Make<StructField, Accessor>(results), *param); | 361 | 1 | } |
void mp::PassField<mp::Accessor<mp::ipc_test_fields::B, 1>, int, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, int>(mp::Priority<0>, mp::TypeList<int>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, int&&) Line | Count | Source | 342 | 1 | { | 343 | 1 | InvokeContext& invoke_context = server_context; | 344 | 1 | using ArgType = RemoveCvRef<LocalType>; | 345 | 1 | std::optional<ArgType> param; | 346 | 1 | const auto& params = server_context.call_context.getParams(); | 347 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::in>(), TypeList<ArgType>(), invoke_context, | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); | 352 | 1 | if constexpr (Accessor::in) { | 353 | 1 | assert(param); | 354 | | } else { | 355 | | if (!param) param.emplace(); | 356 | | } | 357 | 1 | fn.invoke(server_context, std::forward<Args>(args)..., static_cast<LocalType&&>(*param)); | 358 | 1 | auto&& results = server_context.call_context.getResults(); | 359 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::out>(), TypeList<LocalType>(), invoke_context, | 360 | 1 | Make<StructField, Accessor>(results), *param); | 361 | 1 | } |
void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<COutPoint>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&) Line | Count | Source | 342 | 1 | { | 343 | 1 | InvokeContext& invoke_context = server_context; | 344 | 1 | using ArgType = RemoveCvRef<LocalType>; | 345 | 1 | std::optional<ArgType> param; | 346 | 1 | const auto& params = server_context.call_context.getParams(); | 347 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::in>(), TypeList<ArgType>(), invoke_context, | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); | 352 | 1 | if constexpr (Accessor::in) { | 353 | 1 | assert(param); | 354 | | } else { | 355 | | if (!param) param.emplace(); | 356 | | } | 357 | 1 | fn.invoke(server_context, std::forward<Args>(args)..., static_cast<LocalType&&>(*param)); | 358 | 1 | auto&& results = server_context.call_context.getResults(); | 359 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::out>(), TypeList<LocalType>(), invoke_context, | 360 | 1 | Make<StructField, Accessor>(results), *param); | 361 | 1 | } |
void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&) Line | Count | Source | 342 | 1 | { | 343 | 1 | InvokeContext& invoke_context = server_context; | 344 | 1 | using ArgType = RemoveCvRef<LocalType>; | 345 | 1 | std::optional<ArgType> param; | 346 | 1 | const auto& params = server_context.call_context.getParams(); | 347 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::in>(), TypeList<ArgType>(), invoke_context, | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); | 352 | 1 | if constexpr (Accessor::in) { | 353 | 1 | assert(param); | 354 | | } else { | 355 | | if (!param) param.emplace(); | 356 | | } | 357 | 1 | fn.invoke(server_context, std::forward<Args>(args)..., static_cast<LocalType&&>(*param)); | 358 | 1 | auto&& results = server_context.call_context.getResults(); | 359 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::out>(), TypeList<LocalType>(), invoke_context, | 360 | 1 | Make<StructField, Accessor>(results), *param); | 361 | 1 | } |
void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&) Line | Count | Source | 342 | 1 | { | 343 | 1 | InvokeContext& invoke_context = server_context; | 344 | 1 | using ArgType = RemoveCvRef<LocalType>; | 345 | 1 | std::optional<ArgType> param; | 346 | 1 | const auto& params = server_context.call_context.getParams(); | 347 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::in>(), TypeList<ArgType>(), invoke_context, | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); | 352 | 1 | if constexpr (Accessor::in) { | 353 | 1 | assert(param); | 354 | | } else { | 355 | | if (!param) param.emplace(); | 356 | | } | 357 | 1 | fn.invoke(server_context, std::forward<Args>(args)..., static_cast<LocalType&&>(*param)); | 358 | 1 | auto&& results = server_context.call_context.getResults(); | 359 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::out>(), TypeList<LocalType>(), invoke_context, | 360 | 1 | Make<StructField, Accessor>(results), *param); | 361 | 1 | } |
void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::vector<char, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&) Line | Count | Source | 342 | 1 | { | 343 | 1 | InvokeContext& invoke_context = server_context; | 344 | 1 | using ArgType = RemoveCvRef<LocalType>; | 345 | 1 | std::optional<ArgType> param; | 346 | 1 | const auto& params = server_context.call_context.getParams(); | 347 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::in>(), TypeList<ArgType>(), invoke_context, | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); | 352 | 1 | if constexpr (Accessor::in) { | 353 | 1 | assert(param); | 354 | | } else { | 355 | | if (!param) param.emplace(); | 356 | | } | 357 | 1 | fn.invoke(server_context, std::forward<Args>(args)..., static_cast<LocalType&&>(*param)); | 358 | 1 | auto&& results = server_context.call_context.getResults(); | 359 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::out>(), TypeList<LocalType>(), invoke_context, | 360 | 1 | Make<StructField, Accessor>(results), *param); | 361 | 1 | } |
void mp::PassField<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<CScript>, mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&) Line | Count | Source | 342 | 1 | { | 343 | 1 | InvokeContext& invoke_context = server_context; | 344 | 1 | using ArgType = RemoveCvRef<LocalType>; | 345 | 1 | std::optional<ArgType> param; | 346 | 1 | const auto& params = server_context.call_context.getParams(); | 347 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::in>(), TypeList<ArgType>(), invoke_context, | 348 | 1 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 1 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 1 | return *param; | 351 | 1 | })); | 352 | 1 | if constexpr (Accessor::in) { | 353 | 1 | assert(param); | 354 | | } else { | 355 | | if (!param) param.emplace(); | 356 | | } | 357 | 1 | fn.invoke(server_context, std::forward<Args>(args)..., static_cast<LocalType&&>(*param)); | 358 | 1 | auto&& results = server_context.call_context.getResults(); | 359 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::out>(), TypeList<LocalType>(), invoke_context, | 360 | 1 | Make<StructField, Accessor>(results), *param); | 361 | 1 | } |
Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::Priority<0>, mp::TypeList<uint256>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>&&) Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, uint256>(mp::Priority<0>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, uint256&&) Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>>(mp::Priority<0>, mp::TypeList<node::BlockCreateOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<bool>&&) Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, node::BlockCreateOptions const&>(mp::Priority<0>, mp::TypeList<bool>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, node::BlockCreateOptions const&) Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::Priority<0>, mp::TypeList<CBlock const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&) Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&>(mp::Priority<0>, mp::TypeList<node::BlockCheckOptions const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&) Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&, node::BlockCheckOptions const&>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, CBlock const&, node::BlockCheckOptions const&) Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> const&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>&&) Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> const&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>&&, unsigned int&&) Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<unsigned int>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> const&, mp::TypeList<std::shared_ptr<CTransaction const>>&&, unsigned int&&, unsigned int&&) Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>, unsigned int, unsigned int, unsigned int>(mp::Priority<0>, mp::TypeList<std::shared_ptr<CTransaction const>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall> const&, mp::TypeList<>&&, unsigned int&&, unsigned int&&, unsigned int&&) Unexecuted instantiation: void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<node::BlockWaitOptions>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&) void mp::PassField<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::Priority<0>, mp::TypeList<UniValue>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&) Line | Count | Source | 342 | 4 | { | 343 | 4 | InvokeContext& invoke_context = server_context; | 344 | 4 | using ArgType = RemoveCvRef<LocalType>; | 345 | 4 | std::optional<ArgType> param; | 346 | 4 | const auto& params = server_context.call_context.getParams(); | 347 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::in>(), TypeList<ArgType>(), invoke_context, | 348 | 4 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 4 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 4 | return *param; | 351 | 4 | })); | 352 | 4 | if constexpr (Accessor::in) { | 353 | 4 | assert(param); | 354 | | } else { | 355 | | if (!param) param.emplace(); | 356 | | } | 357 | 4 | fn.invoke(server_context, std::forward<Args>(args)..., static_cast<LocalType&&>(*param)); | 358 | 4 | auto&& results = server_context.call_context.getResults(); | 359 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::out>(), TypeList<LocalType>(), invoke_context, | 360 | 4 | Make<StructField, Accessor>(results), *param); | 361 | 4 | } |
void mp::PassField<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, UniValue>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, UniValue&&) Line | Count | Source | 342 | 4 | { | 343 | 4 | InvokeContext& invoke_context = server_context; | 344 | 4 | using ArgType = RemoveCvRef<LocalType>; | 345 | 4 | std::optional<ArgType> param; | 346 | 4 | const auto& params = server_context.call_context.getParams(); | 347 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::in>(), TypeList<ArgType>(), invoke_context, | 348 | 4 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 4 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 4 | return *param; | 351 | 4 | })); | 352 | 4 | if constexpr (Accessor::in) { | 353 | 4 | assert(param); | 354 | | } else { | 355 | | if (!param) param.emplace(); | 356 | | } | 357 | 4 | fn.invoke(server_context, std::forward<Args>(args)..., static_cast<LocalType&&>(*param)); | 358 | 4 | auto&& results = server_context.call_context.getResults(); | 359 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::out>(), TypeList<LocalType>(), invoke_context, | 360 | 4 | Make<StructField, Accessor>(results), *param); | 361 | 4 | } |
void mp::PassField<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) Line | Count | Source | 342 | 4 | { | 343 | 4 | InvokeContext& invoke_context = server_context; | 344 | 4 | using ArgType = RemoveCvRef<LocalType>; | 345 | 4 | std::optional<ArgType> param; | 346 | 4 | const auto& params = server_context.call_context.getParams(); | 347 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::in>(), TypeList<ArgType>(), invoke_context, | 348 | 4 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 4 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 4 | return *param; | 351 | 4 | })); | 352 | 4 | if constexpr (Accessor::in) { | 353 | 4 | assert(param); | 354 | | } else { | 355 | | if (!param) param.emplace(); | 356 | | } | 357 | 4 | fn.invoke(server_context, std::forward<Args>(args)..., static_cast<LocalType&&>(*param)); | 358 | 4 | auto&& results = server_context.call_context.getResults(); | 359 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::out>(), TypeList<LocalType>(), invoke_context, | 360 | 4 | Make<StructField, Accessor>(results), *param); | 361 | 4 | } |
void mp::PassField<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>(mp::Priority<0>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>&&) Line | Count | Source | 342 | 6 | { | 343 | 6 | InvokeContext& invoke_context = server_context; | 344 | 6 | using ArgType = RemoveCvRef<LocalType>; | 345 | 6 | std::optional<ArgType> param; | 346 | 6 | const auto& params = server_context.call_context.getParams(); | 347 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::in>(), TypeList<ArgType>(), invoke_context, | 348 | 6 | Make<StructField, Accessor>(params), ReadDestEmplace(TypeList<ArgType>(), [&](auto&&... args) -> auto& { | 349 | 6 | param.emplace(std::forward<decltype(args)>(args)...); | 350 | 6 | return *param; | 351 | 6 | })); | 352 | 6 | if constexpr (Accessor::in) { | 353 | 6 | assert(param); | 354 | | } else { | 355 | | if (!param) param.emplace(); | 356 | | } | 357 | 6 | fn.invoke(server_context, std::forward<Args>(args)..., static_cast<LocalType&&>(*param)); | 358 | 6 | auto&& results = server_context.call_context.getResults(); | 359 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::out>(), TypeList<LocalType>(), invoke_context, | 360 | 6 | Make<StructField, Accessor>(results), *param); | 361 | 6 | } |
|
362 | | |
363 | | //! Default PassField implementation for count(0) arguments, calling ReadField/BuildField |
364 | | template <typename Accessor, typename ServerContext, typename Fn, typename... Args> |
365 | | void PassField(Priority<0>, TypeList<>, ServerContext& server_context, const Fn& fn, Args&&... args) |
366 | 10 | { |
367 | 10 | const auto& params = server_context.call_context.getParams(); |
368 | 10 | const auto& input = Make<StructField, Accessor>(params); |
369 | 10 | ReadField(TypeList<>(), server_context, input); |
370 | 10 | fn.invoke(server_context, std::forward<Args>(args)...); |
371 | 10 | auto&& results = server_context.call_context.getResults(); |
372 | 10 | BuildField(TypeList<>(), server_context, Make<StructField, Accessor>(results)); |
373 | 10 | } |
374 | | |
375 | | template <typename Derived, size_t N = 0> |
376 | | struct IterateFieldsHelper |
377 | | { |
378 | | template <typename Arg1, typename Arg2, typename ParamList, typename NextFn, typename... NextFnArgs> |
379 | | void handleChain(Arg1& arg1, Arg2& arg2, ParamList, NextFn&& next_fn, NextFnArgs&&... next_fn_args) |
380 | 174 | { |
381 | 174 | using S = Split<N, ParamList>; |
382 | 174 | handleChain(arg1, arg2, typename S::First()); |
383 | 174 | next_fn.handleChain(arg1, arg2, typename S::Second(), |
384 | 174 | std::forward<NextFnArgs>(next_fn_args)...); |
385 | 174 | } void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<int, int, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::BuildParams, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::BuildParams, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<int, int, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<int, int, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::BuildParams, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<int, int, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<int, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<int, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::AddResults>, mp::TypeList<int, int, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::ReadResults, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::ReadResults, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<int, int, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::AddResults>, mp::TypeList<int, int, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::ReadResults, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<int, int, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::AddResults>, mp::TypeList<int, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<int, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::TypeList<COutPoint, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::BuildParams, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::TypeList<COutPoint, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassOutPointResults>, mp::TypeList<COutPoint, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::ReadResults, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassOutPointResults>, mp::TypeList<COutPoint, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::TypeList<UniValue, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::BuildParams, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::TypeList<UniValue, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassUniValueResults>, mp::TypeList<UniValue, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::ReadResults, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassUniValueResults>, mp::TypeList<UniValue, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::TypeList<std::shared_ptr<CTransaction const>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::BuildParams, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::TypeList<std::shared_ptr<CTransaction const>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassTransactionResults>, mp::TypeList<std::shared_ptr<CTransaction const>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::ReadResults, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassTransactionResults>, mp::TypeList<std::shared_ptr<CTransaction const>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::TypeList<std::vector<char, std::allocator<char>>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::BuildParams, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::TypeList<std::vector<char, std::allocator<char>>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassVectorCharResults>, mp::TypeList<std::vector<char, std::allocator<char>>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::ReadResults, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassVectorCharResults>, mp::TypeList<std::vector<char, std::allocator<char>>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::TypeList<CScript, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::BuildParams, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::TypeList<CScript, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::BuildParams&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassScriptResults>, mp::TypeList<CScript, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::ReadResults, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassScriptResults>, mp::TypeList<CScript, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::ReadResults&&) Line | Count | Source | 380 | 1 | { | 381 | 1 | using S = Split<N, ParamList>; | 382 | 1 | handleChain(arg1, arg2, typename S::First()); | 383 | 1 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 1 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>, mp::TypeList<>, mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>, mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::BuildParams&&) Line | Count | Source | 380 | 10 | { | 381 | 10 | using S = Split<N, ParamList>; | 382 | 10 | handleChain(arg1, arg2, typename S::First()); | 383 | 10 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 10 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 10 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::ConstructResults>, mp::TypeList<>, mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>, mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::ReadResults&&) Line | Count | Source | 380 | 10 | { | 381 | 10 | using S = Split<N, ParamList>; | 382 | 10 | handleChain(arg1, arg2, typename S::First()); | 383 | 10 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 10 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 10 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::BuildParams&&) Line | Count | Source | 380 | 6 | { | 381 | 6 | using S = Split<N, ParamList>; | 382 | 6 | handleChain(arg1, arg2, typename S::First()); | 383 | 6 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 6 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::BuildParams&&) Line | Count | Source | 380 | 6 | { | 381 | 6 | using S = Split<N, ParamList>; | 382 | 6 | handleChain(arg1, arg2, typename S::First()); | 383 | 6 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 6 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 6 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::ReadResults&&) Line | Count | Source | 380 | 6 | { | 381 | 6 | using S = Split<N, ParamList>; | 382 | 6 | handleChain(arg1, arg2, typename S::First()); | 383 | 6 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 6 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::ReadResults&&) Line | Count | Source | 380 | 6 | { | 381 | 6 | using S = Split<N, ParamList>; | 382 | 6 | handleChain(arg1, arg2, typename S::First()); | 383 | 6 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 6 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 6 | } |
Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::ReadResults&&) void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::BuildParams&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::BuildParams&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::ReadResults&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::ReadResults&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>, mp::TypeList<>, mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>, mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::BuildParams&&) Line | Count | Source | 380 | 6 | { | 381 | 6 | using S = Split<N, ParamList>; | 382 | 6 | handleChain(arg1, arg2, typename S::First()); | 383 | 6 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 6 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 6 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>, mp::TypeList<>, mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>, mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ReadResults&&) Line | Count | Source | 380 | 6 | { | 381 | 6 | using S = Split<N, ParamList>; | 382 | 6 | handleChain(arg1, arg2, typename S::First()); | 383 | 6 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 6 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 6 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::BuildParams, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams&&) Line | Count | Source | 380 | 6 | { | 381 | 6 | using S = Split<N, ParamList>; | 382 | 6 | handleChain(arg1, arg2, typename S::First()); | 383 | 6 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 6 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::BuildParams, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams&&) Line | Count | Source | 380 | 6 | { | 381 | 6 | using S = Split<N, ParamList>; | 382 | 6 | handleChain(arg1, arg2, typename S::First()); | 383 | 6 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 6 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams&&) Line | Count | Source | 380 | 6 | { | 381 | 6 | using S = Split<N, ParamList>; | 382 | 6 | handleChain(arg1, arg2, typename S::First()); | 383 | 6 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 6 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 6 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::ReadResults, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults&&) Line | Count | Source | 380 | 6 | { | 381 | 6 | using S = Split<N, ParamList>; | 382 | 6 | handleChain(arg1, arg2, typename S::First()); | 383 | 6 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 6 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::ReadResults, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults&&) Line | Count | Source | 380 | 6 | { | 381 | 6 | using S = Split<N, ParamList>; | 382 | 6 | handleChain(arg1, arg2, typename S::First()); | 383 | 6 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 6 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults&&) Line | Count | Source | 380 | 6 | { | 381 | 6 | using S = Split<N, ParamList>; | 382 | 6 | handleChain(arg1, arg2, typename S::First()); | 383 | 6 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 6 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 6 | } |
Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>, std::optional<interfaces::BlockRef>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<node::BlockCreateOptions const&, bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<node::BlockCreateOptions const&, bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<node::BlockCreateOptions const&, bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<node::BlockCreateOptions const&, bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<node::BlockCreateOptions const&, bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<node::BlockCreateOptions const&, bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<node::BlockCreateOptions const&, bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<node::BlockCreateOptions const&, bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<node::BlockCreateOptions const&, bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<node::BlockCreateOptions const&, bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<node::BlockCreateOptions const&, bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<node::BlockCreateOptions const&, bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<bool, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::TypeList<>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::TypeList<>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<CBlockHeader>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<CBlockHeader>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<CBlockHeader>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<CBlockHeader>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<CBlockHeader>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<CBlockHeader>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<CBlockHeader>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<CBlockHeader>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<CBlock>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<CBlock>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<CBlock>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<CBlock>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<CBlock>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<CBlock>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<CBlock>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<CBlock>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<node::CoinbaseTx>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<node::CoinbaseTx>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<node::CoinbaseTx>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<node::CoinbaseTx>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<node::CoinbaseTx>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<node::CoinbaseTx>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<node::CoinbaseTx>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<node::CoinbaseTx>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<node::BlockWaitOptions, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<node::BlockWaitOptions, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<node::BlockWaitOptions, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::BuildParams, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<node::BlockWaitOptions, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<node::BlockWaitOptions, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<node::BlockWaitOptions, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<node::BlockWaitOptions, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<node::BlockWaitOptions, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<node::BlockWaitOptions, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::ReadResults, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<node::BlockWaitOptions, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults&&) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<node::BlockWaitOptions, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<node::BlockWaitOptions, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults&&) void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::BuildParams, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::BuildParams, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::BuildParams, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::ReadResults, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::ReadResults, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::ReadResults, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults&&) Line | Count | Source | 380 | 4 | { | 381 | 4 | using S = Split<N, ParamList>; | 382 | 4 | handleChain(arg1, arg2, typename S::First()); | 383 | 4 | next_fn.handleChain(arg1, arg2, typename S::Second(), | 384 | 4 | std::forward<NextFnArgs>(next_fn_args)...); | 385 | 4 | } |
|
386 | | |
387 | | template <typename Arg1, typename Arg2, typename ParamList> |
388 | | void handleChain(Arg1& arg1, Arg2& arg2, ParamList) |
389 | 258 | { |
390 | 258 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); |
391 | 258 | } void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<int>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<int>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<int>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<int>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<int>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<int>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::AddResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::AddResults>, mp::TypeList<int>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<int>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::AddResults>, mp::TypeList<int>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<int>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::AddResults>, mp::TypeList<int>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<int>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::TypeList<>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::TypeList<COutPoint>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::TypeList<COutPoint>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassOutPointResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassOutPointResults>&, mp::TypeList<>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassOutPointResults>, mp::TypeList<COutPoint>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassOutPointResults>, mp::TypeList<COutPoint>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::TypeList<>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassUniValueResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassUniValueResults>&, mp::TypeList<>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassUniValueResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassUniValueResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::TypeList<>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassTransactionResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassTransactionResults>&, mp::TypeList<>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassTransactionResults>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassTransactionResults>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::TypeList<>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::TypeList<std::vector<char, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::TypeList<std::vector<char, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassVectorCharResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassVectorCharResults>&, mp::TypeList<>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassVectorCharResults>, mp::TypeList<std::vector<char, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassVectorCharResults>, mp::TypeList<std::vector<char, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::TypeList<>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::TypeList<CScript>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::TypeList<CScript>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassScriptResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassScriptResults>&, mp::TypeList<>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassScriptResults>, mp::TypeList<CScript>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<gen::FooInterface::PassScriptResults>, mp::TypeList<CScript>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript>) Line | Count | Source | 389 | 1 | { | 390 | 1 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 1 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>) Line | Count | Source | 389 | 10 | { | 390 | 10 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 10 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>) Line | Count | Source | 389 | 10 | { | 390 | 10 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 10 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::ConstructResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>) Line | Count | Source | 389 | 10 | { | 390 | 10 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 10 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::ConstructResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>) Line | Count | Source | 389 | 10 | { | 390 | 10 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 10 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeMiningOld2Results>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningOld2Results>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>) void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) Line | Count | Source | 389 | 6 | { | 390 | 6 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 6 | } |
Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<std::optional<interfaces::BlockRef>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<std::optional<interfaces::BlockRef>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<uint256>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<uint256>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<std::optional<interfaces::BlockRef>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<uint256>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<uint256>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<std::optional<interfaces::BlockRef>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<node::BlockCreateOptions const&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<node::BlockCreateOptions const&>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<node::BlockCreateOptions const&>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<node::BlockCreateOptions const&>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<CBlock const&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<CBlock const&>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<node::BlockCheckOptions const&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<node::BlockCheckOptions const&>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<CBlock const&>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<CBlock const&>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<node::BlockCheckOptions const&>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<node::BlockCheckOptions const&>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Mining::InterruptResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::InterruptResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<CBlockHeader>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<CBlockHeader>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<CBlockHeader>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<CBlockHeader>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<CBlock>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<CBlock>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<CBlock>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<CBlock>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<std::vector<long, std::allocator<long>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<std::vector<long, std::allocator<long>>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<std::vector<long, std::allocator<long>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<std::vector<long, std::allocator<long>>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<node::CoinbaseTx>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<node::CoinbaseTx>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<node::CoinbaseTx>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<node::CoinbaseTx>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<node::BlockWaitOptions>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<node::BlockWaitOptions>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<node::BlockWaitOptions>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<node::BlockWaitOptions>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::BlockTemplate::InterruptWaitResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&, mp::TypeList<>) void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::BuildParams, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::IterateFields, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::ReadResults, 0ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
void mp::IterateFieldsHelper<mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults, 1ul>::handleChain<mp::ClientInvokeContext, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue>) Line | Count | Source | 389 | 4 | { | 390 | 4 | static_cast<Derived*>(this)->handleField(arg1, arg2, ParamList()); | 391 | 4 | } |
|
392 | | private: |
393 | | IterateFieldsHelper() = default; |
394 | | friend Derived; |
395 | | }; |
396 | | |
397 | | struct IterateFields : IterateFieldsHelper<IterateFields, 0> |
398 | | { |
399 | | template <typename Arg1, typename Arg2, typename ParamList> |
400 | | void handleField(Arg1&&, Arg2&&, ParamList) |
401 | 84 | { |
402 | 84 | } void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<>) Line | Count | Source | 401 | 1 | { | 402 | 1 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<>) Line | Count | Source | 401 | 1 | { | 402 | 1 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::TypeList<>) Line | Count | Source | 401 | 1 | { | 402 | 1 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassOutPointResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassOutPointResults>&, mp::TypeList<>) Line | Count | Source | 401 | 1 | { | 402 | 1 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::TypeList<>) Line | Count | Source | 401 | 1 | { | 402 | 1 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassUniValueResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassUniValueResults>&, mp::TypeList<>) Line | Count | Source | 401 | 1 | { | 402 | 1 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::TypeList<>) Line | Count | Source | 401 | 1 | { | 402 | 1 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassTransactionResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassTransactionResults>&, mp::TypeList<>) Line | Count | Source | 401 | 1 | { | 402 | 1 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::TypeList<>) Line | Count | Source | 401 | 1 | { | 402 | 1 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassVectorCharResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassVectorCharResults>&, mp::TypeList<>) Line | Count | Source | 401 | 1 | { | 402 | 1 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::TypeList<>) Line | Count | Source | 401 | 1 | { | 402 | 1 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassScriptResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassScriptResults>&, mp::TypeList<>) Line | Count | Source | 401 | 1 | { | 402 | 1 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>) Line | Count | Source | 401 | 10 | { | 402 | 10 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>) Line | Count | Source | 401 | 10 | { | 402 | 10 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<>) Line | Count | Source | 401 | 6 | { | 402 | 6 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<>) Line | Count | Source | 401 | 6 | { | 402 | 6 | } |
Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningOld2Results>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningOld2Results>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<>) void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<>) Line | Count | Source | 401 | 4 | { | 402 | 4 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<>) Line | Count | Source | 401 | 4 | { | 402 | 4 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>) Line | Count | Source | 401 | 6 | { | 402 | 6 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>) Line | Count | Source | 401 | 6 | { | 402 | 6 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<>) Line | Count | Source | 401 | 6 | { | 402 | 6 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<>) Line | Count | Source | 401 | 6 | { | 402 | 6 | } |
Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::InterruptResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::InterruptResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&, mp::TypeList<>) void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<>) Line | Count | Source | 401 | 4 | { | 402 | 4 | } |
void mp::IterateFields::handleField<mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<>) Line | Count | Source | 401 | 4 | { | 402 | 4 | } |
|
403 | | }; |
404 | | |
405 | | template <typename Exception, typename Accessor> |
406 | | struct ClientException |
407 | | { |
408 | | struct BuildParams : IterateFieldsHelper<BuildParams, 0> |
409 | | { |
410 | | template <typename Params, typename ParamList> |
411 | | void handleField(InvokeContext& invoke_context, Params& params, ParamList) |
412 | | { |
413 | | } |
414 | | |
415 | | BuildParams(ClientException* client_exception) : m_client_exception(client_exception) {} |
416 | | ClientException* m_client_exception; |
417 | | }; |
418 | | |
419 | | struct ReadResults : IterateFieldsHelper<ReadResults, 0> |
420 | | { |
421 | | template <typename Results, typename ParamList> |
422 | | void handleField(InvokeContext& invoke_context, Results& results, ParamList) |
423 | | { |
424 | | StructField<Accessor, Results> input(results); |
425 | | if (CustomHasField(TypeList<Exception>(), invoke_context, input)) { |
426 | | ThrowField(TypeList<Exception>(), invoke_context, input); |
427 | | } |
428 | | } |
429 | | |
430 | | ReadResults(ClientException* client_exception) : m_client_exception(client_exception) {} |
431 | | ClientException* m_client_exception; |
432 | | }; |
433 | | }; |
434 | | |
435 | | template <typename Accessor, typename... Types> |
436 | | struct ClientParam |
437 | | { |
438 | 87 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {}mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::ClientParam(int&&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::ClientParam(int&&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::ClientParam(int&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::ClientParam(COutPoint&&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::ClientParam(COutPoint&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::ClientParam(UniValue&&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::ClientParam(UniValue&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::ClientParam(std::shared_ptr<CTransaction const>&&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::ClientParam(std::shared_ptr<CTransaction const>&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::ClientParam(std::vector<char, std::allocator<char>>&&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::ClientParam(std::vector<char, std::allocator<char>>&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::ClientParam(CScript&&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::ClientParam(CScript&) Line | Count | Source | 438 | 1 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::ClientParam() Line | Count | Source | 438 | 10 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ClientParam() Line | Count | Source | 438 | 10 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::ClientParam(std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&) Line | Count | Source | 438 | 6 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::ClientParam(std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&) mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::ClientParam(std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&) Line | Count | Source | 438 | 4 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ClientParam() Line | Count | Source | 438 | 12 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::ClientParam(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) Line | Count | Source | 438 | 6 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ClientParam(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Line | Count | Source | 438 | 6 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ClientParam() Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ClientParam(bool&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::ClientParam(std::optional<interfaces::BlockRef>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::ClientParam(uint256&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::ClientParam(std::chrono::duration<double, std::ratio<1l, 1000l>>&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ClientParam(std::optional<interfaces::BlockRef>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::ClientParam(node::BlockCreateOptions const&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::ClientParam(bool&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ClientParam(std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::ClientParam(CBlock const&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::ClientParam(node::BlockCheckOptions const&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ClientParam(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ClientParam(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::ClientParam(CBlockHeader&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::ClientParam(CBlock&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ClientParam(std::vector<long, std::allocator<long>>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::ClientParam(node::CoinbaseTx&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::ClientParam(std::vector<uint256, std::allocator<uint256>>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::ClientParam(unsigned int&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::ClientParam(unsigned int&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ClientParam(unsigned int&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ClientParam(std::shared_ptr<CTransaction const>&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::ClientParam(node::BlockWaitOptions&&) mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::ClientParam() Line | Count | Source | 438 | 4 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::ClientParam(UniValue&&) Line | Count | Source | 438 | 4 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ClientParam(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) Line | Count | Source | 438 | 4 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ClientParam(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) Line | Count | Source | 438 | 4 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ClientParam(UniValue&) Line | Count | Source | 438 | 4 | ClientParam(Types&&... values) : m_values{std::forward<Types>(values)...} {} |
|
439 | | |
440 | | struct BuildParams : IterateFieldsHelper<BuildParams, sizeof...(Types)> |
441 | | { |
442 | | template <typename Params, typename ParamList> |
443 | | void handleField(ClientInvokeContext& invoke_context, Params& params, ParamList) |
444 | 87 | { |
445 | 87 | auto const fun = [&]<typename... Values>(Values&&... values) { |
446 | 87 | MaybeSetWant( |
447 | 87 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); |
448 | 87 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, |
449 | 87 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); |
450 | 87 | }; auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::BuildParams::handleField<capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<int>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<int>)::'lambda'<typename ...$T>($T&&...)::operator()<int>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::BuildParams::handleField<capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<int>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<int>)::'lambda'<typename ...$T>($T&&...)::operator()<int>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::BuildParams::handleField<capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<int>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<int>)::'lambda'<typename ...$T>($T&&...)::operator()<int&>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::TypeList<COutPoint>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint>)::'lambda'<typename ...$T>($T&&...)::operator()<COutPoint>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::TypeList<COutPoint>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint>)::'lambda'<typename ...$T>($T&&...)::operator()<COutPoint&>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue>)::'lambda'<typename ...$T>($T&&...)::operator()<UniValue>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue>)::'lambda'<typename ...$T>($T&&...)::operator()<UniValue&>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::shared_ptr<CTransaction const>>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::shared_ptr<CTransaction const>&>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::TypeList<std::vector<char, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::vector<char, std::allocator<char>>>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::TypeList<std::vector<char, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::vector<char, std::allocator<char>>&>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::TypeList<CScript>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript>)::'lambda'<typename ...$T>($T&&...)::operator()<CScript>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::TypeList<CScript>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript>)::'lambda'<typename ...$T>($T&&...)::operator()<CScript&>($T&&...) const Line | Count | Source | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Line | Count | Source | 445 | 10 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 10 | MaybeSetWant( | 447 | 10 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 10 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 10 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 10 | }; |
auto void mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Line | Count | Source | 445 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 6 | MaybeSetWant( | 447 | 6 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 6 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 6 | }; |
auto void mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>($T&&...) const Line | Count | Source | 445 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 6 | MaybeSetWant( | 447 | 6 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 6 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 6 | }; |
Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>($T&&...) const auto void mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Line | Count | Source | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; |
auto void mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>($T&&...) const Line | Count | Source | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; |
auto void mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Line | Count | Source | 445 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 6 | MaybeSetWant( | 447 | 6 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 6 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 6 | }; |
auto void mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Line | Count | Source | 445 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 6 | MaybeSetWant( | 447 | 6 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 6 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 6 | }; |
auto void mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>)::'lambda'<typename ...$T>($T&&...)::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>($T&&...) const Line | Count | Source | 445 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 6 | MaybeSetWant( | 447 | 6 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 6 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 6 | }; |
auto void mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>($T&&...) const Line | Count | Source | 445 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 6 | MaybeSetWant( | 447 | 6 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 6 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 6 | }; |
Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<bool>)::'lambda'<typename ...$T>($T&&...)::operator()<bool&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<bool>)::'lambda'<typename ...$T>($T&&...)::operator()<bool&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<std::optional<interfaces::BlockRef>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::optional<interfaces::BlockRef>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<uint256>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<uint256>)::'lambda'<typename ...$T>($T&&...)::operator()<uint256>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::chrono::duration<double, std::ratio<1l, 1000l>>>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<std::optional<interfaces::BlockRef>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::optional<interfaces::BlockRef>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<node::BlockCreateOptions const&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<node::BlockCreateOptions const&>)::'lambda'<typename ...$T>($T&&...)::operator()<node::BlockCreateOptions const&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<bool>)::'lambda'<typename ...$T>($T&&...)::operator()<bool>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<CBlock const&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<CBlock const&>)::'lambda'<typename ...$T>($T&&...)::operator()<CBlock const&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<node::BlockCheckOptions const&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<node::BlockCheckOptions const&>)::'lambda'<typename ...$T>($T&&...)::operator()<node::BlockCheckOptions const&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>)::'lambda'<typename ...$T>($T&&...)::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>)::'lambda'<typename ...$T>($T&&...)::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<bool>)::'lambda'<typename ...$T>($T&&...)::operator()<bool&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<CBlockHeader>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<CBlockHeader>)::'lambda'<typename ...$T>($T&&...)::operator()<CBlockHeader&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<CBlock>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<CBlock>)::'lambda'<typename ...$T>($T&&...)::operator()<CBlock&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<std::vector<long, std::allocator<long>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::vector<long, std::allocator<long>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<std::vector<long, std::allocator<long>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::vector<long, std::allocator<long>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<node::CoinbaseTx>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<node::CoinbaseTx>)::'lambda'<typename ...$T>($T&&...)::operator()<node::CoinbaseTx&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::vector<uint256, std::allocator<uint256>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>)::'lambda'<typename ...$T>($T&&...)::operator()<unsigned int>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>)::'lambda'<typename ...$T>($T&&...)::operator()<unsigned int>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>)::'lambda'<typename ...$T>($T&&...)::operator()<unsigned int>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::shared_ptr<CTransaction const>>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<bool>)::'lambda'<typename ...$T>($T&&...)::operator()<bool&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<node::BlockWaitOptions>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<node::BlockWaitOptions>)::'lambda'<typename ...$T>($T&&...)::operator()<node::BlockWaitOptions>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>($T&&...) const auto void mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Line | Count | Source | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; |
auto void mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue>)::'lambda'<typename ...$T>($T&&...)::operator()<UniValue>($T&&...) const Line | Count | Source | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; |
auto void mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>($T&&...) const Line | Count | Source | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; |
auto void mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>($T&&...) const Line | Count | Source | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; |
auto void mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue>)::'lambda'<typename ...$T>($T&&...)::operator()<UniValue&>($T&&...) const Line | Count | Source | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; |
|
451 | | |
452 | | // Note: The m_values tuple just consists of lvalue and rvalue |
453 | | // references, so calling std::move doesn't change the tuple, it |
454 | | // just causes std::apply to call the std::get overload that returns |
455 | | // && instead of &, so rvalue references are preserved and not |
456 | | // turned into lvalue references. This allows the BuildField call to |
457 | | // move from the argument if it is an rvalue reference or was passed |
458 | | // by value. |
459 | 87 | std::apply(fun, std::move(m_client_param->m_values)); |
460 | 87 | } void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::BuildParams::handleField<capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<int>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<int>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::BuildParams::handleField<capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<int>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<int>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::BuildParams::handleField<capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::TypeList<int>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::TypeList<int>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::TypeList<COutPoint>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::TypeList<COutPoint>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::TypeList<std::vector<char, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::TypeList<std::vector<char, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::TypeList<CScript>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::BuildParams::handleField<capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::TypeList<CScript>>(mp::ClientInvokeContext&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript>) Line | Count | Source | 444 | 1 | { | 445 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 1 | MaybeSetWant( | 447 | 1 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 1 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 1 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 1 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 1 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>) Line | Count | Source | 444 | 10 | { | 445 | 10 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 10 | MaybeSetWant( | 447 | 10 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 10 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 10 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 10 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 10 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 10 | } |
void mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<>) Line | Count | Source | 444 | 6 | { | 445 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 6 | MaybeSetWant( | 447 | 6 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 6 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 6 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 6 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 6 | } |
void mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>) Line | Count | Source | 444 | 6 | { | 445 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 6 | MaybeSetWant( | 447 | 6 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 6 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 6 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 6 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 6 | } |
Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>) void mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<>) Line | Count | Source | 444 | 4 | { | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 4 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 4 | } |
void mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>) Line | Count | Source | 444 | 4 | { | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 4 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 4 | } |
void mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>) Line | Count | Source | 444 | 6 | { | 445 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 6 | MaybeSetWant( | 447 | 6 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 6 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 6 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 6 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 6 | } |
void mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<>) Line | Count | Source | 444 | 6 | { | 445 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 6 | MaybeSetWant( | 447 | 6 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 6 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 6 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 6 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 6 | } |
void mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>) Line | Count | Source | 444 | 6 | { | 445 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 6 | MaybeSetWant( | 447 | 6 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 6 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 6 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 6 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 6 | } |
void mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) Line | Count | Source | 444 | 6 | { | 445 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 6 | MaybeSetWant( | 447 | 6 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 6 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 6 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 6 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 6 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 6 | } |
Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::TypeList<std::optional<interfaces::BlockRef>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<uint256>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<uint256>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::TypeList<std::optional<interfaces::BlockRef>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<node::BlockCreateOptions const&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<node::BlockCreateOptions const&>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<CBlock const&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<CBlock const&>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<node::BlockCheckOptions const&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<node::BlockCheckOptions const&>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::TypeList<CBlockHeader>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<CBlockHeader>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::TypeList<CBlock>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<CBlock>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::TypeList<std::vector<long, std::allocator<long>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::TypeList<std::vector<long, std::allocator<long>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::TypeList<node::CoinbaseTx>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<node::CoinbaseTx>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<unsigned int>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::TypeList<bool>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<node::BlockWaitOptions>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<node::BlockWaitOptions>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>) void mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<>) Line | Count | Source | 444 | 4 | { | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 4 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 4 | } |
void mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue>) Line | Count | Source | 444 | 4 | { | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 4 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 4 | } |
void mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) Line | Count | Source | 444 | 4 | { | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 4 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 4 | } |
void mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) Line | Count | Source | 444 | 4 | { | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 4 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 4 | } |
void mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams::handleField<capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::TypeList<UniValue>>(mp::ClientInvokeContext&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue>) Line | Count | Source | 444 | 4 | { | 445 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 446 | 4 | MaybeSetWant( | 447 | 4 | ParamList(), Priority<1>(), values..., Make<StructField, Accessor>(params)); | 448 | 4 | MaybeBuildField(std::integral_constant<bool, Accessor::in>(), ParamList(), invoke_context, | 449 | 4 | Make<StructField, Accessor>(params), std::forward<Values>(values)...); | 450 | 4 | }; | 451 | | | 452 | | // Note: The m_values tuple just consists of lvalue and rvalue | 453 | | // references, so calling std::move doesn't change the tuple, it | 454 | | // just causes std::apply to call the std::get overload that returns | 455 | | // && instead of &, so rvalue references are preserved and not | 456 | | // turned into lvalue references. This allows the BuildField call to | 457 | | // move from the argument if it is an rvalue reference or was passed | 458 | | // by value. | 459 | 4 | std::apply(fun, std::move(m_client_param->m_values)); | 460 | 4 | } |
|
461 | | |
462 | 87 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {}mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>*) Line | Count | Source | 462 | 1 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>*) Line | Count | Source | 462 | 10 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>*) Line | Count | Source | 462 | 10 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>*) Line | Count | Source | 462 | 6 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>*) mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>*) Line | Count | Source | 462 | 4 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>*) Line | Count | Source | 462 | 12 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>*) Line | Count | Source | 462 | 6 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>*) Line | Count | Source | 462 | 6 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>*) mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>*) Line | Count | Source | 462 | 4 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>*) Line | Count | Source | 462 | 4 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>*) Line | Count | Source | 462 | 4 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>*) Line | Count | Source | 462 | 4 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::BuildParams::BuildParams(mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>*) Line | Count | Source | 462 | 4 | BuildParams(ClientParam* client_param) : m_client_param(client_param) {} |
|
463 | | ClientParam* m_client_param; |
464 | | }; |
465 | | |
466 | | struct ReadResults : IterateFieldsHelper<ReadResults, sizeof...(Types)> |
467 | | { |
468 | | template <typename Results, typename... Params> |
469 | | void handleField(ClientInvokeContext& invoke_context, Results& results, TypeList<Params...>) |
470 | 87 | { |
471 | 87 | auto const fun = [&]<typename... Values>(Values&&... values) { |
472 | 87 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, |
473 | 87 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); |
474 | 87 | }; auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::ReadResults::handleField<capnp::Response<gen::FooInterface::AddResults>, int>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<int>)::'lambda'<typename ...$T>($T&&...)::operator()<int&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::ReadResults::handleField<capnp::Response<gen::FooInterface::AddResults>, int>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<int>)::'lambda'<typename ...$T>($T&&...)::operator()<int&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::ReadResults::handleField<capnp::Response<gen::FooInterface::AddResults>, int>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<int>)::'lambda'<typename ...$T>($T&&...)::operator()<int&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassOutPointResults>, COutPoint>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint>)::'lambda'<typename ...$T>($T&&...)::operator()<COutPoint&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassOutPointResults>, COutPoint>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint>)::'lambda'<typename ...$T>($T&&...)::operator()<COutPoint&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassUniValueResults>, UniValue>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue>)::'lambda'<typename ...$T>($T&&...)::operator()<UniValue&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassUniValueResults>, UniValue>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue>)::'lambda'<typename ...$T>($T&&...)::operator()<UniValue&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassTransactionResults>, std::shared_ptr<CTransaction const>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::shared_ptr<CTransaction const>&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassTransactionResults>, std::shared_ptr<CTransaction const>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::shared_ptr<CTransaction const>&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassVectorCharResults>, std::vector<char, std::allocator<char>>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::vector<char, std::allocator<char>>&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassVectorCharResults>, std::vector<char, std::allocator<char>>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::vector<char, std::allocator<char>>&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassScriptResults>, CScript>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript>)::'lambda'<typename ...$T>($T&&...)::operator()<CScript&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassScriptResults>, CScript>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript>)::'lambda'<typename ...$T>($T&&...)::operator()<CScript&>($T&&...) const Line | Count | Source | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; |
auto void mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::ConstructResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Line | Count | Source | 471 | 10 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 10 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 10 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 10 | }; |
auto void mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Line | Count | Source | 471 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 6 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 6 | }; |
auto void mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>($T&&...) const Line | Count | Source | 471 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 6 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 6 | }; |
Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>($T&&...) const auto void mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Line | Count | Source | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; |
auto void mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>($T&&...) const Line | Count | Source | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; |
auto void mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Echo::DestroyResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Line | Count | Source | 471 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 6 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 6 | }; |
auto void mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Echo::EchoResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Line | Count | Source | 471 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 6 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 6 | }; |
auto void mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Echo::EchoResults>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>)::'lambda'<typename ...$T>($T&&...)::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>($T&&...) const Line | Count | Source | 471 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 6 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 6 | }; |
auto void mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Echo::EchoResults>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>($T&&...) const Line | Count | Source | 471 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 6 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 6 | }; |
Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>, bool>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<bool>)::'lambda'<typename ...$T>($T&&...)::operator()<bool&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, bool>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<bool>)::'lambda'<typename ...$T>($T&&...)::operator()<bool&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::GetTipResults>, std::optional<interfaces::BlockRef>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::optional<interfaces::BlockRef>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, uint256>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<uint256>)::'lambda'<typename ...$T>($T&&...)::operator()<uint256&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, std::chrono::duration<double, std::ratio<1l, 1000l>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::chrono::duration<double, std::ratio<1l, 1000l>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, std::optional<interfaces::BlockRef>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::optional<interfaces::BlockRef>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, node::BlockCreateOptions const&>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<node::BlockCreateOptions const&>)::'lambda'<typename ...$T>($T&&...)::operator()<node::BlockCreateOptions const&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, bool>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<bool>)::'lambda'<typename ...$T>($T&&...)::operator()<bool&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, CBlock const&>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<CBlock const&>)::'lambda'<typename ...$T>($T&&...)::operator()<CBlock const&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, node::BlockCheckOptions const&>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<node::BlockCheckOptions const&>)::'lambda'<typename ...$T>($T&&...)::operator()<node::BlockCheckOptions const&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>)::'lambda'<typename ...$T>($T&&...)::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>)::'lambda'<typename ...$T>($T&&...)::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, bool>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<bool>)::'lambda'<typename ...$T>($T&&...)::operator()<bool&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, CBlockHeader>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<CBlockHeader>)::'lambda'<typename ...$T>($T&&...)::operator()<CBlockHeader&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>, CBlock>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<CBlock>)::'lambda'<typename ...$T>($T&&...)::operator()<CBlock&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, std::vector<long, std::allocator<long>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::vector<long, std::allocator<long>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, std::vector<long, std::allocator<long>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::vector<long, std::allocator<long>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, node::CoinbaseTx>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<node::CoinbaseTx>)::'lambda'<typename ...$T>($T&&...)::operator()<node::CoinbaseTx&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, std::vector<uint256, std::allocator<uint256>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::vector<uint256, std::allocator<uint256>>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, unsigned int>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>)::'lambda'<typename ...$T>($T&&...)::operator()<unsigned int&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, unsigned int>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>)::'lambda'<typename ...$T>($T&&...)::operator()<unsigned int&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, unsigned int>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>)::'lambda'<typename ...$T>($T&&...)::operator()<unsigned int&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, std::shared_ptr<CTransaction const>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::shared_ptr<CTransaction const>&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, bool>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<bool>)::'lambda'<typename ...$T>($T&&...)::operator()<bool&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>, node::BlockWaitOptions>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<node::BlockWaitOptions>)::'lambda'<typename ...$T>($T&&...)::operator()<node::BlockWaitOptions&>($T&&...) const Unexecuted instantiation: auto void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>($T&&...) const auto void mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<>)::'lambda'<typename ...$T>($T&&...)::operator()<>($T&&...) const Line | Count | Source | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; |
auto void mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, UniValue>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue>)::'lambda'<typename ...$T>($T&&...)::operator()<UniValue&>($T&&...) const Line | Count | Source | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; |
auto void mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>($T&&...) const Line | Count | Source | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; |
auto void mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>)::'lambda'<typename ...$T>($T&&...)::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>($T&&...) const Line | Count | Source | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; |
auto void mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, UniValue>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue>)::'lambda'<typename ...$T>($T&&...)::operator()<UniValue&>($T&&...) const Line | Count | Source | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; |
|
475 | | |
476 | 87 | std::apply(fun, m_client_param->m_values); |
477 | 87 | } void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::ReadResults::handleField<capnp::Response<gen::FooInterface::AddResults>, int>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<int>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::ReadResults::handleField<capnp::Response<gen::FooInterface::AddResults>, int>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<int>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::ReadResults::handleField<capnp::Response<gen::FooInterface::AddResults>, int>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::AddResults>&, mp::TypeList<int>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassOutPointResults>, COutPoint>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassOutPointResults>, COutPoint>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassOutPointResults>&, mp::TypeList<COutPoint>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassUniValueResults>, UniValue>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassUniValueResults>, UniValue>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassUniValueResults>&, mp::TypeList<UniValue>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassTransactionResults>, std::shared_ptr<CTransaction const>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassTransactionResults>, std::shared_ptr<CTransaction const>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassTransactionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassVectorCharResults>, std::vector<char, std::allocator<char>>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassVectorCharResults>, std::vector<char, std::allocator<char>>>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassVectorCharResults>&, mp::TypeList<std::vector<char, std::allocator<char>>>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassScriptResults>, CScript>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::ReadResults::handleField<capnp::Response<gen::FooInterface::PassScriptResults>, CScript>(mp::ClientInvokeContext&, capnp::Response<gen::FooInterface::PassScriptResults>&, mp::TypeList<CScript>) Line | Count | Source | 470 | 1 | { | 471 | 1 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 1 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 1 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 1 | }; | 475 | | | 476 | 1 | std::apply(fun, m_client_param->m_values); | 477 | 1 | } |
void mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::ConstructResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::ConstructResults>&, mp::TypeList<>) Line | Count | Source | 470 | 10 | { | 471 | 10 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 10 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 10 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 10 | }; | 475 | | | 476 | 10 | std::apply(fun, m_client_param->m_values); | 477 | 10 | } |
void mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<>) Line | Count | Source | 470 | 6 | { | 471 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 6 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 6 | }; | 475 | | | 476 | 6 | std::apply(fun, m_client_param->m_values); | 477 | 6 | } |
void mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&, mp::TypeList<std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>>) Line | Count | Source | 470 | 6 | { | 471 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 6 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 6 | }; | 475 | | | 476 | 6 | std::apply(fun, m_client_param->m_values); | 477 | 6 | } |
Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&, mp::TypeList<std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>>) void mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<>) Line | Count | Source | 470 | 4 | { | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; | 475 | | | 476 | 4 | std::apply(fun, m_client_param->m_values); | 477 | 4 | } |
void mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&, mp::TypeList<std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>>) Line | Count | Source | 470 | 4 | { | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; | 475 | | | 476 | 4 | std::apply(fun, m_client_param->m_values); | 477 | 4 | } |
void mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Echo::DestroyResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::DestroyResults>&, mp::TypeList<>) Line | Count | Source | 470 | 6 | { | 471 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 6 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 6 | }; | 475 | | | 476 | 6 | std::apply(fun, m_client_param->m_values); | 477 | 6 | } |
void mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Echo::EchoResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<>) Line | Count | Source | 470 | 6 | { | 471 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 6 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 6 | }; | 475 | | | 476 | 6 | std::apply(fun, m_client_param->m_values); | 477 | 6 | } |
void mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Echo::EchoResults>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>) Line | Count | Source | 470 | 6 | { | 471 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 6 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 6 | }; | 475 | | | 476 | 6 | std::apply(fun, m_client_param->m_values); | 477 | 6 | } |
void mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Echo::EchoResults>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Echo::EchoResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) Line | Count | Source | 470 | 6 | { | 471 | 6 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 6 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 6 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 6 | }; | 475 | | | 476 | 6 | std::apply(fun, m_client_param->m_values); | 477 | 6 | } |
Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>, bool>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, bool>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::GetTipResults>, std::optional<interfaces::BlockRef>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, uint256>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<uint256>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, std::chrono::duration<double, std::ratio<1l, 1000l>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>, std::optional<interfaces::BlockRef>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::TypeList<std::optional<interfaces::BlockRef>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, node::BlockCreateOptions const&>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<node::BlockCreateOptions const&>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, bool>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, CBlock const&>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<CBlock const&>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, node::BlockCheckOptions const&>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<node::BlockCheckOptions const&>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>, bool>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, CBlockHeader>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::TypeList<CBlockHeader>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>, CBlock>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::TypeList<CBlock>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, std::vector<long, std::allocator<long>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, std::vector<long, std::allocator<long>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::TypeList<std::vector<long, std::allocator<long>>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, node::CoinbaseTx>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::TypeList<node::CoinbaseTx>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, std::vector<uint256, std::allocator<uint256>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::TypeList<std::vector<uint256, std::allocator<uint256>>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, unsigned int>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, unsigned int>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, unsigned int>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<unsigned int>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, std::shared_ptr<CTransaction const>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<std::shared_ptr<CTransaction const>>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, bool>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::TypeList<bool>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>, node::BlockWaitOptions>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<node::BlockWaitOptions>) Unexecuted instantiation: void mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::TypeList<std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>>) void mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<>) Line | Count | Source | 470 | 4 | { | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; | 475 | | | 476 | 4 | std::apply(fun, m_client_param->m_values); | 477 | 4 | } |
void mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, UniValue>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue>) Line | Count | Source | 470 | 4 | { | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; | 475 | | | 476 | 4 | std::apply(fun, m_client_param->m_values); | 477 | 4 | } |
void mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) Line | Count | Source | 470 | 4 | { | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; | 475 | | | 476 | 4 | std::apply(fun, m_client_param->m_values); | 477 | 4 | } |
void mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) Line | Count | Source | 470 | 4 | { | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; | 475 | | | 476 | 4 | std::apply(fun, m_client_param->m_values); | 477 | 4 | } |
void mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults::handleField<capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>, UniValue>(mp::ClientInvokeContext&, capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::TypeList<UniValue>) Line | Count | Source | 470 | 4 | { | 471 | 4 | auto const fun = [&]<typename... Values>(Values&&... values) { | 472 | 4 | MaybeReadField(std::integral_constant<bool, Accessor::out>(), TypeList<Decay<Params>...>(), invoke_context, | 473 | 4 | Make<StructField, Accessor>(results), ReadDestUpdate(values)...); | 474 | 4 | }; | 475 | | | 476 | 4 | std::apply(fun, m_client_param->m_values); | 477 | 4 | } |
|
478 | | |
479 | 87 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {}mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>*) Line | Count | Source | 479 | 1 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>*) Line | Count | Source | 479 | 10 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>*) Line | Count | Source | 479 | 10 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>*) Line | Count | Source | 479 | 6 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>*) mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>*) Line | Count | Source | 479 | 4 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>*) Line | Count | Source | 479 | 12 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>*) Line | Count | Source | 479 | 6 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>*) Line | Count | Source | 479 | 6 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>*) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>*) mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>*) Line | Count | Source | 479 | 4 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>*) Line | Count | Source | 479 | 4 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>*) Line | Count | Source | 479 | 4 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>*) Line | Count | Source | 479 | 4 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>::ReadResults::ReadResults(mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>*) Line | Count | Source | 479 | 4 | ReadResults(ClientParam* client_param) : m_client_param(client_param) {} |
|
480 | | ClientParam* m_client_param; |
481 | | }; |
482 | | |
483 | | std::tuple<Types&&...> m_values; |
484 | | }; |
485 | | |
486 | | template <typename Accessor, typename... Types> |
487 | | ClientParam<Accessor, Types...> MakeClientParam(Types&&... values) |
488 | 87 | { |
489 | 87 | return {std::forward<Types>(values)...}; |
490 | 87 | } mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>(int&&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>(int&&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>(int&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>(COutPoint&&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>(COutPoint&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>(UniValue&&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>(UniValue&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>(std::shared_ptr<CTransaction const>&&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>(std::shared_ptr<CTransaction const>&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>(std::vector<char, std::allocator<char>>&&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>(std::vector<char, std::allocator<char>>&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>(CScript&&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&> mp::MakeClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>(CScript&) Line | Count | Source | 488 | 1 | { | 489 | 1 | return {std::forward<Types>(values)...}; | 490 | 1 | } |
mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>> mp::MakeClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>() Line | Count | Source | 488 | 10 | { | 489 | 10 | return {std::forward<Types>(values)...}; | 490 | 10 | } |
mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>> mp::MakeClientParam<mp::Accessor<mp::init_fields::Context, 17>>() Line | Count | Source | 488 | 10 | { | 489 | 10 | return {std::forward<Types>(values)...}; | 490 | 10 | } |
mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&> mp::MakeClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>(std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&) Line | Count | Source | 488 | 6 | { | 489 | 6 | return {std::forward<Types>(values)...}; | 490 | 6 | } |
Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&> mp::MakeClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>(std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&) mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&> mp::MakeClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>(std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&) Line | Count | Source | 488 | 4 | { | 489 | 4 | return {std::forward<Types>(values)...}; | 490 | 4 | } |
mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>> mp::MakeClientParam<mp::Accessor<mp::echo_fields::Context, 17>>() Line | Count | Source | 488 | 12 | { | 489 | 12 | return {std::forward<Types>(values)...}; | 490 | 12 | } |
mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&> mp::MakeClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) Line | Count | Source | 488 | 6 | { | 489 | 6 | return {std::forward<Types>(values)...}; | 490 | 6 | } |
mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&> mp::MakeClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Line | Count | Source | 488 | 6 | { | 489 | 6 | return {std::forward<Types>(values)...}; | 490 | 6 | } |
Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Context, 17>>() Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>(bool&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>(std::optional<interfaces::BlockRef>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256> mp::MakeClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>(uint256&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>(std::chrono::duration<double, std::ratio<1l, 1000l>>&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>(std::optional<interfaces::BlockRef>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>(node::BlockCreateOptions const&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>(bool&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>(std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>(CBlock const&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>(node::BlockCheckOptions const&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>(CBlockHeader&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>(CBlock&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>(std::vector<long, std::allocator<long>>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>(node::CoinbaseTx&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>(std::vector<uint256, std::allocator<uint256>>&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>(unsigned int&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>(unsigned int&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>(unsigned int&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>(std::shared_ptr<CTransaction const>&&) Unexecuted instantiation: mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions> mp::MakeClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>(node::BlockWaitOptions&&) mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>> mp::MakeClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>() Line | Count | Source | 488 | 4 | { | 489 | 4 | return {std::forward<Types>(values)...}; | 490 | 4 | } |
mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue> mp::MakeClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>(UniValue&&) Line | Count | Source | 488 | 4 | { | 489 | 4 | return {std::forward<Types>(values)...}; | 490 | 4 | } |
mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>> mp::MakeClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) Line | Count | Source | 488 | 4 | { | 489 | 4 | return {std::forward<Types>(values)...}; | 490 | 4 | } |
mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>> mp::MakeClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) Line | Count | Source | 488 | 4 | { | 489 | 4 | return {std::forward<Types>(values)...}; | 490 | 4 | } |
mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&> mp::MakeClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>(UniValue&) Line | Count | Source | 488 | 4 | { | 489 | 4 | return {std::forward<Types>(values)...}; | 490 | 4 | } |
|
491 | | |
492 | | struct ServerCall |
493 | | { |
494 | | // FIXME: maybe call call_context.releaseParams() |
495 | | template <typename ServerContext, typename... Args> |
496 | | decltype(auto) invoke(ServerContext& server_context, TypeList<>, Args&&... args) const |
497 | 36 | { |
498 | | // If cancel_lock is set, release it while executing the method, and |
499 | | // reacquire it afterwards. The lock is needed to prevent params and |
500 | | // response structs from being deleted by the event loop thread if the |
501 | | // request is canceled, so it is only needed before and after method |
502 | | // execution. It is important to release the lock during execution |
503 | | // because the method can take arbitrarily long to return and the event |
504 | | // loop will need the lock itself in on_cancel if the call is canceled. |
505 | 36 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.unlock(); |
506 | 36 | return TryFinally( |
507 | 36 | [&]() -> decltype(auto) { |
508 | 36 | return ProxyServerMethodTraits< |
509 | 36 | typename decltype(server_context.call_context.getParams())::Reads |
510 | 36 | >::invoke(server_context, std::forward<Args>(args)...); |
511 | 36 | }, decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, int, int>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::TypeList<>, int&&, int&&) const::'lambda'()::operator()() const Line | Count | Source | 507 | 1 | [&]() -> decltype(auto) { | 508 | 1 | return ProxyServerMethodTraits< | 509 | 1 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 1 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 1 | }, |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, COutPoint>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::TypeList<>, COutPoint&&) const::'lambda'()::operator()() const Line | Count | Source | 507 | 1 | [&]() -> decltype(auto) { | 508 | 1 | return ProxyServerMethodTraits< | 509 | 1 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 1 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 1 | }, |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, UniValue>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::TypeList<>, UniValue&&) const::'lambda'()::operator()() const Line | Count | Source | 507 | 1 | [&]() -> decltype(auto) { | 508 | 1 | return ProxyServerMethodTraits< | 509 | 1 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 1 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 1 | }, |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, std::shared_ptr<CTransaction const>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::TypeList<>, std::shared_ptr<CTransaction const>&&) const::'lambda'()::operator()() const Line | Count | Source | 507 | 1 | [&]() -> decltype(auto) { | 508 | 1 | return ProxyServerMethodTraits< | 509 | 1 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 1 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 1 | }, |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, std::vector<char, std::allocator<char>>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::TypeList<>, std::vector<char, std::allocator<char>>&&) const::'lambda'()::operator()() const Line | Count | Source | 507 | 1 | [&]() -> decltype(auto) { | 508 | 1 | return ProxyServerMethodTraits< | 509 | 1 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 1 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 1 | }, |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, CScript>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::TypeList<>, CScript&&) const::'lambda'()::operator()() const Line | Count | Source | 507 | 1 | [&]() -> decltype(auto) { | 508 | 1 | return ProxyServerMethodTraits< | 509 | 1 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 1 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 1 | }, |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Line | Count | Source | 507 | 10 | [&]() -> decltype(auto) { | 508 | 10 | return ProxyServerMethodTraits< | 509 | 10 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 10 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 10 | }, |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Line | Count | Source | 507 | 6 | [&]() -> decltype(auto) { | 508 | 6 | return ProxyServerMethodTraits< | 509 | 6 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 6 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 6 | }, |
Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>>&, mp::TypeList<>) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Line | Count | Source | 507 | 4 | [&]() -> decltype(auto) { | 508 | 4 | return ProxyServerMethodTraits< | 509 | 4 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 4 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 4 | }, |
Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::TypeList<>, uint256&&, std::chrono::duration<double, std::ratio<1l, 1000l>>&&) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, node::BlockCreateOptions const&, bool>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::TypeList<>, node::BlockCreateOptions const&, bool&&) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::TypeList<>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::TypeList<>, unsigned int&&, unsigned int&&, unsigned int&&, std::shared_ptr<CTransaction const>&&) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, node::BlockWaitOptions>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::TypeList<>, node::BlockWaitOptions&&) const::'lambda'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>>&, mp::TypeList<>) const::'lambda'()::operator()() const decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::TypeList<>, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) const::'lambda'()::operator()() const Line | Count | Source | 507 | 4 | [&]() -> decltype(auto) { | 508 | 4 | return ProxyServerMethodTraits< | 509 | 4 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 4 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 4 | }, |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::TypeList<>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const::'lambda'()::operator()[abi:cxx11]() const Line | Count | Source | 507 | 6 | [&]() -> decltype(auto) { | 508 | 6 | return ProxyServerMethodTraits< | 509 | 6 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 6 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 6 | }, |
|
512 | 36 | [&] { |
513 | 36 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); |
514 | | // If the IPC request was canceled, throw InterruptException |
515 | | // because there is no point continuing and trying to fill the |
516 | | // call_context.getResults() struct. It's also important to stop |
517 | | // executing because the connection may have been destroyed as |
518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 |
519 | | // and there could be invalid references to the destroyed |
520 | | // Connection object if this continued. |
521 | | // If the IPC method itself threw an exception, the |
522 | | // InterruptException thrown below will take precedence over it. |
523 | | // Since the call has been canceled that exception can't be |
524 | | // returned to the caller, so it needs to be discarded like |
525 | | // other result values. |
526 | 36 | if (server_context.request_canceled) throw InterruptException{"canceled"}; |
527 | 36 | }); decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, int, int>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::TypeList<>, int&&, int&&) const::'lambda0'()::operator()() const Line | Count | Source | 512 | 1 | [&] { | 513 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 1 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 1 | }); |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, COutPoint>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::TypeList<>, COutPoint&&) const::'lambda0'()::operator()() const Line | Count | Source | 512 | 1 | [&] { | 513 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 1 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 1 | }); |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, UniValue>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::TypeList<>, UniValue&&) const::'lambda0'()::operator()() const Line | Count | Source | 512 | 1 | [&] { | 513 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 1 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 1 | }); |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, std::shared_ptr<CTransaction const>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::TypeList<>, std::shared_ptr<CTransaction const>&&) const::'lambda0'()::operator()() const Line | Count | Source | 512 | 1 | [&] { | 513 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 1 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 1 | }); |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, std::vector<char, std::allocator<char>>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::TypeList<>, std::vector<char, std::allocator<char>>&&) const::'lambda0'()::operator()() const Line | Count | Source | 512 | 1 | [&] { | 513 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 1 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 1 | }); |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, CScript>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::TypeList<>, CScript&&) const::'lambda0'()::operator()() const Line | Count | Source | 512 | 1 | [&] { | 513 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 1 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 1 | }); |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Line | Count | Source | 512 | 10 | [&] { | 513 | 10 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 10 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 10 | }); |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Line | Count | Source | 512 | 6 | [&] { | 513 | 6 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 6 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 6 | }); |
Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Line | Count | Source | 512 | 4 | [&] { | 513 | 4 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 4 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 4 | }); |
Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::TypeList<>, uint256&&, std::chrono::duration<double, std::ratio<1l, 1000l>>&&) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, node::BlockCreateOptions const&, bool>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::TypeList<>, node::BlockCreateOptions const&, bool&&) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::TypeList<>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::TypeList<>, unsigned int&&, unsigned int&&, unsigned int&&, std::shared_ptr<CTransaction const>&&) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, node::BlockWaitOptions>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::TypeList<>, node::BlockWaitOptions&&) const::'lambda0'()::operator()() const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>>&, mp::TypeList<>) const::'lambda0'()::operator()() const decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::TypeList<>, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) const::'lambda0'()::operator()() const Line | Count | Source | 512 | 4 | [&] { | 513 | 4 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 4 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 4 | }); |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::TypeList<>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const::'lambda0'()::operator()() const Line | Count | Source | 512 | 6 | [&] { | 513 | 6 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 6 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 6 | }); |
|
528 | 36 | } decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, int, int>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::TypeList<>, int&&, int&&) const Line | Count | Source | 497 | 1 | { | 498 | | // If cancel_lock is set, release it while executing the method, and | 499 | | // reacquire it afterwards. The lock is needed to prevent params and | 500 | | // response structs from being deleted by the event loop thread if the | 501 | | // request is canceled, so it is only needed before and after method | 502 | | // execution. It is important to release the lock during execution | 503 | | // because the method can take arbitrarily long to return and the event | 504 | | // loop will need the lock itself in on_cancel if the call is canceled. | 505 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.unlock(); | 506 | 1 | return TryFinally( | 507 | 1 | [&]() -> decltype(auto) { | 508 | 1 | return ProxyServerMethodTraits< | 509 | 1 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 1 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 1 | }, | 512 | 1 | [&] { | 513 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 1 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 1 | }); | 528 | 1 | } |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, COutPoint>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::TypeList<>, COutPoint&&) const Line | Count | Source | 497 | 1 | { | 498 | | // If cancel_lock is set, release it while executing the method, and | 499 | | // reacquire it afterwards. The lock is needed to prevent params and | 500 | | // response structs from being deleted by the event loop thread if the | 501 | | // request is canceled, so it is only needed before and after method | 502 | | // execution. It is important to release the lock during execution | 503 | | // because the method can take arbitrarily long to return and the event | 504 | | // loop will need the lock itself in on_cancel if the call is canceled. | 505 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.unlock(); | 506 | 1 | return TryFinally( | 507 | 1 | [&]() -> decltype(auto) { | 508 | 1 | return ProxyServerMethodTraits< | 509 | 1 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 1 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 1 | }, | 512 | 1 | [&] { | 513 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 1 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 1 | }); | 528 | 1 | } |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, UniValue>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::TypeList<>, UniValue&&) const Line | Count | Source | 497 | 1 | { | 498 | | // If cancel_lock is set, release it while executing the method, and | 499 | | // reacquire it afterwards. The lock is needed to prevent params and | 500 | | // response structs from being deleted by the event loop thread if the | 501 | | // request is canceled, so it is only needed before and after method | 502 | | // execution. It is important to release the lock during execution | 503 | | // because the method can take arbitrarily long to return and the event | 504 | | // loop will need the lock itself in on_cancel if the call is canceled. | 505 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.unlock(); | 506 | 1 | return TryFinally( | 507 | 1 | [&]() -> decltype(auto) { | 508 | 1 | return ProxyServerMethodTraits< | 509 | 1 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 1 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 1 | }, | 512 | 1 | [&] { | 513 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 1 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 1 | }); | 528 | 1 | } |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, std::shared_ptr<CTransaction const>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::TypeList<>, std::shared_ptr<CTransaction const>&&) const Line | Count | Source | 497 | 1 | { | 498 | | // If cancel_lock is set, release it while executing the method, and | 499 | | // reacquire it afterwards. The lock is needed to prevent params and | 500 | | // response structs from being deleted by the event loop thread if the | 501 | | // request is canceled, so it is only needed before and after method | 502 | | // execution. It is important to release the lock during execution | 503 | | // because the method can take arbitrarily long to return and the event | 504 | | // loop will need the lock itself in on_cancel if the call is canceled. | 505 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.unlock(); | 506 | 1 | return TryFinally( | 507 | 1 | [&]() -> decltype(auto) { | 508 | 1 | return ProxyServerMethodTraits< | 509 | 1 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 1 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 1 | }, | 512 | 1 | [&] { | 513 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 1 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 1 | }); | 528 | 1 | } |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, std::vector<char, std::allocator<char>>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::TypeList<>, std::vector<char, std::allocator<char>>&&) const Line | Count | Source | 497 | 1 | { | 498 | | // If cancel_lock is set, release it while executing the method, and | 499 | | // reacquire it afterwards. The lock is needed to prevent params and | 500 | | // response structs from being deleted by the event loop thread if the | 501 | | // request is canceled, so it is only needed before and after method | 502 | | // execution. It is important to release the lock during execution | 503 | | // because the method can take arbitrarily long to return and the event | 504 | | // loop will need the lock itself in on_cancel if the call is canceled. | 505 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.unlock(); | 506 | 1 | return TryFinally( | 507 | 1 | [&]() -> decltype(auto) { | 508 | 1 | return ProxyServerMethodTraits< | 509 | 1 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 1 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 1 | }, | 512 | 1 | [&] { | 513 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 1 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 1 | }); | 528 | 1 | } |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, CScript>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::TypeList<>, CScript&&) const Line | Count | Source | 497 | 1 | { | 498 | | // If cancel_lock is set, release it while executing the method, and | 499 | | // reacquire it afterwards. The lock is needed to prevent params and | 500 | | // response structs from being deleted by the event loop thread if the | 501 | | // request is canceled, so it is only needed before and after method | 502 | | // execution. It is important to release the lock during execution | 503 | | // because the method can take arbitrarily long to return and the event | 504 | | // loop will need the lock itself in on_cancel if the call is canceled. | 505 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.unlock(); | 506 | 1 | return TryFinally( | 507 | 1 | [&]() -> decltype(auto) { | 508 | 1 | return ProxyServerMethodTraits< | 509 | 1 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 1 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 1 | }, | 512 | 1 | [&] { | 513 | 1 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 1 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 1 | }); | 528 | 1 | } |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>&, mp::TypeList<>) const Line | Count | Source | 497 | 10 | { | 498 | | // If cancel_lock is set, release it while executing the method, and | 499 | | // reacquire it afterwards. The lock is needed to prevent params and | 500 | | // response structs from being deleted by the event loop thread if the | 501 | | // request is canceled, so it is only needed before and after method | 502 | | // execution. It is important to release the lock during execution | 503 | | // because the method can take arbitrarily long to return and the event | 504 | | // loop will need the lock itself in on_cancel if the call is canceled. | 505 | 10 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.unlock(); | 506 | 10 | return TryFinally( | 507 | 10 | [&]() -> decltype(auto) { | 508 | 10 | return ProxyServerMethodTraits< | 509 | 10 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 10 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 10 | }, | 512 | 10 | [&] { | 513 | 10 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 10 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 10 | }); | 528 | 10 | } |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>&, mp::TypeList<>) const Line | Count | Source | 497 | 6 | { | 498 | | // If cancel_lock is set, release it while executing the method, and | 499 | | // reacquire it afterwards. The lock is needed to prevent params and | 500 | | // response structs from being deleted by the event loop thread if the | 501 | | // request is canceled, so it is only needed before and after method | 502 | | // execution. It is important to release the lock during execution | 503 | | // because the method can take arbitrarily long to return and the event | 504 | | // loop will need the lock itself in on_cancel if the call is canceled. | 505 | 6 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.unlock(); | 506 | 6 | return TryFinally( | 507 | 6 | [&]() -> decltype(auto) { | 508 | 6 | return ProxyServerMethodTraits< | 509 | 6 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 6 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 6 | }, | 512 | 6 | [&] { | 513 | 6 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 6 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 6 | }); | 528 | 6 | } |
Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>&, mp::TypeList<>) const decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>&, mp::TypeList<>) const Line | Count | Source | 497 | 4 | { | 498 | | // If cancel_lock is set, release it while executing the method, and | 499 | | // reacquire it afterwards. The lock is needed to prevent params and | 500 | | // response structs from being deleted by the event loop thread if the | 501 | | // request is canceled, so it is only needed before and after method | 502 | | // execution. It is important to release the lock during execution | 503 | | // because the method can take arbitrarily long to return and the event | 504 | | // loop will need the lock itself in on_cancel if the call is canceled. | 505 | 4 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.unlock(); | 506 | 4 | return TryFinally( | 507 | 4 | [&]() -> decltype(auto) { | 508 | 4 | return ProxyServerMethodTraits< | 509 | 4 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 4 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 4 | }, | 512 | 4 | [&] { | 513 | 4 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 4 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 4 | }); | 528 | 4 | } |
Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::TypeList<>, uint256&&, std::chrono::duration<double, std::ratio<1l, 1000l>>&&) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, node::BlockCreateOptions const&, bool>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::TypeList<>, node::BlockCreateOptions const&, bool&&) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::TypeList<>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::TypeList<>, unsigned int&&, unsigned int&&, unsigned int&&, std::shared_ptr<CTransaction const>&&) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, node::BlockWaitOptions>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::TypeList<>, node::BlockWaitOptions&&) const Unexecuted instantiation: decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>>&, mp::TypeList<>) const decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::TypeList<>, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) const Line | Count | Source | 497 | 4 | { | 498 | | // If cancel_lock is set, release it while executing the method, and | 499 | | // reacquire it afterwards. The lock is needed to prevent params and | 500 | | // response structs from being deleted by the event loop thread if the | 501 | | // request is canceled, so it is only needed before and after method | 502 | | // execution. It is important to release the lock during execution | 503 | | // because the method can take arbitrarily long to return and the event | 504 | | // loop will need the lock itself in on_cancel if the call is canceled. | 505 | 4 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.unlock(); | 506 | 4 | return TryFinally( | 507 | 4 | [&]() -> decltype(auto) { | 508 | 4 | return ProxyServerMethodTraits< | 509 | 4 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 4 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 4 | }, | 512 | 4 | [&] { | 513 | 4 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 4 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 4 | }); | 528 | 4 | } |
decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::TypeList<>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const Line | Count | Source | 497 | 6 | { | 498 | | // If cancel_lock is set, release it while executing the method, and | 499 | | // reacquire it afterwards. The lock is needed to prevent params and | 500 | | // response structs from being deleted by the event loop thread if the | 501 | | // request is canceled, so it is only needed before and after method | 502 | | // execution. It is important to release the lock during execution | 503 | | // because the method can take arbitrarily long to return and the event | 504 | | // loop will need the lock itself in on_cancel if the call is canceled. | 505 | 6 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.unlock(); | 506 | 6 | return TryFinally( | 507 | 6 | [&]() -> decltype(auto) { | 508 | 6 | return ProxyServerMethodTraits< | 509 | 6 | typename decltype(server_context.call_context.getParams())::Reads | 510 | 6 | >::invoke(server_context, std::forward<Args>(args)...); | 511 | 6 | }, | 512 | 6 | [&] { | 513 | 6 | if (server_context.cancel_lock) server_context.cancel_lock->m_lock.lock(); | 514 | | // If the IPC request was canceled, throw InterruptException | 515 | | // because there is no point continuing and trying to fill the | 516 | | // call_context.getResults() struct. It's also important to stop | 517 | | // executing because the connection may have been destroyed as | 518 | | // described in https://github.com/bitcoin/bitcoin/issues/34250 | 519 | | // and there could be invalid references to the destroyed | 520 | | // Connection object if this continued. | 521 | | // If the IPC method itself threw an exception, the | 522 | | // InterruptException thrown below will take precedence over it. | 523 | | // Since the call has been canceled that exception can't be | 524 | | // returned to the caller, so it needs to be discarded like | 525 | | // other result values. | 526 | 6 | if (server_context.request_canceled) throw InterruptException{"canceled"}; | 527 | 6 | }); | 528 | 6 | } |
|
529 | | }; |
530 | | |
531 | | struct ServerDestroy |
532 | | { |
533 | | template <typename ServerContext, typename... Args> |
534 | | void invoke(ServerContext& server_context, TypeList<>, Args&&... args) const |
535 | 6 | { |
536 | 6 | server_context.proxy_server.invokeDestroy(std::forward<Args>(args)...); |
537 | 6 | } Unexecuted instantiation: void mp::ServerDestroy::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>&, mp::TypeList<>) const void mp::ServerDestroy::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>&, mp::TypeList<>) const Line | Count | Source | 535 | 6 | { | 536 | 6 | server_context.proxy_server.invokeDestroy(std::forward<Args>(args)...); | 537 | 6 | } |
|
538 | | }; |
539 | | |
540 | | template <typename Accessor, typename Parent> |
541 | | struct ServerRet : Parent |
542 | | { |
543 | 26 | ServerRet(Parent parent) : Parent(parent) {}mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>::ServerRet(mp::ServerCall) Line | Count | Source | 543 | 1 | ServerRet(Parent parent) : Parent(parent) {} |
mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>::ServerRet(mp::ServerCall) Line | Count | Source | 543 | 5 | ServerRet(Parent parent) : Parent(parent) {} |
mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>::ServerRet(mp::ServerCall) Line | Count | Source | 543 | 10 | ServerRet(Parent parent) : Parent(parent) {} |
Unexecuted instantiation: mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>::ServerRet(mp::ServerCall) Unexecuted instantiation: mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>::ServerRet(mp::ServerCall) Unexecuted instantiation: mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>::ServerRet(mp::ServerCall) mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>::ServerRet(mp::ServerCall) Line | Count | Source | 543 | 4 | ServerRet(Parent parent) : Parent(parent) {} |
mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>::ServerRet(mp::ServerCall) Line | Count | Source | 543 | 6 | ServerRet(Parent parent) : Parent(parent) {} |
|
544 | | |
545 | | template <typename ServerContext, typename... Args> |
546 | | void invoke(ServerContext& server_context, TypeList<>, Args&&... args) const |
547 | 26 | { |
548 | 26 | auto&& result = Parent::invoke(server_context, TypeList<>(), std::forward<Args>(args)...); |
549 | 26 | auto&& results = server_context.call_context.getResults(); |
550 | 26 | InvokeContext& invoke_context = server_context; |
551 | 26 | BuildField(TypeList<decltype(result)>(), invoke_context, Make<StructField, Accessor>(results), |
552 | 26 | std::forward<decltype(result)>(result)); |
553 | 26 | } void mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, int, int>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::TypeList<>, int&&, int&&) const Line | Count | Source | 547 | 1 | { | 548 | 1 | auto&& result = Parent::invoke(server_context, TypeList<>(), std::forward<Args>(args)...); | 549 | 1 | auto&& results = server_context.call_context.getResults(); | 550 | 1 | InvokeContext& invoke_context = server_context; | 551 | 1 | BuildField(TypeList<decltype(result)>(), invoke_context, Make<StructField, Accessor>(results), | 552 | 1 | std::forward<decltype(result)>(result)); | 553 | 1 | } |
void mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, COutPoint>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::TypeList<>, COutPoint&&) const Line | Count | Source | 547 | 1 | { | 548 | 1 | auto&& result = Parent::invoke(server_context, TypeList<>(), std::forward<Args>(args)...); | 549 | 1 | auto&& results = server_context.call_context.getResults(); | 550 | 1 | InvokeContext& invoke_context = server_context; | 551 | 1 | BuildField(TypeList<decltype(result)>(), invoke_context, Make<StructField, Accessor>(results), | 552 | 1 | std::forward<decltype(result)>(result)); | 553 | 1 | } |
void mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, UniValue>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::TypeList<>, UniValue&&) const Line | Count | Source | 547 | 1 | { | 548 | 1 | auto&& result = Parent::invoke(server_context, TypeList<>(), std::forward<Args>(args)...); | 549 | 1 | auto&& results = server_context.call_context.getResults(); | 550 | 1 | InvokeContext& invoke_context = server_context; | 551 | 1 | BuildField(TypeList<decltype(result)>(), invoke_context, Make<StructField, Accessor>(results), | 552 | 1 | std::forward<decltype(result)>(result)); | 553 | 1 | } |
void mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, std::shared_ptr<CTransaction const>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::TypeList<>, std::shared_ptr<CTransaction const>&&) const Line | Count | Source | 547 | 1 | { | 548 | 1 | auto&& result = Parent::invoke(server_context, TypeList<>(), std::forward<Args>(args)...); | 549 | 1 | auto&& results = server_context.call_context.getResults(); | 550 | 1 | InvokeContext& invoke_context = server_context; | 551 | 1 | BuildField(TypeList<decltype(result)>(), invoke_context, Make<StructField, Accessor>(results), | 552 | 1 | std::forward<decltype(result)>(result)); | 553 | 1 | } |
void mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, std::vector<char, std::allocator<char>>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::TypeList<>, std::vector<char, std::allocator<char>>&&) const Line | Count | Source | 547 | 1 | { | 548 | 1 | auto&& result = Parent::invoke(server_context, TypeList<>(), std::forward<Args>(args)...); | 549 | 1 | auto&& results = server_context.call_context.getResults(); | 550 | 1 | InvokeContext& invoke_context = server_context; | 551 | 1 | BuildField(TypeList<decltype(result)>(), invoke_context, Make<StructField, Accessor>(results), | 552 | 1 | std::forward<decltype(result)>(result)); | 553 | 1 | } |
void mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, CScript>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::TypeList<>, CScript&&) const Line | Count | Source | 547 | 1 | { | 548 | 1 | auto&& result = Parent::invoke(server_context, TypeList<>(), std::forward<Args>(args)...); | 549 | 1 | auto&& results = server_context.call_context.getResults(); | 550 | 1 | InvokeContext& invoke_context = server_context; | 551 | 1 | BuildField(TypeList<decltype(result)>(), invoke_context, Make<StructField, Accessor>(results), | 552 | 1 | std::forward<decltype(result)>(result)); | 553 | 1 | } |
void mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>&, mp::TypeList<>) const Line | Count | Source | 547 | 6 | { | 548 | 6 | auto&& result = Parent::invoke(server_context, TypeList<>(), std::forward<Args>(args)...); | 549 | 6 | auto&& results = server_context.call_context.getResults(); | 550 | 6 | InvokeContext& invoke_context = server_context; | 551 | 6 | BuildField(TypeList<decltype(result)>(), invoke_context, Make<StructField, Accessor>(results), | 552 | 6 | std::forward<decltype(result)>(result)); | 553 | 6 | } |
Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>&, mp::TypeList<>) const void mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>&, mp::TypeList<>) const Line | Count | Source | 547 | 4 | { | 548 | 4 | auto&& result = Parent::invoke(server_context, TypeList<>(), std::forward<Args>(args)...); | 549 | 4 | auto&& results = server_context.call_context.getResults(); | 550 | 4 | InvokeContext& invoke_context = server_context; | 551 | 4 | BuildField(TypeList<decltype(result)>(), invoke_context, Make<StructField, Accessor>(results), | 552 | 4 | std::forward<decltype(result)>(result)); | 553 | 4 | } |
Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>&, mp::TypeList<>) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>&, mp::TypeList<>) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>&, mp::TypeList<>) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::TypeList<>, uint256&&, std::chrono::duration<double, std::ratio<1l, 1000l>>&&) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, node::BlockCreateOptions const&, bool>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::TypeList<>, node::BlockCreateOptions const&, bool&&) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::TypeList<>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>&, mp::TypeList<>) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>&, mp::TypeList<>) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&, mp::TypeList<>) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&, mp::TypeList<>) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, mp::TypeList<>) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&, mp::TypeList<>) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::TypeList<>, unsigned int&&, unsigned int&&, unsigned int&&, std::shared_ptr<CTransaction const>&&) const Unexecuted instantiation: void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, node::BlockWaitOptions>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::TypeList<>, node::BlockWaitOptions&&) const void mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::TypeList<>, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) const Line | Count | Source | 547 | 4 | { | 548 | 4 | auto&& result = Parent::invoke(server_context, TypeList<>(), std::forward<Args>(args)...); | 549 | 4 | auto&& results = server_context.call_context.getResults(); | 550 | 4 | InvokeContext& invoke_context = server_context; | 551 | 4 | BuildField(TypeList<decltype(result)>(), invoke_context, Make<StructField, Accessor>(results), | 552 | 4 | std::forward<decltype(result)>(result)); | 553 | 4 | } |
void mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::TypeList<>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const Line | Count | Source | 547 | 6 | { | 548 | 6 | auto&& result = Parent::invoke(server_context, TypeList<>(), std::forward<Args>(args)...); | 549 | 6 | auto&& results = server_context.call_context.getResults(); | 550 | 6 | InvokeContext& invoke_context = server_context; | 551 | 6 | BuildField(TypeList<decltype(result)>(), invoke_context, Make<StructField, Accessor>(results), | 552 | 6 | std::forward<decltype(result)>(result)); | 553 | 6 | } |
|
554 | | }; |
555 | | |
556 | | template <typename Exception, typename Accessor, typename Parent> |
557 | | struct ServerExcept : Parent |
558 | | { |
559 | | ServerExcept(Parent parent) : Parent(parent) {} |
560 | | |
561 | | template <typename ServerContext, typename... Args> |
562 | | void invoke(ServerContext& server_context, TypeList<>, Args&&... args) const |
563 | | { |
564 | | try { |
565 | | return Parent::invoke(server_context, TypeList<>(), std::forward<Args>(args)...); |
566 | | } catch (const Exception& exception) { |
567 | | auto&& results = server_context.call_context.getResults(); |
568 | | BuildField(TypeList<Exception>(), server_context, Make<StructField, Accessor>(results), exception); |
569 | | } |
570 | | } |
571 | | }; |
572 | | |
573 | | //! Helper for CustomPassField below. Call Accessor::get method if it has one, |
574 | | //! otherwise return capnp::Void. |
575 | | template <typename Accessor, typename Message> |
576 | | decltype(auto) MaybeGet(Message&& message, decltype(Accessor::get(message))* enable = nullptr) |
577 | 0 | { |
578 | 0 | return Accessor::get(message); |
579 | 0 | } Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::ipc_test_fields::A, 1>, gen::FooInterface::AddParams::Reader>(gen::FooInterface::AddParams::Reader&&, decltype(mp::Accessor<mp::ipc_test_fields::A, 1>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::ipc_test_fields::B, 1>, gen::FooInterface::AddParams::Reader>(gen::FooInterface::AddParams::Reader&&, decltype(mp::Accessor<mp::ipc_test_fields::B, 1>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassOutPointParams::Reader>(gen::FooInterface::PassOutPointParams::Reader&&, decltype(mp::Accessor<mp::ipc_test_fields::Arg, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassUniValueParams::Reader>(gen::FooInterface::PassUniValueParams::Reader&&, decltype(mp::Accessor<mp::ipc_test_fields::Arg, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassTransactionParams::Reader>(gen::FooInterface::PassTransactionParams::Reader&&, decltype(mp::Accessor<mp::ipc_test_fields::Arg, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassVectorCharParams::Reader>(gen::FooInterface::PassVectorCharParams::Reader&&, decltype(mp::Accessor<mp::ipc_test_fields::Arg, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::ipc_test_fields::Arg, 17>, gen::FooInterface::PassScriptParams::Reader>(gen::FooInterface::PassScriptParams::Reader&&, decltype(mp::Accessor<mp::ipc_test_fields::Arg, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::init_fields::ThreadMap, 19>, ipc::capnp::messages::Init::ConstructParams::Reader>(ipc::capnp::messages::Init::ConstructParams::Reader&&, decltype(mp::Accessor<mp::init_fields::ThreadMap, 19>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::init_fields::ThreadMap, 19>, ipc::capnp::messages::Init::ConstructResults::Builder>(ipc::capnp::messages::Init::ConstructResults::Builder&&, decltype(mp::Accessor<mp::init_fields::ThreadMap, 19>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::init_fields::Context, 17>, ipc::capnp::messages::Init::MakeEchoParams::Reader>(ipc::capnp::messages::Init::MakeEchoParams::Reader&&, decltype(mp::Accessor<mp::init_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::init_fields::Context, 17>, ipc::capnp::messages::Init::MakeMiningParams::Reader>(ipc::capnp::messages::Init::MakeMiningParams::Reader&&, decltype(mp::Accessor<mp::init_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::init_fields::Context, 17>, ipc::capnp::messages::Init::MakeRpcParams::Reader>(ipc::capnp::messages::Init::MakeRpcParams::Reader&&, decltype(mp::Accessor<mp::init_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::Mining::IsTestChainParams::Reader>(ipc::capnp::messages::Mining::IsTestChainParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::Mining::IsInitialBlockDownloadParams::Reader>(ipc::capnp::messages::Mining::IsInitialBlockDownloadParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::Mining::GetTipParams::Reader>(ipc::capnp::messages::Mining::GetTipParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader>(ipc::capnp::messages::Mining::WaitTipChangedParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::CurrentTip, 17>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader>(ipc::capnp::messages::Mining::WaitTipChangedParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::CurrentTip, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Timeout, 1>, ipc::capnp::messages::Mining::WaitTipChangedParams::Reader>(ipc::capnp::messages::Mining::WaitTipChangedParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Timeout, 1>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader>(ipc::capnp::messages::Mining::CreateNewBlockParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader>(ipc::capnp::messages::Mining::CreateNewBlockParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Options, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Cooldown, 1>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader>(ipc::capnp::messages::Mining::CreateNewBlockParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Cooldown, 1>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader>(ipc::capnp::messages::Mining::CheckBlockParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Block, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader>(ipc::capnp::messages::Mining::CheckBlockParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Block, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader>(ipc::capnp::messages::Mining::CheckBlockParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Options, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Reason, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>(ipc::capnp::messages::Mining::CheckBlockResults::Builder&&, decltype(mp::Accessor<mp::mining_fields::Reason, 18>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Debug, 18>, ipc::capnp::messages::Mining::CheckBlockResults::Builder>(ipc::capnp::messages::Mining::CheckBlockResults::Builder&&, decltype(mp::Accessor<mp::mining_fields::Debug, 18>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::BlockTemplate::DestroyParams::Reader>(ipc::capnp::messages::BlockTemplate::DestroyParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams::Reader>(ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::BlockTemplate::GetBlockParams::Reader>(ipc::capnp::messages::BlockTemplate::GetBlockParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::BlockTemplate::GetTxFeesParams::Reader>(ipc::capnp::messages::BlockTemplate::GetTxFeesParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::BlockTemplate::GetTxSigopsParams::Reader>(ipc::capnp::messages::BlockTemplate::GetTxSigopsParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams::Reader>(ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams::Reader>(ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader>(ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Version, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader>(ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Version, 1>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Timestamp, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader>(ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Timestamp, 1>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Nonce, 1>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader>(ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Nonce, 1>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Coinbase, 17>, ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader>(ipc::capnp::messages::BlockTemplate::SubmitSolutionParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Coinbase, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Context, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader>(ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader>(ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader&&, decltype(mp::Accessor<mp::mining_fields::Options, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::rpc_fields::Context, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader>(ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader&&, decltype(mp::Accessor<mp::rpc_fields::Context, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::rpc_fields::Request, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader>(ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader&&, decltype(mp::Accessor<mp::rpc_fields::Request, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::rpc_fields::Uri, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader>(ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader&&, decltype(mp::Accessor<mp::rpc_fields::Uri, 17>::get(fp))*) Unexecuted instantiation: decltype(auto) mp::MaybeGet<mp::Accessor<mp::rpc_fields::User, 17>, ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader>(ipc::capnp::messages::Rpc::ExecuteRpcParams::Reader&&, decltype(mp::Accessor<mp::rpc_fields::User, 17>::get(fp))*) |
580 | | |
581 | | template <typename Accessor> |
582 | | ::capnp::Void MaybeGet(...) |
583 | | { |
584 | | return {}; |
585 | | } |
586 | | |
587 | | template <class Accessor> |
588 | | void CustomPassField(); |
589 | | |
590 | | //! PassField override calling CustomPassField function, if it exists. |
591 | | //! Defining a CustomPassField or CustomPassMessage overload is useful for |
592 | | //! input/output parameters. If an overload is not defined these parameters will |
593 | | //! just be deserialized on the server side with ReadField into a temporary |
594 | | //! variable, then the server method will be called passing the temporary |
595 | | //! variable as a parameter, then the temporary variable will be serialized and |
596 | | //! sent back to the client with BuildField. But if a PassField or PassMessage |
597 | | //! overload is defined, the overload is called with a callback to invoke and |
598 | | //! pass parameters to the server side function, and run arbitrary code before |
599 | | //! and after invoking the function. |
600 | | template <typename Accessor, typename... Args> |
601 | | auto PassField(Priority<2>, Args&&... args) -> decltype(CustomPassField<Accessor>(std::forward<Args>(args)...)) |
602 | | { |
603 | | return CustomPassField<Accessor>(std::forward<Args>(args)...); |
604 | | }; |
605 | | |
606 | | template <int argc, typename Accessor, typename Parent> |
607 | | struct ServerField : Parent |
608 | | { |
609 | 61 | ServerField(Parent parent) : Parent(parent) {}mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>) Line | Count | Source | 609 | 1 | ServerField(Parent parent) : Parent(parent) {} |
mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>) Line | Count | Source | 609 | 1 | ServerField(Parent parent) : Parent(parent) {} |
mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>) Line | Count | Source | 609 | 5 | ServerField(Parent parent) : Parent(parent) {} |
mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>::ServerField(mp::ServerCall) Line | Count | Source | 609 | 10 | ServerField(Parent parent) : Parent(parent) {} |
mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>) Line | Count | Source | 609 | 10 | ServerField(Parent parent) : Parent(parent) {} |
Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>::ServerField(mp::ServerDestroy) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>) mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>) Line | Count | Source | 609 | 4 | ServerField(Parent parent) : Parent(parent) {} |
mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>) Line | Count | Source | 609 | 4 | ServerField(Parent parent) : Parent(parent) {} |
mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>) Line | Count | Source | 609 | 4 | ServerField(Parent parent) : Parent(parent) {} |
mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>) Line | Count | Source | 609 | 4 | ServerField(Parent parent) : Parent(parent) {} |
mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>::ServerField(mp::ServerDestroy) Line | Count | Source | 609 | 6 | ServerField(Parent parent) : Parent(parent) {} |
mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>::ServerField(mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>) Line | Count | Source | 609 | 6 | ServerField(Parent parent) : Parent(parent) {} |
mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>::ServerField(mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>) Line | Count | Source | 609 | 6 | ServerField(Parent parent) : Parent(parent) {} |
|
610 | | |
611 | 61 | const Parent& parent() const { return *this; }mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>::parent() const Line | Count | Source | 611 | 1 | const Parent& parent() const { return *this; } |
mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>::parent() const Line | Count | Source | 611 | 1 | const Parent& parent() const { return *this; } |
mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>::parent() const Line | Count | Source | 611 | 5 | const Parent& parent() const { return *this; } |
mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>::parent() const Line | Count | Source | 611 | 10 | const Parent& parent() const { return *this; } |
mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>::parent() const Line | Count | Source | 611 | 10 | const Parent& parent() const { return *this; } |
Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>::parent() const Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>::parent() const Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>::parent() const Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>::parent() const Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>::parent() const Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>::parent() const Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>::parent() const Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>::parent() const Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::parent() const Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>::parent() const mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>::parent() const Line | Count | Source | 611 | 4 | const Parent& parent() const { return *this; } |
mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>::parent() const Line | Count | Source | 611 | 4 | const Parent& parent() const { return *this; } |
mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>::parent() const Line | Count | Source | 611 | 4 | const Parent& parent() const { return *this; } |
mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>::parent() const Line | Count | Source | 611 | 4 | const Parent& parent() const { return *this; } |
mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>::parent() const Line | Count | Source | 611 | 6 | const Parent& parent() const { return *this; } |
mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>::parent() const Line | Count | Source | 611 | 6 | const Parent& parent() const { return *this; } |
mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>::parent() const Line | Count | Source | 611 | 6 | const Parent& parent() const { return *this; } |
|
612 | | |
613 | | template <typename ServerContext, typename ArgTypes, typename... Args> |
614 | | decltype(auto) invoke(ServerContext& server_context, ArgTypes, Args&&... args) const |
615 | 61 | { |
616 | 61 | return PassField<Accessor>(Priority<2>(), |
617 | 61 | typename Split<argc, ArgTypes>::First(), |
618 | 61 | server_context, |
619 | 61 | this->parent(), |
620 | 61 | typename Split<argc, ArgTypes>::Second(), |
621 | 61 | std::forward<Args>(args)...); |
622 | 61 | } decltype(auto) mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::TypeList<int, int>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::TypeList<int, int>) const Line | Count | Source | 615 | 1 | { | 616 | 1 | return PassField<Accessor>(Priority<2>(), | 617 | 1 | typename Split<argc, ArgTypes>::First(), | 618 | 1 | server_context, | 619 | 1 | this->parent(), | 620 | 1 | typename Split<argc, ArgTypes>::Second(), | 621 | 1 | std::forward<Args>(args)...); | 622 | 1 | } |
decltype(auto) mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>, mp::TypeList<int>, int>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>>&, mp::TypeList<int>, int&&) const Line | Count | Source | 615 | 1 | { | 616 | 1 | return PassField<Accessor>(Priority<2>(), | 617 | 1 | typename Split<argc, ArgTypes>::First(), | 618 | 1 | server_context, | 619 | 1 | this->parent(), | 620 | 1 | typename Split<argc, ArgTypes>::Second(), | 621 | 1 | std::forward<Args>(args)...); | 622 | 1 | } |
decltype(auto) mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>, mp::TypeList<COutPoint>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>>&, mp::TypeList<COutPoint>) const Line | Count | Source | 615 | 1 | { | 616 | 1 | return PassField<Accessor>(Priority<2>(), | 617 | 1 | typename Split<argc, ArgTypes>::First(), | 618 | 1 | server_context, | 619 | 1 | this->parent(), | 620 | 1 | typename Split<argc, ArgTypes>::Second(), | 621 | 1 | std::forward<Args>(args)...); | 622 | 1 | } |
decltype(auto) mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>, mp::TypeList<UniValue>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>>&, mp::TypeList<UniValue>) const Line | Count | Source | 615 | 1 | { | 616 | 1 | return PassField<Accessor>(Priority<2>(), | 617 | 1 | typename Split<argc, ArgTypes>::First(), | 618 | 1 | server_context, | 619 | 1 | this->parent(), | 620 | 1 | typename Split<argc, ArgTypes>::Second(), | 621 | 1 | std::forward<Args>(args)...); | 622 | 1 | } |
decltype(auto) mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>, mp::TypeList<std::shared_ptr<CTransaction const>>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>>&, mp::TypeList<std::shared_ptr<CTransaction const>>) const Line | Count | Source | 615 | 1 | { | 616 | 1 | return PassField<Accessor>(Priority<2>(), | 617 | 1 | typename Split<argc, ArgTypes>::First(), | 618 | 1 | server_context, | 619 | 1 | this->parent(), | 620 | 1 | typename Split<argc, ArgTypes>::Second(), | 621 | 1 | std::forward<Args>(args)...); | 622 | 1 | } |
decltype(auto) mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>, mp::TypeList<std::vector<char, std::allocator<char>>>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>>&, mp::TypeList<std::vector<char, std::allocator<char>>>) const Line | Count | Source | 615 | 1 | { | 616 | 1 | return PassField<Accessor>(Priority<2>(), | 617 | 1 | typename Split<argc, ArgTypes>::First(), | 618 | 1 | server_context, | 619 | 1 | this->parent(), | 620 | 1 | typename Split<argc, ArgTypes>::Second(), | 621 | 1 | std::forward<Args>(args)...); | 622 | 1 | } |
decltype(auto) mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>, mp::TypeList<CScript>>(mp::ServerInvokeContext<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>>&, mp::TypeList<CScript>) const Line | Count | Source | 615 | 1 | { | 616 | 1 | return PassField<Accessor>(Priority<2>(), | 617 | 1 | typename Split<argc, ArgTypes>::First(), | 618 | 1 | server_context, | 619 | 1 | this->parent(), | 620 | 1 | typename Split<argc, ArgTypes>::Second(), | 621 | 1 | std::forward<Args>(args)...); | 622 | 1 | } |
decltype(auto) mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>>&, mp::TypeList<>) const Line | Count | Source | 615 | 10 | { | 616 | 10 | return PassField<Accessor>(Priority<2>(), | 617 | 10 | typename Split<argc, ArgTypes>::First(), | 618 | 10 | server_context, | 619 | 10 | this->parent(), | 620 | 10 | typename Split<argc, ArgTypes>::Second(), | 621 | 10 | std::forward<Args>(args)...); | 622 | 10 | } |
decltype(auto) mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>>&, mp::TypeList<>) const Line | Count | Source | 615 | 6 | { | 616 | 6 | return PassField<Accessor>(Priority<2>(), | 617 | 6 | typename Split<argc, ArgTypes>::First(), | 618 | 6 | server_context, | 619 | 6 | this->parent(), | 620 | 6 | typename Split<argc, ArgTypes>::Second(), | 621 | 6 | std::forward<Args>(args)...); | 622 | 6 | } |
Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>>&, mp::TypeList<>) const decltype(auto) mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>>&, mp::TypeList<>) const Line | Count | Source | 615 | 4 | { | 616 | 4 | return PassField<Accessor>(Priority<2>(), | 617 | 4 | typename Split<argc, ArgTypes>::First(), | 618 | 4 | server_context, | 619 | 4 | this->parent(), | 620 | 4 | typename Split<argc, ArgTypes>::Second(), | 621 | 4 | std::forward<Args>(args)...); | 622 | 4 | } |
Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>>) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::TypeList<uint256, std::chrono::duration<double, std::ratio<1l, 1000l>>>) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, uint256>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>>&, mp::TypeList<std::chrono::duration<double, std::ratio<1l, 1000l>>>, uint256&&) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::TypeList<node::BlockCreateOptions const&, bool>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::TypeList<node::BlockCreateOptions const&, bool>) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::TypeList<node::BlockCreateOptions const&, bool>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::TypeList<node::BlockCreateOptions const&, bool>) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>, mp::TypeList<bool>, node::BlockCreateOptions const&>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>>&, mp::TypeList<bool>, node::BlockCreateOptions const&) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::TypeList<CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::TypeList<node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&, node::BlockCheckOptions const&>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&, node::BlockCheckOptions const&) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, CBlock const&, node::BlockCheckOptions const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>>&, mp::TypeList<>) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>>) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::TypeList<unsigned int, unsigned int, unsigned int, std::shared_ptr<CTransaction const>>) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>, unsigned int>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::TypeList<unsigned int, unsigned int, std::shared_ptr<CTransaction const>>, unsigned int&&) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>, unsigned int, unsigned int>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::TypeList<unsigned int, std::shared_ptr<CTransaction const>>, unsigned int&&, unsigned int&&) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>, mp::TypeList<std::shared_ptr<CTransaction const>>, unsigned int, unsigned int, unsigned int>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>>&, mp::TypeList<std::shared_ptr<CTransaction const>>, unsigned int&&, unsigned int&&, unsigned int&&) const Unexecuted instantiation: decltype(auto) mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::TypeList<node::BlockWaitOptions>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::TypeList<node::BlockWaitOptions>) const Unexecuted instantiation: decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::TypeList<node::BlockWaitOptions>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::TypeList<node::BlockWaitOptions>) const decltype(auto) mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) const Line | Count | Source | 615 | 4 | { | 616 | 4 | return PassField<Accessor>(Priority<2>(), | 617 | 4 | typename Split<argc, ArgTypes>::First(), | 618 | 4 | server_context, | 619 | 4 | this->parent(), | 620 | 4 | typename Split<argc, ArgTypes>::Second(), | 621 | 4 | std::forward<Args>(args)...); | 622 | 4 | } |
decltype(auto) mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::TypeList<UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>) const Line | Count | Source | 615 | 4 | { | 616 | 4 | return PassField<Accessor>(Priority<2>(), | 617 | 4 | typename Split<argc, ArgTypes>::First(), | 618 | 4 | server_context, | 619 | 4 | this->parent(), | 620 | 4 | typename Split<argc, ArgTypes>::Second(), | 621 | 4 | std::forward<Args>(args)...); | 622 | 4 | } |
decltype(auto) mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, UniValue>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, UniValue&&) const Line | Count | Source | 615 | 4 | { | 616 | 4 | return PassField<Accessor>(Priority<2>(), | 617 | 4 | typename Split<argc, ArgTypes>::First(), | 618 | 4 | server_context, | 619 | 4 | this->parent(), | 620 | 4 | typename Split<argc, ArgTypes>::Second(), | 621 | 4 | std::forward<Args>(args)...); | 622 | 4 | } |
decltype(auto) mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, UniValue, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, UniValue&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&&) const Line | Count | Source | 615 | 4 | { | 616 | 4 | return PassField<Accessor>(Priority<2>(), | 617 | 4 | typename Split<argc, ArgTypes>::First(), | 618 | 4 | server_context, | 619 | 4 | this->parent(), | 620 | 4 | typename Split<argc, ArgTypes>::Second(), | 621 | 4 | std::forward<Args>(args)...); | 622 | 4 | } |
decltype(auto) mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>, mp::TypeList<>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>>&, mp::TypeList<>) const Line | Count | Source | 615 | 6 | { | 616 | 6 | return PassField<Accessor>(Priority<2>(), | 617 | 6 | typename Split<argc, ArgTypes>::First(), | 618 | 6 | server_context, | 619 | 6 | this->parent(), | 620 | 6 | typename Split<argc, ArgTypes>::Second(), | 621 | 6 | std::forward<Args>(args)...); | 622 | 6 | } |
decltype(auto) mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>) const Line | Count | Source | 615 | 6 | { | 616 | 6 | return PassField<Accessor>(Priority<2>(), | 617 | 6 | typename Split<argc, ArgTypes>::First(), | 618 | 6 | server_context, | 619 | 6 | this->parent(), | 620 | 6 | typename Split<argc, ArgTypes>::Second(), | 621 | 6 | std::forward<Args>(args)...); | 622 | 6 | } |
decltype(auto) mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>>(mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>>&, mp::TypeList<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>) const Line | Count | Source | 615 | 6 | { | 616 | 6 | return PassField<Accessor>(Priority<2>(), | 617 | 6 | typename Split<argc, ArgTypes>::First(), | 618 | 6 | server_context, | 619 | 6 | this->parent(), | 620 | 6 | typename Split<argc, ArgTypes>::Second(), | 621 | 6 | std::forward<Args>(args)...); | 622 | 6 | } |
|
623 | | }; |
624 | | |
625 | | template <int argc, typename Accessor, typename Parent> |
626 | | ServerField<argc, Accessor, Parent> MakeServerField(Parent parent) |
627 | 61 | { |
628 | 61 | return {parent}; |
629 | 61 | } mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>> mp::MakeServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>) Line | Count | Source | 627 | 1 | { | 628 | 1 | return {parent}; | 629 | 1 | } |
mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>> mp::MakeServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>(mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>) Line | Count | Source | 627 | 1 | { | 628 | 1 | return {parent}; | 629 | 1 | } |
mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>> mp::MakeServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>) Line | Count | Source | 627 | 5 | { | 628 | 5 | return {parent}; | 629 | 5 | } |
mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall> mp::MakeServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>(mp::ServerCall) Line | Count | Source | 627 | 10 | { | 628 | 10 | return {parent}; | 629 | 10 | } |
mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>> mp::MakeServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>) Line | Count | Source | 627 | 10 | { | 628 | 10 | return {parent}; | 629 | 10 | } |
Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> mp::MakeServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>> mp::MakeServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>> mp::MakeServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>> mp::MakeServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>> mp::MakeServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy> mp::MakeServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>(mp::ServerDestroy) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> mp::MakeServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>> mp::MakeServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>) Unexecuted instantiation: mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> mp::MakeServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>) Unexecuted instantiation: mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>> mp::MakeServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>) mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>> mp::MakeServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>) Line | Count | Source | 627 | 4 | { | 628 | 4 | return {parent}; | 629 | 4 | } |
mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>> mp::MakeServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>(mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>) Line | Count | Source | 627 | 4 | { | 628 | 4 | return {parent}; | 629 | 4 | } |
mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>> mp::MakeServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>(mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>) Line | Count | Source | 627 | 4 | { | 628 | 4 | return {parent}; | 629 | 4 | } |
mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>> mp::MakeServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>(mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>) Line | Count | Source | 627 | 4 | { | 628 | 4 | return {parent}; | 629 | 4 | } |
mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy> mp::MakeServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>(mp::ServerDestroy) Line | Count | Source | 627 | 6 | { | 628 | 6 | return {parent}; | 629 | 6 | } |
mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>> mp::MakeServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>(mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>) Line | Count | Source | 627 | 6 | { | 628 | 6 | return {parent}; | 629 | 6 | } |
mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>> mp::MakeServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>(mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>) Line | Count | Source | 627 | 6 | { | 628 | 6 | return {parent}; | 629 | 6 | } |
|
630 | | |
631 | | template <typename Request> |
632 | | struct CapRequestTraits; |
633 | | |
634 | | template <typename _Params, typename _Results> |
635 | | struct CapRequestTraits<::capnp::Request<_Params, _Results>> |
636 | | { |
637 | | using Params = _Params; |
638 | | using Results = _Results; |
639 | | }; |
640 | | |
641 | | //! Entry point called by all generated ProxyClient destructors. This only logs |
642 | | //! the object destruction. The actual cleanup happens in the ProxyClient base |
643 | | //! destructor. |
644 | | template <typename Client> |
645 | | void clientDestroy(Client& client) |
646 | 21 | { |
647 | 21 | if (client.m_context.connection) { |
648 | 21 | MP_LOG(*client.m_context.loop, Log::Debug) << "IPC client destroy " << typeid(client).name(); |
649 | 21 | } else { |
650 | 0 | KJ_LOG(INFO, "IPC interrupted client destroy", typeid(client).name()); |
651 | 0 | } |
652 | 21 | } void mp::clientDestroy<mp::ProxyClient<gen::FooInterface>>(mp::ProxyClient<gen::FooInterface>&) Line | Count | Source | 646 | 1 | { | 647 | 1 | if (client.m_context.connection) { | 648 | 1 | MP_LOG(*client.m_context.loop, Log::Debug) << "IPC client destroy " << typeid(client).name(); | 649 | 1 | } else { | 650 | | KJ_LOG(INFO, "IPC interrupted client destroy", typeid(client).name()); | 651 | 0 | } | 652 | 1 | } |
void mp::clientDestroy<mp::ProxyClient<ipc::capnp::messages::Init>>(mp::ProxyClient<ipc::capnp::messages::Init>&) Line | Count | Source | 646 | 10 | { | 647 | 10 | if (client.m_context.connection) { | 648 | 10 | MP_LOG(*client.m_context.loop, Log::Debug) << "IPC client destroy " << typeid(client).name(); | 649 | 10 | } else { | 650 | | KJ_LOG(INFO, "IPC interrupted client destroy", typeid(client).name()); | 651 | 0 | } | 652 | 10 | } |
Unexecuted instantiation: void mp::clientDestroy<mp::ProxyClient<ipc::capnp::messages::Mining>>(mp::ProxyClient<ipc::capnp::messages::Mining>&) Unexecuted instantiation: void mp::clientDestroy<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&) void mp::clientDestroy<mp::ProxyClient<ipc::capnp::messages::Rpc>>(mp::ProxyClient<ipc::capnp::messages::Rpc>&) Line | Count | Source | 646 | 4 | { | 647 | 4 | if (client.m_context.connection) { | 648 | 4 | MP_LOG(*client.m_context.loop, Log::Debug) << "IPC client destroy " << typeid(client).name(); | 649 | 4 | } else { | 650 | | KJ_LOG(INFO, "IPC interrupted client destroy", typeid(client).name()); | 651 | 0 | } | 652 | 4 | } |
void mp::clientDestroy<mp::ProxyClient<ipc::capnp::messages::Echo>>(mp::ProxyClient<ipc::capnp::messages::Echo>&) Line | Count | Source | 646 | 6 | { | 647 | 6 | if (client.m_context.connection) { | 648 | 6 | MP_LOG(*client.m_context.loop, Log::Debug) << "IPC client destroy " << typeid(client).name(); | 649 | 6 | } else { | 650 | | KJ_LOG(INFO, "IPC interrupted client destroy", typeid(client).name()); | 651 | 0 | } | 652 | 6 | } |
|
653 | | |
654 | | template <typename Server> |
655 | | void serverDestroy(Server& server) |
656 | 21 | { |
657 | 21 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server destroy " << typeid(server).name(); |
658 | 21 | } void mp::serverDestroy<mp::ProxyServer<gen::FooInterface>>(mp::ProxyServer<gen::FooInterface>&) Line | Count | Source | 656 | 1 | { | 657 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server destroy " << typeid(server).name(); | 658 | 1 | } |
void mp::serverDestroy<mp::ProxyServer<ipc::capnp::messages::Init>>(mp::ProxyServer<ipc::capnp::messages::Init>&) Line | Count | Source | 656 | 10 | { | 657 | 10 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server destroy " << typeid(server).name(); | 658 | 10 | } |
Unexecuted instantiation: void mp::serverDestroy<mp::ProxyServer<ipc::capnp::messages::Mining>>(mp::ProxyServer<ipc::capnp::messages::Mining>&) Unexecuted instantiation: void mp::serverDestroy<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&) void mp::serverDestroy<mp::ProxyServer<ipc::capnp::messages::Rpc>>(mp::ProxyServer<ipc::capnp::messages::Rpc>&) Line | Count | Source | 656 | 4 | { | 657 | 4 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server destroy " << typeid(server).name(); | 658 | 4 | } |
void mp::serverDestroy<mp::ProxyServer<ipc::capnp::messages::Echo>>(mp::ProxyServer<ipc::capnp::messages::Echo>&) Line | Count | Source | 656 | 6 | { | 657 | 6 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server destroy " << typeid(server).name(); | 658 | 6 | } |
|
659 | | |
660 | | //! Entry point called by generated client code that looks like: |
661 | | //! |
662 | | //! ProxyClient<ClassName>::M0::Result ProxyClient<ClassName>::methodName(M0::Param<0> arg0, M0::Param<1> arg1) { |
663 | | //! typename M0::Result result; |
664 | | //! clientInvoke(*this, &InterfaceName::Client::methodNameRequest, MakeClientParam<...>(M0::Fwd<0>(arg0)), MakeClientParam<...>(M0::Fwd<1>(arg1)), MakeClientParam<...>(result)); |
665 | | //! return result; |
666 | | //! } |
667 | | //! |
668 | | //! Ellipses above are where generated Accessor<> type declarations are inserted. |
669 | | template <typename ProxyClient, typename GetRequest, typename... FieldObjs> |
670 | | void clientInvoke(ProxyClient& proxy_client, const GetRequest& get_request, FieldObjs&&... fields) |
671 | 42 | { |
672 | 42 | if (!g_thread_context.waiter) { |
673 | 5 | assert(g_thread_context.thread_name.empty()); |
674 | 5 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); |
675 | | // If next assert triggers, it means clientInvoke is being called from |
676 | | // the capnp event loop thread. This can happen when a ProxyServer |
677 | | // method implementation that runs synchronously on the event loop |
678 | | // thread tries to make a blocking callback to the client. Any server |
679 | | // method that makes a blocking callback or blocks in general needs to |
680 | | // run asynchronously off the event loop thread. This is easy to fix by |
681 | | // just adding a 'context :Proxy.Context' argument to the capnp method |
682 | | // declaration so the server method runs in a dedicated thread. |
683 | 5 | assert(!g_thread_context.loop_thread); |
684 | 5 | g_thread_context.waiter = std::make_unique<Waiter>(); |
685 | 5 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) |
686 | 5 | << "{" << g_thread_context.thread_name |
687 | 5 | << "} IPC client first request from current thread, constructing waiter"; |
688 | 5 | } |
689 | 42 | ThreadContext& thread_context{g_thread_context}; |
690 | 42 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below |
691 | 42 | std::exception_ptr exception; |
692 | 42 | std::string kj_exception; |
693 | 42 | bool done = false; |
694 | 42 | const char* disconnected = nullptr; |
695 | 42 | proxy_client.m_context.loop->sync([&]() { |
696 | 42 | if (!proxy_client.m_context.connection) { |
697 | 0 | const Lock lock(thread_context.waiter->m_mutex); |
698 | 0 | done = true; |
699 | 0 | disconnected = "IPC client method called after disconnect."; |
700 | 0 | thread_context.waiter->m_cv.notify_all(); |
701 | 0 | return; |
702 | 0 | } |
703 | | |
704 | 42 | auto request = (proxy_client.m_client.*get_request)(nullptr); |
705 | 42 | using Request = CapRequestTraits<decltype(request)>; |
706 | 42 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; |
707 | 42 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); |
708 | 42 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); |
709 | 42 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) |
710 | 30 | << "{" << thread_context.thread_name << "} IPC client send " |
711 | 30 | << TypeName<typename Request::Params>(); |
712 | 42 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) |
713 | 30 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); |
714 | | |
715 | 42 | proxy_client.m_context.loop->m_task_set->add(request.send().then( |
716 | 42 | [&](::capnp::Response<typename Request::Results>&& response) { |
717 | 42 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) |
718 | 30 | << "{" << thread_context.thread_name << "} IPC client recv " |
719 | 30 | << TypeName<typename Request::Results>(); |
720 | 42 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) |
721 | 30 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); |
722 | 42 | try { |
723 | 42 | IterateFields().handleChain( |
724 | 42 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); |
725 | 42 | } catch (...) { |
726 | 0 | exception = std::current_exception(); |
727 | 0 | } |
728 | 42 | const Lock lock(thread_context.waiter->m_mutex); |
729 | 42 | done = true; |
730 | 42 | thread_context.waiter->m_cv.notify_all(); |
731 | 42 | }, void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<gen::FooInterface::AddResults>&&)::operator()(capnp::Response<gen::FooInterface::AddResults>&&) const Line | Count | Source | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 0 | exception = std::current_exception(); | 727 | 0 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<gen::FooInterface::PassOutPointResults>&&)::operator()(capnp::Response<gen::FooInterface::PassOutPointResults>&&) const Line | Count | Source | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 0 | exception = std::current_exception(); | 727 | 0 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<gen::FooInterface::PassUniValueResults>&&)::operator()(capnp::Response<gen::FooInterface::PassUniValueResults>&&) const Line | Count | Source | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 0 | exception = std::current_exception(); | 727 | 0 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<gen::FooInterface::PassTransactionResults>&&)::operator()(capnp::Response<gen::FooInterface::PassTransactionResults>&&) const Line | Count | Source | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 0 | exception = std::current_exception(); | 727 | 0 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<gen::FooInterface::PassVectorCharResults>&&)::operator()(capnp::Response<gen::FooInterface::PassVectorCharResults>&&) const Line | Count | Source | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 0 | exception = std::current_exception(); | 727 | 0 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<gen::FooInterface::PassScriptResults>&&)::operator()(capnp::Response<gen::FooInterface::PassScriptResults>&&) const Line | Count | Source | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 0 | exception = std::current_exception(); | 727 | 0 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, |
void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::Init, interfaces::Init>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>>(mp::ProxyClientBase<ipc::capnp::messages::Init, interfaces::Init>&, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Init::ConstructResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Init::ConstructResults>&&) const Line | Count | Source | 716 | 10 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 10 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 6 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 6 | << TypeName<typename Request::Results>(); | 720 | 10 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 6 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 10 | try { | 723 | 10 | IterateFields().handleChain( | 724 | 10 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 10 | } catch (...) { | 726 | 0 | exception = std::current_exception(); | 727 | 0 | } | 728 | 10 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 10 | done = true; | 730 | 10 | thread_context.waiter->m_cv.notify_all(); | 731 | 10 | }, |
void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Init::MakeEchoResults>&&) const Line | Count | Source | 716 | 6 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 6 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 6 | << TypeName<typename Request::Results>(); | 720 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 6 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 6 | try { | 723 | 6 | IterateFields().handleChain( | 724 | 6 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 6 | } catch (...) { | 726 | 0 | exception = std::current_exception(); | 727 | 0 | } | 728 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 6 | done = true; | 730 | 6 | thread_context.waiter->m_cv.notify_all(); | 731 | 6 | }, |
Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>))::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Init::MakeMiningOld2Results>&&)::operator()(capnp::Response<ipc::capnp::messages::Init::MakeMiningOld2Results>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Init::MakeMiningResults>&&) const void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Init::MakeRpcResults>&&) const Line | Count | Source | 716 | 4 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 0 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 0 | << TypeName<typename Request::Results>(); | 720 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 0 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 4 | try { | 723 | 4 | IterateFields().handleChain( | 724 | 4 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 4 | } catch (...) { | 726 | 0 | exception = std::current_exception(); | 727 | 0 | } | 728 | 4 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 4 | done = true; | 730 | 4 | thread_context.waiter->m_cv.notify_all(); | 731 | 4 | }, |
void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::Echo, interfaces::Echo>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults> (ipc::capnp::messages::Echo::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>>(mp::ProxyClientBase<ipc::capnp::messages::Echo, interfaces::Echo>&, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults> (ipc::capnp::messages::Echo::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Echo::DestroyResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Echo::DestroyResults>&&) const Line | Count | Source | 716 | 6 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 6 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 6 | << TypeName<typename Request::Results>(); | 720 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 6 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 6 | try { | 723 | 6 | IterateFields().handleChain( | 724 | 6 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 6 | } catch (...) { | 726 | 0 | exception = std::current_exception(); | 727 | 0 | } | 728 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 6 | done = true; | 730 | 6 | thread_context.waiter->m_cv.notify_all(); | 731 | 6 | }, |
void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Echo>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults> (ipc::capnp::messages::Echo::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ProxyClient<ipc::capnp::messages::Echo>&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults> (ipc::capnp::messages::Echo::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Echo::EchoResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Echo::EchoResults>&&) const Line | Count | Source | 716 | 6 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 6 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 6 | << TypeName<typename Request::Results>(); | 720 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 6 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 6 | try { | 723 | 6 | IterateFields().handleChain( | 724 | 6 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 6 | } catch (...) { | 726 | 0 | exception = std::current_exception(); | 727 | 0 | } | 728 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 6 | done = true; | 730 | 6 | thread_context.waiter->m_cv.notify_all(); | 731 | 6 | }, |
Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Mining::IsTestChainResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Mining::GetTipResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Mining::CreateNewBlockResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Mining::CheckBlockResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>))::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Mining::InterruptResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Mining::InterruptResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>>(mp::ProxyClientBase<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>&&)::operator()(capnp::Response<ipc::capnp::messages::BlockTemplate::DestroyResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&&)::operator()(capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&&)::operator()(capnp::Response<ipc::capnp::messages::BlockTemplate::GetBlockResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&&)::operator()(capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&&)::operator()(capnp::Response<ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&&)::operator()(capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&&)::operator()(capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&&)::operator()(capnp::Response<ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&&)::operator()(capnp::Response<ipc::capnp::messages::BlockTemplate::WaitNextResults>&&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>))::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&&)::operator()(capnp::Response<ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&&) const void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Rpc>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults> (ipc::capnp::messages::Rpc::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>>(mp::ProxyClient<ipc::capnp::messages::Rpc>&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults> (ipc::capnp::messages::Rpc::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>&&)::'lambda'()::operator()() const::'lambda'(capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&&)::operator()(capnp::Response<ipc::capnp::messages::Rpc::ExecuteRpcResults>&&) const Line | Count | Source | 716 | 4 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 0 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 0 | << TypeName<typename Request::Results>(); | 720 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 0 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 4 | try { | 723 | 4 | IterateFields().handleChain( | 724 | 4 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 4 | } catch (...) { | 726 | 0 | exception = std::current_exception(); | 727 | 0 | } | 728 | 4 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 4 | done = true; | 730 | 4 | thread_context.waiter->m_cv.notify_all(); | 731 | 4 | }, |
|
732 | 42 | [&](const ::kj::Exception& e) { |
733 | 0 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { |
734 | 0 | disconnected = "IPC client method call interrupted by disconnect."; |
735 | 0 | } else { |
736 | 0 | kj_exception = kj::str("kj::Exception: ", e).cStr(); |
737 | 0 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) |
738 | 0 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; |
739 | 0 | } |
740 | 0 | const Lock lock(thread_context.waiter->m_mutex); |
741 | 0 | done = true; |
742 | 0 | thread_context.waiter->m_cv.notify_all(); |
743 | 0 | })); Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::Init, interfaces::Init>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>>(mp::ProxyClientBase<ipc::capnp::messages::Init, interfaces::Init>&, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>))::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::Echo, interfaces::Echo>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults> (ipc::capnp::messages::Echo::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>>(mp::ProxyClientBase<ipc::capnp::messages::Echo, interfaces::Echo>&, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults> (ipc::capnp::messages::Echo::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Echo>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults> (ipc::capnp::messages::Echo::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ProxyClient<ipc::capnp::messages::Echo>&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults> (ipc::capnp::messages::Echo::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>))::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>>(mp::ProxyClientBase<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>))::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Rpc>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults> (ipc::capnp::messages::Rpc::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>>(mp::ProxyClient<ipc::capnp::messages::Rpc>&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults> (ipc::capnp::messages::Rpc::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>&&)::'lambda'()::operator()() const::'lambda'(kj::Exception const&)::operator()(kj::Exception const&) const |
744 | 42 | }); void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>&&)::'lambda'()::operator()() const Line | Count | Source | 695 | 1 | proxy_client.m_context.loop->sync([&]() { | 696 | 1 | if (!proxy_client.m_context.connection) { | 697 | 0 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 0 | done = true; | 699 | 0 | disconnected = "IPC client method called after disconnect."; | 700 | 0 | thread_context.waiter->m_cv.notify_all(); | 701 | 0 | return; | 702 | 0 | } | 703 | | | 704 | 1 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 1 | using Request = CapRequestTraits<decltype(request)>; | 706 | 1 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 1 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 1 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 1 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 1 | << TypeName<typename Request::Params>(); | 712 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 1 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 1 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 1 | exception = std::current_exception(); | 727 | 1 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, | 732 | 1 | [&](const ::kj::Exception& e) { | 733 | 1 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 1 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 1 | } else { | 736 | 1 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 1 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 1 | } | 740 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 1 | done = true; | 742 | 1 | thread_context.waiter->m_cv.notify_all(); | 743 | 1 | })); | 744 | 1 | }); |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>&&)::'lambda'()::operator()() const Line | Count | Source | 695 | 1 | proxy_client.m_context.loop->sync([&]() { | 696 | 1 | if (!proxy_client.m_context.connection) { | 697 | 0 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 0 | done = true; | 699 | 0 | disconnected = "IPC client method called after disconnect."; | 700 | 0 | thread_context.waiter->m_cv.notify_all(); | 701 | 0 | return; | 702 | 0 | } | 703 | | | 704 | 1 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 1 | using Request = CapRequestTraits<decltype(request)>; | 706 | 1 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 1 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 1 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 1 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 1 | << TypeName<typename Request::Params>(); | 712 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 1 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 1 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 1 | exception = std::current_exception(); | 727 | 1 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, | 732 | 1 | [&](const ::kj::Exception& e) { | 733 | 1 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 1 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 1 | } else { | 736 | 1 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 1 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 1 | } | 740 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 1 | done = true; | 742 | 1 | thread_context.waiter->m_cv.notify_all(); | 743 | 1 | })); | 744 | 1 | }); |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>&&)::'lambda'()::operator()() const Line | Count | Source | 695 | 1 | proxy_client.m_context.loop->sync([&]() { | 696 | 1 | if (!proxy_client.m_context.connection) { | 697 | 0 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 0 | done = true; | 699 | 0 | disconnected = "IPC client method called after disconnect."; | 700 | 0 | thread_context.waiter->m_cv.notify_all(); | 701 | 0 | return; | 702 | 0 | } | 703 | | | 704 | 1 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 1 | using Request = CapRequestTraits<decltype(request)>; | 706 | 1 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 1 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 1 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 1 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 1 | << TypeName<typename Request::Params>(); | 712 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 1 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 1 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 1 | exception = std::current_exception(); | 727 | 1 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, | 732 | 1 | [&](const ::kj::Exception& e) { | 733 | 1 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 1 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 1 | } else { | 736 | 1 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 1 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 1 | } | 740 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 1 | done = true; | 742 | 1 | thread_context.waiter->m_cv.notify_all(); | 743 | 1 | })); | 744 | 1 | }); |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>&&)::'lambda'()::operator()() const Line | Count | Source | 695 | 1 | proxy_client.m_context.loop->sync([&]() { | 696 | 1 | if (!proxy_client.m_context.connection) { | 697 | 0 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 0 | done = true; | 699 | 0 | disconnected = "IPC client method called after disconnect."; | 700 | 0 | thread_context.waiter->m_cv.notify_all(); | 701 | 0 | return; | 702 | 0 | } | 703 | | | 704 | 1 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 1 | using Request = CapRequestTraits<decltype(request)>; | 706 | 1 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 1 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 1 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 1 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 1 | << TypeName<typename Request::Params>(); | 712 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 1 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 1 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 1 | exception = std::current_exception(); | 727 | 1 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, | 732 | 1 | [&](const ::kj::Exception& e) { | 733 | 1 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 1 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 1 | } else { | 736 | 1 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 1 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 1 | } | 740 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 1 | done = true; | 742 | 1 | thread_context.waiter->m_cv.notify_all(); | 743 | 1 | })); | 744 | 1 | }); |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>&&)::'lambda'()::operator()() const Line | Count | Source | 695 | 1 | proxy_client.m_context.loop->sync([&]() { | 696 | 1 | if (!proxy_client.m_context.connection) { | 697 | 0 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 0 | done = true; | 699 | 0 | disconnected = "IPC client method called after disconnect."; | 700 | 0 | thread_context.waiter->m_cv.notify_all(); | 701 | 0 | return; | 702 | 0 | } | 703 | | | 704 | 1 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 1 | using Request = CapRequestTraits<decltype(request)>; | 706 | 1 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 1 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 1 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 1 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 1 | << TypeName<typename Request::Params>(); | 712 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 1 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 1 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 1 | exception = std::current_exception(); | 727 | 1 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, | 732 | 1 | [&](const ::kj::Exception& e) { | 733 | 1 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 1 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 1 | } else { | 736 | 1 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 1 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 1 | } | 740 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 1 | done = true; | 742 | 1 | thread_context.waiter->m_cv.notify_all(); | 743 | 1 | })); | 744 | 1 | }); |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>&&)::'lambda'()::operator()() const Line | Count | Source | 695 | 1 | proxy_client.m_context.loop->sync([&]() { | 696 | 1 | if (!proxy_client.m_context.connection) { | 697 | 0 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 0 | done = true; | 699 | 0 | disconnected = "IPC client method called after disconnect."; | 700 | 0 | thread_context.waiter->m_cv.notify_all(); | 701 | 0 | return; | 702 | 0 | } | 703 | | | 704 | 1 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 1 | using Request = CapRequestTraits<decltype(request)>; | 706 | 1 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 1 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 1 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 1 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 1 | << TypeName<typename Request::Params>(); | 712 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 1 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 1 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 1 | exception = std::current_exception(); | 727 | 1 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, | 732 | 1 | [&](const ::kj::Exception& e) { | 733 | 1 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 1 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 1 | } else { | 736 | 1 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 1 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 1 | } | 740 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 1 | done = true; | 742 | 1 | thread_context.waiter->m_cv.notify_all(); | 743 | 1 | })); | 744 | 1 | }); |
void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::Init, interfaces::Init>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>>(mp::ProxyClientBase<ipc::capnp::messages::Init, interfaces::Init>&, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>&&)::'lambda'()::operator()() const Line | Count | Source | 695 | 10 | proxy_client.m_context.loop->sync([&]() { | 696 | 10 | if (!proxy_client.m_context.connection) { | 697 | 0 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 0 | done = true; | 699 | 0 | disconnected = "IPC client method called after disconnect."; | 700 | 0 | thread_context.waiter->m_cv.notify_all(); | 701 | 0 | return; | 702 | 0 | } | 703 | | | 704 | 10 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 10 | using Request = CapRequestTraits<decltype(request)>; | 706 | 10 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 10 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 10 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 10 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 6 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 6 | << TypeName<typename Request::Params>(); | 712 | 10 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 6 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 10 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 10 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 10 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 10 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 10 | << TypeName<typename Request::Results>(); | 720 | 10 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 10 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 10 | try { | 723 | 10 | IterateFields().handleChain( | 724 | 10 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 10 | } catch (...) { | 726 | 10 | exception = std::current_exception(); | 727 | 10 | } | 728 | 10 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 10 | done = true; | 730 | 10 | thread_context.waiter->m_cv.notify_all(); | 731 | 10 | }, | 732 | 10 | [&](const ::kj::Exception& e) { | 733 | 10 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 10 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 10 | } else { | 736 | 10 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 10 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 10 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 10 | } | 740 | 10 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 10 | done = true; | 742 | 10 | thread_context.waiter->m_cv.notify_all(); | 743 | 10 | })); | 744 | 10 | }); |
void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>&&)::'lambda'()::operator()() const Line | Count | Source | 695 | 6 | proxy_client.m_context.loop->sync([&]() { | 696 | 6 | if (!proxy_client.m_context.connection) { | 697 | 0 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 0 | done = true; | 699 | 0 | disconnected = "IPC client method called after disconnect."; | 700 | 0 | thread_context.waiter->m_cv.notify_all(); | 701 | 0 | return; | 702 | 0 | } | 703 | | | 704 | 6 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 6 | using Request = CapRequestTraits<decltype(request)>; | 706 | 6 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 6 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 6 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 6 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 6 | << TypeName<typename Request::Params>(); | 712 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 6 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 6 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 6 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 6 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 6 | << TypeName<typename Request::Results>(); | 720 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 6 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 6 | try { | 723 | 6 | IterateFields().handleChain( | 724 | 6 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 6 | } catch (...) { | 726 | 6 | exception = std::current_exception(); | 727 | 6 | } | 728 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 6 | done = true; | 730 | 6 | thread_context.waiter->m_cv.notify_all(); | 731 | 6 | }, | 732 | 6 | [&](const ::kj::Exception& e) { | 733 | 6 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 6 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 6 | } else { | 736 | 6 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 6 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 6 | } | 740 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 6 | done = true; | 742 | 6 | thread_context.waiter->m_cv.notify_all(); | 743 | 6 | })); | 744 | 6 | }); |
Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>))::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>&&)::'lambda'()::operator()() const void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>&&)::'lambda'()::operator()() const Line | Count | Source | 695 | 4 | proxy_client.m_context.loop->sync([&]() { | 696 | 4 | if (!proxy_client.m_context.connection) { | 697 | 0 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 0 | done = true; | 699 | 0 | disconnected = "IPC client method called after disconnect."; | 700 | 0 | thread_context.waiter->m_cv.notify_all(); | 701 | 0 | return; | 702 | 0 | } | 703 | | | 704 | 4 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 4 | using Request = CapRequestTraits<decltype(request)>; | 706 | 4 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 4 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 4 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 0 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 0 | << TypeName<typename Request::Params>(); | 712 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 0 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 4 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 4 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 4 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 4 | << TypeName<typename Request::Results>(); | 720 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 4 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 4 | try { | 723 | 4 | IterateFields().handleChain( | 724 | 4 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 4 | } catch (...) { | 726 | 4 | exception = std::current_exception(); | 727 | 4 | } | 728 | 4 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 4 | done = true; | 730 | 4 | thread_context.waiter->m_cv.notify_all(); | 731 | 4 | }, | 732 | 4 | [&](const ::kj::Exception& e) { | 733 | 4 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 4 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 4 | } else { | 736 | 4 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 4 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 4 | } | 740 | 4 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 4 | done = true; | 742 | 4 | thread_context.waiter->m_cv.notify_all(); | 743 | 4 | })); | 744 | 4 | }); |
void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::Echo, interfaces::Echo>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults> (ipc::capnp::messages::Echo::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>>(mp::ProxyClientBase<ipc::capnp::messages::Echo, interfaces::Echo>&, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults> (ipc::capnp::messages::Echo::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>&&)::'lambda'()::operator()() const Line | Count | Source | 695 | 6 | proxy_client.m_context.loop->sync([&]() { | 696 | 6 | if (!proxy_client.m_context.connection) { | 697 | 0 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 0 | done = true; | 699 | 0 | disconnected = "IPC client method called after disconnect."; | 700 | 0 | thread_context.waiter->m_cv.notify_all(); | 701 | 0 | return; | 702 | 0 | } | 703 | | | 704 | 6 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 6 | using Request = CapRequestTraits<decltype(request)>; | 706 | 6 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 6 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 6 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 6 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 6 | << TypeName<typename Request::Params>(); | 712 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 6 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 6 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 6 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 6 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 6 | << TypeName<typename Request::Results>(); | 720 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 6 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 6 | try { | 723 | 6 | IterateFields().handleChain( | 724 | 6 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 6 | } catch (...) { | 726 | 6 | exception = std::current_exception(); | 727 | 6 | } | 728 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 6 | done = true; | 730 | 6 | thread_context.waiter->m_cv.notify_all(); | 731 | 6 | }, | 732 | 6 | [&](const ::kj::Exception& e) { | 733 | 6 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 6 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 6 | } else { | 736 | 6 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 6 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 6 | } | 740 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 6 | done = true; | 742 | 6 | thread_context.waiter->m_cv.notify_all(); | 743 | 6 | })); | 744 | 6 | }); |
void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Echo>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults> (ipc::capnp::messages::Echo::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ProxyClient<ipc::capnp::messages::Echo>&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults> (ipc::capnp::messages::Echo::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda'()::operator()() const Line | Count | Source | 695 | 6 | proxy_client.m_context.loop->sync([&]() { | 696 | 6 | if (!proxy_client.m_context.connection) { | 697 | 0 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 0 | done = true; | 699 | 0 | disconnected = "IPC client method called after disconnect."; | 700 | 0 | thread_context.waiter->m_cv.notify_all(); | 701 | 0 | return; | 702 | 0 | } | 703 | | | 704 | 6 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 6 | using Request = CapRequestTraits<decltype(request)>; | 706 | 6 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 6 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 6 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 6 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 6 | << TypeName<typename Request::Params>(); | 712 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 6 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 6 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 6 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 6 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 6 | << TypeName<typename Request::Results>(); | 720 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 6 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 6 | try { | 723 | 6 | IterateFields().handleChain( | 724 | 6 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 6 | } catch (...) { | 726 | 6 | exception = std::current_exception(); | 727 | 6 | } | 728 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 6 | done = true; | 730 | 6 | thread_context.waiter->m_cv.notify_all(); | 731 | 6 | }, | 732 | 6 | [&](const ::kj::Exception& e) { | 733 | 6 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 6 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 6 | } else { | 736 | 6 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 6 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 6 | } | 740 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 6 | done = true; | 742 | 6 | thread_context.waiter->m_cv.notify_all(); | 743 | 6 | })); | 744 | 6 | }); |
Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>))::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>>(mp::ProxyClientBase<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>&&)::'lambda'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>))::'lambda'()::operator()() const void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Rpc>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults> (ipc::capnp::messages::Rpc::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>>(mp::ProxyClient<ipc::capnp::messages::Rpc>&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults> (ipc::capnp::messages::Rpc::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>&&)::'lambda'()::operator()() const Line | Count | Source | 695 | 4 | proxy_client.m_context.loop->sync([&]() { | 696 | 4 | if (!proxy_client.m_context.connection) { | 697 | 0 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 0 | done = true; | 699 | 0 | disconnected = "IPC client method called after disconnect."; | 700 | 0 | thread_context.waiter->m_cv.notify_all(); | 701 | 0 | return; | 702 | 0 | } | 703 | | | 704 | 4 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 4 | using Request = CapRequestTraits<decltype(request)>; | 706 | 4 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 4 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 4 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 0 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 0 | << TypeName<typename Request::Params>(); | 712 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 0 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 4 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 4 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 4 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 4 | << TypeName<typename Request::Results>(); | 720 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 4 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 4 | try { | 723 | 4 | IterateFields().handleChain( | 724 | 4 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 4 | } catch (...) { | 726 | 4 | exception = std::current_exception(); | 727 | 4 | } | 728 | 4 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 4 | done = true; | 730 | 4 | thread_context.waiter->m_cv.notify_all(); | 731 | 4 | }, | 732 | 4 | [&](const ::kj::Exception& e) { | 733 | 4 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 4 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 4 | } else { | 736 | 4 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 4 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 4 | } | 740 | 4 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 4 | done = true; | 742 | 4 | thread_context.waiter->m_cv.notify_all(); | 743 | 4 | })); | 744 | 4 | }); |
|
745 | | |
746 | 42 | Lock lock(thread_context.waiter->m_mutex); |
747 | 80 | thread_context.waiter->wait(lock, [&done]() { return done; });void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>&&)::'lambda0'()::operator()() const Line | Count | Source | 747 | 2 | thread_context.waiter->wait(lock, [&done]() { return done; }); |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>&&)::'lambda0'()::operator()() const Line | Count | Source | 747 | 2 | thread_context.waiter->wait(lock, [&done]() { return done; }); |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>&&)::'lambda0'()::operator()() const Line | Count | Source | 747 | 2 | thread_context.waiter->wait(lock, [&done]() { return done; }); |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>&&)::'lambda0'()::operator()() const Line | Count | Source | 747 | 2 | thread_context.waiter->wait(lock, [&done]() { return done; }); |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>&&)::'lambda0'()::operator()() const Line | Count | Source | 747 | 2 | thread_context.waiter->wait(lock, [&done]() { return done; }); |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>&&)::'lambda0'()::operator()() const Line | Count | Source | 747 | 2 | thread_context.waiter->wait(lock, [&done]() { return done; }); |
void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::Init, interfaces::Init>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>>(mp::ProxyClientBase<ipc::capnp::messages::Init, interfaces::Init>&, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>&&)::'lambda0'()::operator()() const Line | Count | Source | 747 | 16 | thread_context.waiter->wait(lock, [&done]() { return done; }); |
void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>&&)::'lambda0'()::operator()() const Line | Count | Source | 747 | 12 | thread_context.waiter->wait(lock, [&done]() { return done; }); |
Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>))::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>&&)::'lambda0'()::operator()() const void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>&&)::'lambda0'()::operator()() const Line | Count | Source | 747 | 8 | thread_context.waiter->wait(lock, [&done]() { return done; }); |
void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::Echo, interfaces::Echo>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults> (ipc::capnp::messages::Echo::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>>(mp::ProxyClientBase<ipc::capnp::messages::Echo, interfaces::Echo>&, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults> (ipc::capnp::messages::Echo::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>&&)::'lambda0'()::operator()() const Line | Count | Source | 747 | 12 | thread_context.waiter->wait(lock, [&done]() { return done; }); |
void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Echo>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults> (ipc::capnp::messages::Echo::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ProxyClient<ipc::capnp::messages::Echo>&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults> (ipc::capnp::messages::Echo::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&)::'lambda0'()::operator()() const Line | Count | Source | 747 | 12 | thread_context.waiter->wait(lock, [&done]() { return done; }); |
Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>))::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>>(mp::ProxyClientBase<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>&&)::'lambda0'()::operator()() const Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>))::'lambda0'()::operator()() const void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Rpc>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults> (ipc::capnp::messages::Rpc::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>>(mp::ProxyClient<ipc::capnp::messages::Rpc>&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults> (ipc::capnp::messages::Rpc::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>&&)::'lambda0'()::operator()() const Line | Count | Source | 747 | 8 | thread_context.waiter->wait(lock, [&done]() { return done; }); |
|
748 | 42 | if (exception) std::rethrow_exception(exception); |
749 | 42 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; |
750 | 42 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; |
751 | 42 | } void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::AddParams, gen::FooInterface::AddResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::A, 1>, int>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::B, 1>, int>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 2>, int&>&&) Line | Count | Source | 671 | 1 | { | 672 | 1 | if (!g_thread_context.waiter) { | 673 | 1 | assert(g_thread_context.thread_name.empty()); | 674 | 1 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); | 675 | | // If next assert triggers, it means clientInvoke is being called from | 676 | | // the capnp event loop thread. This can happen when a ProxyServer | 677 | | // method implementation that runs synchronously on the event loop | 678 | | // thread tries to make a blocking callback to the client. Any server | 679 | | // method that makes a blocking callback or blocks in general needs to | 680 | | // run asynchronously off the event loop thread. This is easy to fix by | 681 | | // just adding a 'context :Proxy.Context' argument to the capnp method | 682 | | // declaration so the server method runs in a dedicated thread. | 683 | 1 | assert(!g_thread_context.loop_thread); | 684 | 1 | g_thread_context.waiter = std::make_unique<Waiter>(); | 685 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 686 | 1 | << "{" << g_thread_context.thread_name | 687 | 1 | << "} IPC client first request from current thread, constructing waiter"; | 688 | 1 | } | 689 | 1 | ThreadContext& thread_context{g_thread_context}; | 690 | 1 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below | 691 | 1 | std::exception_ptr exception; | 692 | 1 | std::string kj_exception; | 693 | 1 | bool done = false; | 694 | 1 | const char* disconnected = nullptr; | 695 | 1 | proxy_client.m_context.loop->sync([&]() { | 696 | 1 | if (!proxy_client.m_context.connection) { | 697 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 1 | done = true; | 699 | 1 | disconnected = "IPC client method called after disconnect."; | 700 | 1 | thread_context.waiter->m_cv.notify_all(); | 701 | 1 | return; | 702 | 1 | } | 703 | | | 704 | 1 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 1 | using Request = CapRequestTraits<decltype(request)>; | 706 | 1 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 1 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 1 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 1 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 1 | << TypeName<typename Request::Params>(); | 712 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 1 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 1 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 1 | exception = std::current_exception(); | 727 | 1 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, | 732 | 1 | [&](const ::kj::Exception& e) { | 733 | 1 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 1 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 1 | } else { | 736 | 1 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 1 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 1 | } | 740 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 1 | done = true; | 742 | 1 | thread_context.waiter->m_cv.notify_all(); | 743 | 1 | })); | 744 | 1 | }); | 745 | | | 746 | 1 | Lock lock(thread_context.waiter->m_mutex); | 747 | 1 | thread_context.waiter->wait(lock, [&done]() { return done; }); | 748 | 1 | if (exception) std::rethrow_exception(exception); | 749 | 1 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; | 750 | 1 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; | 751 | 1 | } |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, COutPoint>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, COutPoint&>&&) Line | Count | Source | 671 | 1 | { | 672 | 1 | if (!g_thread_context.waiter) { | 673 | 0 | assert(g_thread_context.thread_name.empty()); | 674 | 0 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); | 675 | | // If next assert triggers, it means clientInvoke is being called from | 676 | | // the capnp event loop thread. This can happen when a ProxyServer | 677 | | // method implementation that runs synchronously on the event loop | 678 | | // thread tries to make a blocking callback to the client. Any server | 679 | | // method that makes a blocking callback or blocks in general needs to | 680 | | // run asynchronously off the event loop thread. This is easy to fix by | 681 | | // just adding a 'context :Proxy.Context' argument to the capnp method | 682 | | // declaration so the server method runs in a dedicated thread. | 683 | 0 | assert(!g_thread_context.loop_thread); | 684 | 0 | g_thread_context.waiter = std::make_unique<Waiter>(); | 685 | 0 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 686 | 0 | << "{" << g_thread_context.thread_name | 687 | 0 | << "} IPC client first request from current thread, constructing waiter"; | 688 | 0 | } | 689 | 1 | ThreadContext& thread_context{g_thread_context}; | 690 | 1 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below | 691 | 1 | std::exception_ptr exception; | 692 | 1 | std::string kj_exception; | 693 | 1 | bool done = false; | 694 | 1 | const char* disconnected = nullptr; | 695 | 1 | proxy_client.m_context.loop->sync([&]() { | 696 | 1 | if (!proxy_client.m_context.connection) { | 697 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 1 | done = true; | 699 | 1 | disconnected = "IPC client method called after disconnect."; | 700 | 1 | thread_context.waiter->m_cv.notify_all(); | 701 | 1 | return; | 702 | 1 | } | 703 | | | 704 | 1 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 1 | using Request = CapRequestTraits<decltype(request)>; | 706 | 1 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 1 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 1 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 1 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 1 | << TypeName<typename Request::Params>(); | 712 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 1 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 1 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 1 | exception = std::current_exception(); | 727 | 1 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, | 732 | 1 | [&](const ::kj::Exception& e) { | 733 | 1 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 1 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 1 | } else { | 736 | 1 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 1 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 1 | } | 740 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 1 | done = true; | 742 | 1 | thread_context.waiter->m_cv.notify_all(); | 743 | 1 | })); | 744 | 1 | }); | 745 | | | 746 | 1 | Lock lock(thread_context.waiter->m_mutex); | 747 | 1 | thread_context.waiter->wait(lock, [&done]() { return done; }); | 748 | 1 | if (exception) std::rethrow_exception(exception); | 749 | 1 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; | 750 | 1 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; | 751 | 1 | } |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, UniValue>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, UniValue&>&&) Line | Count | Source | 671 | 1 | { | 672 | 1 | if (!g_thread_context.waiter) { | 673 | 0 | assert(g_thread_context.thread_name.empty()); | 674 | 0 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); | 675 | | // If next assert triggers, it means clientInvoke is being called from | 676 | | // the capnp event loop thread. This can happen when a ProxyServer | 677 | | // method implementation that runs synchronously on the event loop | 678 | | // thread tries to make a blocking callback to the client. Any server | 679 | | // method that makes a blocking callback or blocks in general needs to | 680 | | // run asynchronously off the event loop thread. This is easy to fix by | 681 | | // just adding a 'context :Proxy.Context' argument to the capnp method | 682 | | // declaration so the server method runs in a dedicated thread. | 683 | 0 | assert(!g_thread_context.loop_thread); | 684 | 0 | g_thread_context.waiter = std::make_unique<Waiter>(); | 685 | 0 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 686 | 0 | << "{" << g_thread_context.thread_name | 687 | 0 | << "} IPC client first request from current thread, constructing waiter"; | 688 | 0 | } | 689 | 1 | ThreadContext& thread_context{g_thread_context}; | 690 | 1 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below | 691 | 1 | std::exception_ptr exception; | 692 | 1 | std::string kj_exception; | 693 | 1 | bool done = false; | 694 | 1 | const char* disconnected = nullptr; | 695 | 1 | proxy_client.m_context.loop->sync([&]() { | 696 | 1 | if (!proxy_client.m_context.connection) { | 697 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 1 | done = true; | 699 | 1 | disconnected = "IPC client method called after disconnect."; | 700 | 1 | thread_context.waiter->m_cv.notify_all(); | 701 | 1 | return; | 702 | 1 | } | 703 | | | 704 | 1 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 1 | using Request = CapRequestTraits<decltype(request)>; | 706 | 1 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 1 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 1 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 1 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 1 | << TypeName<typename Request::Params>(); | 712 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 1 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 1 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 1 | exception = std::current_exception(); | 727 | 1 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, | 732 | 1 | [&](const ::kj::Exception& e) { | 733 | 1 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 1 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 1 | } else { | 736 | 1 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 1 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 1 | } | 740 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 1 | done = true; | 742 | 1 | thread_context.waiter->m_cv.notify_all(); | 743 | 1 | })); | 744 | 1 | }); | 745 | | | 746 | 1 | Lock lock(thread_context.waiter->m_mutex); | 747 | 1 | thread_context.waiter->wait(lock, [&done]() { return done; }); | 748 | 1 | if (exception) std::rethrow_exception(exception); | 749 | 1 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; | 750 | 1 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; | 751 | 1 | } |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::shared_ptr<CTransaction const>>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::shared_ptr<CTransaction const>&>&&) Line | Count | Source | 671 | 1 | { | 672 | 1 | if (!g_thread_context.waiter) { | 673 | 0 | assert(g_thread_context.thread_name.empty()); | 674 | 0 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); | 675 | | // If next assert triggers, it means clientInvoke is being called from | 676 | | // the capnp event loop thread. This can happen when a ProxyServer | 677 | | // method implementation that runs synchronously on the event loop | 678 | | // thread tries to make a blocking callback to the client. Any server | 679 | | // method that makes a blocking callback or blocks in general needs to | 680 | | // run asynchronously off the event loop thread. This is easy to fix by | 681 | | // just adding a 'context :Proxy.Context' argument to the capnp method | 682 | | // declaration so the server method runs in a dedicated thread. | 683 | 0 | assert(!g_thread_context.loop_thread); | 684 | 0 | g_thread_context.waiter = std::make_unique<Waiter>(); | 685 | 0 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 686 | 0 | << "{" << g_thread_context.thread_name | 687 | 0 | << "} IPC client first request from current thread, constructing waiter"; | 688 | 0 | } | 689 | 1 | ThreadContext& thread_context{g_thread_context}; | 690 | 1 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below | 691 | 1 | std::exception_ptr exception; | 692 | 1 | std::string kj_exception; | 693 | 1 | bool done = false; | 694 | 1 | const char* disconnected = nullptr; | 695 | 1 | proxy_client.m_context.loop->sync([&]() { | 696 | 1 | if (!proxy_client.m_context.connection) { | 697 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 1 | done = true; | 699 | 1 | disconnected = "IPC client method called after disconnect."; | 700 | 1 | thread_context.waiter->m_cv.notify_all(); | 701 | 1 | return; | 702 | 1 | } | 703 | | | 704 | 1 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 1 | using Request = CapRequestTraits<decltype(request)>; | 706 | 1 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 1 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 1 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 1 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 1 | << TypeName<typename Request::Params>(); | 712 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 1 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 1 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 1 | exception = std::current_exception(); | 727 | 1 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, | 732 | 1 | [&](const ::kj::Exception& e) { | 733 | 1 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 1 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 1 | } else { | 736 | 1 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 1 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 1 | } | 740 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 1 | done = true; | 742 | 1 | thread_context.waiter->m_cv.notify_all(); | 743 | 1 | })); | 744 | 1 | }); | 745 | | | 746 | 1 | Lock lock(thread_context.waiter->m_mutex); | 747 | 1 | thread_context.waiter->wait(lock, [&done]() { return done; }); | 748 | 1 | if (exception) std::rethrow_exception(exception); | 749 | 1 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; | 750 | 1 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; | 751 | 1 | } |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, std::vector<char, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, std::vector<char, std::allocator<char>>&>&&) Line | Count | Source | 671 | 1 | { | 672 | 1 | if (!g_thread_context.waiter) { | 673 | 0 | assert(g_thread_context.thread_name.empty()); | 674 | 0 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); | 675 | | // If next assert triggers, it means clientInvoke is being called from | 676 | | // the capnp event loop thread. This can happen when a ProxyServer | 677 | | // method implementation that runs synchronously on the event loop | 678 | | // thread tries to make a blocking callback to the client. Any server | 679 | | // method that makes a blocking callback or blocks in general needs to | 680 | | // run asynchronously off the event loop thread. This is easy to fix by | 681 | | // just adding a 'context :Proxy.Context' argument to the capnp method | 682 | | // declaration so the server method runs in a dedicated thread. | 683 | 0 | assert(!g_thread_context.loop_thread); | 684 | 0 | g_thread_context.waiter = std::make_unique<Waiter>(); | 685 | 0 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 686 | 0 | << "{" << g_thread_context.thread_name | 687 | 0 | << "} IPC client first request from current thread, constructing waiter"; | 688 | 0 | } | 689 | 1 | ThreadContext& thread_context{g_thread_context}; | 690 | 1 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below | 691 | 1 | std::exception_ptr exception; | 692 | 1 | std::string kj_exception; | 693 | 1 | bool done = false; | 694 | 1 | const char* disconnected = nullptr; | 695 | 1 | proxy_client.m_context.loop->sync([&]() { | 696 | 1 | if (!proxy_client.m_context.connection) { | 697 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 1 | done = true; | 699 | 1 | disconnected = "IPC client method called after disconnect."; | 700 | 1 | thread_context.waiter->m_cv.notify_all(); | 701 | 1 | return; | 702 | 1 | } | 703 | | | 704 | 1 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 1 | using Request = CapRequestTraits<decltype(request)>; | 706 | 1 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 1 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 1 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 1 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 1 | << TypeName<typename Request::Params>(); | 712 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 1 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 1 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 1 | exception = std::current_exception(); | 727 | 1 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, | 732 | 1 | [&](const ::kj::Exception& e) { | 733 | 1 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 1 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 1 | } else { | 736 | 1 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 1 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 1 | } | 740 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 1 | done = true; | 742 | 1 | thread_context.waiter->m_cv.notify_all(); | 743 | 1 | })); | 744 | 1 | }); | 745 | | | 746 | 1 | Lock lock(thread_context.waiter->m_mutex); | 747 | 1 | thread_context.waiter->wait(lock, [&done]() { return done; }); | 748 | 1 | if (exception) std::rethrow_exception(exception); | 749 | 1 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; | 750 | 1 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; | 751 | 1 | } |
void mp::clientInvoke<mp::ProxyClient<gen::FooInterface>, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults> (gen::FooInterface::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>>(mp::ProxyClient<gen::FooInterface>&, capnp::Request<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults> (gen::FooInterface::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Arg, 17>, CScript>&&, mp::ClientParam<mp::Accessor<mp::ipc_test_fields::Result, 18>, CScript&>&&) Line | Count | Source | 671 | 1 | { | 672 | 1 | if (!g_thread_context.waiter) { | 673 | 0 | assert(g_thread_context.thread_name.empty()); | 674 | 0 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); | 675 | | // If next assert triggers, it means clientInvoke is being called from | 676 | | // the capnp event loop thread. This can happen when a ProxyServer | 677 | | // method implementation that runs synchronously on the event loop | 678 | | // thread tries to make a blocking callback to the client. Any server | 679 | | // method that makes a blocking callback or blocks in general needs to | 680 | | // run asynchronously off the event loop thread. This is easy to fix by | 681 | | // just adding a 'context :Proxy.Context' argument to the capnp method | 682 | | // declaration so the server method runs in a dedicated thread. | 683 | 0 | assert(!g_thread_context.loop_thread); | 684 | 0 | g_thread_context.waiter = std::make_unique<Waiter>(); | 685 | 0 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 686 | 0 | << "{" << g_thread_context.thread_name | 687 | 0 | << "} IPC client first request from current thread, constructing waiter"; | 688 | 0 | } | 689 | 1 | ThreadContext& thread_context{g_thread_context}; | 690 | 1 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below | 691 | 1 | std::exception_ptr exception; | 692 | 1 | std::string kj_exception; | 693 | 1 | bool done = false; | 694 | 1 | const char* disconnected = nullptr; | 695 | 1 | proxy_client.m_context.loop->sync([&]() { | 696 | 1 | if (!proxy_client.m_context.connection) { | 697 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 1 | done = true; | 699 | 1 | disconnected = "IPC client method called after disconnect."; | 700 | 1 | thread_context.waiter->m_cv.notify_all(); | 701 | 1 | return; | 702 | 1 | } | 703 | | | 704 | 1 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 1 | using Request = CapRequestTraits<decltype(request)>; | 706 | 1 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 1 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 1 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 1 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 1 | << TypeName<typename Request::Params>(); | 712 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 1 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 1 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 1 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 1 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 1 | << TypeName<typename Request::Results>(); | 720 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 1 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 1 | try { | 723 | 1 | IterateFields().handleChain( | 724 | 1 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 1 | } catch (...) { | 726 | 1 | exception = std::current_exception(); | 727 | 1 | } | 728 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 1 | done = true; | 730 | 1 | thread_context.waiter->m_cv.notify_all(); | 731 | 1 | }, | 732 | 1 | [&](const ::kj::Exception& e) { | 733 | 1 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 1 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 1 | } else { | 736 | 1 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 1 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 1 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 1 | } | 740 | 1 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 1 | done = true; | 742 | 1 | thread_context.waiter->m_cv.notify_all(); | 743 | 1 | })); | 744 | 1 | }); | 745 | | | 746 | 1 | Lock lock(thread_context.waiter->m_mutex); | 747 | 1 | thread_context.waiter->wait(lock, [&done]() { return done; }); | 748 | 1 | if (exception) std::rethrow_exception(exception); | 749 | 1 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; | 750 | 1 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; | 751 | 1 | } |
void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::Init, interfaces::Init>, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>>(mp::ProxyClientBase<ipc::capnp::messages::Init, interfaces::Init>&, capnp::Request<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::ThreadMap, 19>>&&) Line | Count | Source | 671 | 10 | { | 672 | 10 | if (!g_thread_context.waiter) { | 673 | 4 | assert(g_thread_context.thread_name.empty()); | 674 | 4 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); | 675 | | // If next assert triggers, it means clientInvoke is being called from | 676 | | // the capnp event loop thread. This can happen when a ProxyServer | 677 | | // method implementation that runs synchronously on the event loop | 678 | | // thread tries to make a blocking callback to the client. Any server | 679 | | // method that makes a blocking callback or blocks in general needs to | 680 | | // run asynchronously off the event loop thread. This is easy to fix by | 681 | | // just adding a 'context :Proxy.Context' argument to the capnp method | 682 | | // declaration so the server method runs in a dedicated thread. | 683 | 4 | assert(!g_thread_context.loop_thread); | 684 | 4 | g_thread_context.waiter = std::make_unique<Waiter>(); | 685 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 686 | 4 | << "{" << g_thread_context.thread_name | 687 | 4 | << "} IPC client first request from current thread, constructing waiter"; | 688 | 4 | } | 689 | 10 | ThreadContext& thread_context{g_thread_context}; | 690 | 10 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below | 691 | 10 | std::exception_ptr exception; | 692 | 10 | std::string kj_exception; | 693 | 10 | bool done = false; | 694 | 10 | const char* disconnected = nullptr; | 695 | 10 | proxy_client.m_context.loop->sync([&]() { | 696 | 10 | if (!proxy_client.m_context.connection) { | 697 | 10 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 10 | done = true; | 699 | 10 | disconnected = "IPC client method called after disconnect."; | 700 | 10 | thread_context.waiter->m_cv.notify_all(); | 701 | 10 | return; | 702 | 10 | } | 703 | | | 704 | 10 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 10 | using Request = CapRequestTraits<decltype(request)>; | 706 | 10 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 10 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 10 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 10 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 10 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 10 | << TypeName<typename Request::Params>(); | 712 | 10 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 10 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 10 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 10 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 10 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 10 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 10 | << TypeName<typename Request::Results>(); | 720 | 10 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 10 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 10 | try { | 723 | 10 | IterateFields().handleChain( | 724 | 10 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 10 | } catch (...) { | 726 | 10 | exception = std::current_exception(); | 727 | 10 | } | 728 | 10 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 10 | done = true; | 730 | 10 | thread_context.waiter->m_cv.notify_all(); | 731 | 10 | }, | 732 | 10 | [&](const ::kj::Exception& e) { | 733 | 10 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 10 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 10 | } else { | 736 | 10 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 10 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 10 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 10 | } | 740 | 10 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 10 | done = true; | 742 | 10 | thread_context.waiter->m_cv.notify_all(); | 743 | 10 | })); | 744 | 10 | }); | 745 | | | 746 | 10 | Lock lock(thread_context.waiter->m_mutex); | 747 | 10 | thread_context.waiter->wait(lock, [&done]() { return done; }); | 748 | 10 | if (exception) std::rethrow_exception(exception); | 749 | 10 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; | 750 | 10 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; | 751 | 10 | } |
void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Echo, std::default_delete<interfaces::Echo>>&>&&) Line | Count | Source | 671 | 6 | { | 672 | 6 | if (!g_thread_context.waiter) { | 673 | 0 | assert(g_thread_context.thread_name.empty()); | 674 | 0 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); | 675 | | // If next assert triggers, it means clientInvoke is being called from | 676 | | // the capnp event loop thread. This can happen when a ProxyServer | 677 | | // method implementation that runs synchronously on the event loop | 678 | | // thread tries to make a blocking callback to the client. Any server | 679 | | // method that makes a blocking callback or blocks in general needs to | 680 | | // run asynchronously off the event loop thread. This is easy to fix by | 681 | | // just adding a 'context :Proxy.Context' argument to the capnp method | 682 | | // declaration so the server method runs in a dedicated thread. | 683 | 0 | assert(!g_thread_context.loop_thread); | 684 | 0 | g_thread_context.waiter = std::make_unique<Waiter>(); | 685 | 0 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 686 | 0 | << "{" << g_thread_context.thread_name | 687 | 0 | << "} IPC client first request from current thread, constructing waiter"; | 688 | 0 | } | 689 | 6 | ThreadContext& thread_context{g_thread_context}; | 690 | 6 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below | 691 | 6 | std::exception_ptr exception; | 692 | 6 | std::string kj_exception; | 693 | 6 | bool done = false; | 694 | 6 | const char* disconnected = nullptr; | 695 | 6 | proxy_client.m_context.loop->sync([&]() { | 696 | 6 | if (!proxy_client.m_context.connection) { | 697 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 6 | done = true; | 699 | 6 | disconnected = "IPC client method called after disconnect."; | 700 | 6 | thread_context.waiter->m_cv.notify_all(); | 701 | 6 | return; | 702 | 6 | } | 703 | | | 704 | 6 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 6 | using Request = CapRequestTraits<decltype(request)>; | 706 | 6 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 6 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 6 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 6 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 6 | << TypeName<typename Request::Params>(); | 712 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 6 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 6 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 6 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 6 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 6 | << TypeName<typename Request::Results>(); | 720 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 6 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 6 | try { | 723 | 6 | IterateFields().handleChain( | 724 | 6 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 6 | } catch (...) { | 726 | 6 | exception = std::current_exception(); | 727 | 6 | } | 728 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 6 | done = true; | 730 | 6 | thread_context.waiter->m_cv.notify_all(); | 731 | 6 | }, | 732 | 6 | [&](const ::kj::Exception& e) { | 733 | 6 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 6 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 6 | } else { | 736 | 6 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 6 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 6 | } | 740 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 6 | done = true; | 742 | 6 | thread_context.waiter->m_cv.notify_all(); | 743 | 6 | })); | 744 | 6 | }); | 745 | | | 746 | 6 | Lock lock(thread_context.waiter->m_mutex); | 747 | 6 | thread_context.waiter->wait(lock, [&done]() { return done; }); | 748 | 6 | if (exception) std::rethrow_exception(exception); | 749 | 6 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; | 750 | 6 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; | 751 | 6 | } |
Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>)) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Mining, std::default_delete<interfaces::Mining>>&>&&) void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Init>, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults> (ipc::capnp::messages::Init::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>>(mp::ProxyClient<ipc::capnp::messages::Init>&, capnp::Request<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults> (ipc::capnp::messages::Init::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::init_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::init_fields::Result, 18>, std::unique_ptr<interfaces::Rpc, std::default_delete<interfaces::Rpc>>&>&&) Line | Count | Source | 671 | 4 | { | 672 | 4 | if (!g_thread_context.waiter) { | 673 | 0 | assert(g_thread_context.thread_name.empty()); | 674 | 0 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); | 675 | | // If next assert triggers, it means clientInvoke is being called from | 676 | | // the capnp event loop thread. This can happen when a ProxyServer | 677 | | // method implementation that runs synchronously on the event loop | 678 | | // thread tries to make a blocking callback to the client. Any server | 679 | | // method that makes a blocking callback or blocks in general needs to | 680 | | // run asynchronously off the event loop thread. This is easy to fix by | 681 | | // just adding a 'context :Proxy.Context' argument to the capnp method | 682 | | // declaration so the server method runs in a dedicated thread. | 683 | 0 | assert(!g_thread_context.loop_thread); | 684 | 0 | g_thread_context.waiter = std::make_unique<Waiter>(); | 685 | 0 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 686 | 0 | << "{" << g_thread_context.thread_name | 687 | 0 | << "} IPC client first request from current thread, constructing waiter"; | 688 | 0 | } | 689 | 4 | ThreadContext& thread_context{g_thread_context}; | 690 | 4 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below | 691 | 4 | std::exception_ptr exception; | 692 | 4 | std::string kj_exception; | 693 | 4 | bool done = false; | 694 | 4 | const char* disconnected = nullptr; | 695 | 4 | proxy_client.m_context.loop->sync([&]() { | 696 | 4 | if (!proxy_client.m_context.connection) { | 697 | 4 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 4 | done = true; | 699 | 4 | disconnected = "IPC client method called after disconnect."; | 700 | 4 | thread_context.waiter->m_cv.notify_all(); | 701 | 4 | return; | 702 | 4 | } | 703 | | | 704 | 4 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 4 | using Request = CapRequestTraits<decltype(request)>; | 706 | 4 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 4 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 4 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 4 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 4 | << TypeName<typename Request::Params>(); | 712 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 4 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 4 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 4 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 4 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 4 | << TypeName<typename Request::Results>(); | 720 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 4 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 4 | try { | 723 | 4 | IterateFields().handleChain( | 724 | 4 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 4 | } catch (...) { | 726 | 4 | exception = std::current_exception(); | 727 | 4 | } | 728 | 4 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 4 | done = true; | 730 | 4 | thread_context.waiter->m_cv.notify_all(); | 731 | 4 | }, | 732 | 4 | [&](const ::kj::Exception& e) { | 733 | 4 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 4 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 4 | } else { | 736 | 4 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 4 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 4 | } | 740 | 4 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 4 | done = true; | 742 | 4 | thread_context.waiter->m_cv.notify_all(); | 743 | 4 | })); | 744 | 4 | }); | 745 | | | 746 | 4 | Lock lock(thread_context.waiter->m_mutex); | 747 | 4 | thread_context.waiter->wait(lock, [&done]() { return done; }); | 748 | 4 | if (exception) std::rethrow_exception(exception); | 749 | 4 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; | 750 | 4 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; | 751 | 4 | } |
void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::Echo, interfaces::Echo>, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults> (ipc::capnp::messages::Echo::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>>(mp::ProxyClientBase<ipc::capnp::messages::Echo, interfaces::Echo>&, capnp::Request<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults> (ipc::capnp::messages::Echo::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>&&) Line | Count | Source | 671 | 6 | { | 672 | 6 | if (!g_thread_context.waiter) { | 673 | 0 | assert(g_thread_context.thread_name.empty()); | 674 | 0 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); | 675 | | // If next assert triggers, it means clientInvoke is being called from | 676 | | // the capnp event loop thread. This can happen when a ProxyServer | 677 | | // method implementation that runs synchronously on the event loop | 678 | | // thread tries to make a blocking callback to the client. Any server | 679 | | // method that makes a blocking callback or blocks in general needs to | 680 | | // run asynchronously off the event loop thread. This is easy to fix by | 681 | | // just adding a 'context :Proxy.Context' argument to the capnp method | 682 | | // declaration so the server method runs in a dedicated thread. | 683 | 0 | assert(!g_thread_context.loop_thread); | 684 | 0 | g_thread_context.waiter = std::make_unique<Waiter>(); | 685 | 0 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 686 | 0 | << "{" << g_thread_context.thread_name | 687 | 0 | << "} IPC client first request from current thread, constructing waiter"; | 688 | 0 | } | 689 | 6 | ThreadContext& thread_context{g_thread_context}; | 690 | 6 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below | 691 | 6 | std::exception_ptr exception; | 692 | 6 | std::string kj_exception; | 693 | 6 | bool done = false; | 694 | 6 | const char* disconnected = nullptr; | 695 | 6 | proxy_client.m_context.loop->sync([&]() { | 696 | 6 | if (!proxy_client.m_context.connection) { | 697 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 6 | done = true; | 699 | 6 | disconnected = "IPC client method called after disconnect."; | 700 | 6 | thread_context.waiter->m_cv.notify_all(); | 701 | 6 | return; | 702 | 6 | } | 703 | | | 704 | 6 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 6 | using Request = CapRequestTraits<decltype(request)>; | 706 | 6 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 6 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 6 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 6 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 6 | << TypeName<typename Request::Params>(); | 712 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 6 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 6 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 6 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 6 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 6 | << TypeName<typename Request::Results>(); | 720 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 6 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 6 | try { | 723 | 6 | IterateFields().handleChain( | 724 | 6 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 6 | } catch (...) { | 726 | 6 | exception = std::current_exception(); | 727 | 6 | } | 728 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 6 | done = true; | 730 | 6 | thread_context.waiter->m_cv.notify_all(); | 731 | 6 | }, | 732 | 6 | [&](const ::kj::Exception& e) { | 733 | 6 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 6 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 6 | } else { | 736 | 6 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 6 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 6 | } | 740 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 6 | done = true; | 742 | 6 | thread_context.waiter->m_cv.notify_all(); | 743 | 6 | })); | 744 | 6 | }); | 745 | | | 746 | 6 | Lock lock(thread_context.waiter->m_mutex); | 747 | 6 | thread_context.waiter->wait(lock, [&done]() { return done; }); | 748 | 6 | if (exception) std::rethrow_exception(exception); | 749 | 6 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; | 750 | 6 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; | 751 | 6 | } |
void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Echo>, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults> (ipc::capnp::messages::Echo::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>>(mp::ProxyClient<ipc::capnp::messages::Echo>&, capnp::Request<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults> (ipc::capnp::messages::Echo::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::echo_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Echo, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>&&, mp::ClientParam<mp::Accessor<mp::echo_fields::Result, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&) Line | Count | Source | 671 | 6 | { | 672 | 6 | if (!g_thread_context.waiter) { | 673 | 0 | assert(g_thread_context.thread_name.empty()); | 674 | 0 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); | 675 | | // If next assert triggers, it means clientInvoke is being called from | 676 | | // the capnp event loop thread. This can happen when a ProxyServer | 677 | | // method implementation that runs synchronously on the event loop | 678 | | // thread tries to make a blocking callback to the client. Any server | 679 | | // method that makes a blocking callback or blocks in general needs to | 680 | | // run asynchronously off the event loop thread. This is easy to fix by | 681 | | // just adding a 'context :Proxy.Context' argument to the capnp method | 682 | | // declaration so the server method runs in a dedicated thread. | 683 | 0 | assert(!g_thread_context.loop_thread); | 684 | 0 | g_thread_context.waiter = std::make_unique<Waiter>(); | 685 | 0 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 686 | 0 | << "{" << g_thread_context.thread_name | 687 | 0 | << "} IPC client first request from current thread, constructing waiter"; | 688 | 0 | } | 689 | 6 | ThreadContext& thread_context{g_thread_context}; | 690 | 6 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below | 691 | 6 | std::exception_ptr exception; | 692 | 6 | std::string kj_exception; | 693 | 6 | bool done = false; | 694 | 6 | const char* disconnected = nullptr; | 695 | 6 | proxy_client.m_context.loop->sync([&]() { | 696 | 6 | if (!proxy_client.m_context.connection) { | 697 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 6 | done = true; | 699 | 6 | disconnected = "IPC client method called after disconnect."; | 700 | 6 | thread_context.waiter->m_cv.notify_all(); | 701 | 6 | return; | 702 | 6 | } | 703 | | | 704 | 6 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 6 | using Request = CapRequestTraits<decltype(request)>; | 706 | 6 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 6 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 6 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 6 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 6 | << TypeName<typename Request::Params>(); | 712 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 6 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 6 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 6 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 6 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 6 | << TypeName<typename Request::Results>(); | 720 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 6 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 6 | try { | 723 | 6 | IterateFields().handleChain( | 724 | 6 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 6 | } catch (...) { | 726 | 6 | exception = std::current_exception(); | 727 | 6 | } | 728 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 6 | done = true; | 730 | 6 | thread_context.waiter->m_cv.notify_all(); | 731 | 6 | }, | 732 | 6 | [&](const ::kj::Exception& e) { | 733 | 6 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 6 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 6 | } else { | 736 | 6 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 6 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 6 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 6 | } | 740 | 6 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 6 | done = true; | 742 | 6 | thread_context.waiter->m_cv.notify_all(); | 743 | 6 | })); | 744 | 6 | }); | 745 | | | 746 | 6 | Lock lock(thread_context.waiter->m_mutex); | 747 | 6 | thread_context.waiter->wait(lock, [&done]() { return done; }); | 748 | 6 | if (exception) std::rethrow_exception(exception); | 749 | 6 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; | 750 | 6 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; | 751 | 6 | } |
Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 22>, std::optional<interfaces::BlockRef>&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::CurrentTip, 17>, uint256>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timeout, 1>, std::chrono::duration<double, std::ratio<1l, 1000l>>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::optional<interfaces::BlockRef>&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCreateOptions const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Cooldown, 1>, bool>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Block, 17>, CBlock const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockCheckOptions const&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Reason, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Debug, 18>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Mining>, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults> (ipc::capnp::messages::Mining::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::Mining>&, capnp::Request<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults> (ipc::capnp::messages::Mining::Client::* const&)(kj::Maybe<capnp::MessageSize>)) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClientBase<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>>(mp::ProxyClientBase<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlockHeader&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, CBlock&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<long, std::allocator<long>>&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, node::CoinbaseTx&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::vector<uint256, std::allocator<uint256>>&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Version, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Timestamp, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Nonce, 1>, unsigned int>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Coinbase, 17>, std::shared_ptr<CTransaction const>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 2>, bool&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::mining_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions>&&, mp::ClientParam<mp::Accessor<mp::mining_fields::Result, 18>, std::unique_ptr<interfaces::BlockTemplate, std::default_delete<interfaces::BlockTemplate>>&>&&) Unexecuted instantiation: void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::BlockTemplate>, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults> (ipc::capnp::messages::BlockTemplate::Client::*)(kj::Maybe<capnp::MessageSize>)>(mp::ProxyClient<ipc::capnp::messages::BlockTemplate>&, capnp::Request<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults> (ipc::capnp::messages::BlockTemplate::Client::* const&)(kj::Maybe<capnp::MessageSize>)) void mp::clientInvoke<mp::ProxyClient<ipc::capnp::messages::Rpc>, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults> (ipc::capnp::messages::Rpc::Client::*)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>>(mp::ProxyClient<ipc::capnp::messages::Rpc>&, capnp::Request<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults> (ipc::capnp::messages::Rpc::Client::* const&)(kj::Maybe<capnp::MessageSize>), mp::ClientParam<mp::Accessor<mp::rpc_fields::Context, 17>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Request, 17>, UniValue>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Uri, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::User, 17>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>&&, mp::ClientParam<mp::Accessor<mp::rpc_fields::Result, 18>, UniValue&>&&) Line | Count | Source | 671 | 4 | { | 672 | 4 | if (!g_thread_context.waiter) { | 673 | 0 | assert(g_thread_context.thread_name.empty()); | 674 | 0 | g_thread_context.thread_name = ThreadName(proxy_client.m_context.loop->m_exe_name); | 675 | | // If next assert triggers, it means clientInvoke is being called from | 676 | | // the capnp event loop thread. This can happen when a ProxyServer | 677 | | // method implementation that runs synchronously on the event loop | 678 | | // thread tries to make a blocking callback to the client. Any server | 679 | | // method that makes a blocking callback or blocks in general needs to | 680 | | // run asynchronously off the event loop thread. This is easy to fix by | 681 | | // just adding a 'context :Proxy.Context' argument to the capnp method | 682 | | // declaration so the server method runs in a dedicated thread. | 683 | 0 | assert(!g_thread_context.loop_thread); | 684 | 0 | g_thread_context.waiter = std::make_unique<Waiter>(); | 685 | 0 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 686 | 0 | << "{" << g_thread_context.thread_name | 687 | 0 | << "} IPC client first request from current thread, constructing waiter"; | 688 | 0 | } | 689 | 4 | ThreadContext& thread_context{g_thread_context}; | 690 | 4 | std::optional<ClientInvokeContext> invoke_context; // Must outlive waiter->wait() call below | 691 | 4 | std::exception_ptr exception; | 692 | 4 | std::string kj_exception; | 693 | 4 | bool done = false; | 694 | 4 | const char* disconnected = nullptr; | 695 | 4 | proxy_client.m_context.loop->sync([&]() { | 696 | 4 | if (!proxy_client.m_context.connection) { | 697 | 4 | const Lock lock(thread_context.waiter->m_mutex); | 698 | 4 | done = true; | 699 | 4 | disconnected = "IPC client method called after disconnect."; | 700 | 4 | thread_context.waiter->m_cv.notify_all(); | 701 | 4 | return; | 702 | 4 | } | 703 | | | 704 | 4 | auto request = (proxy_client.m_client.*get_request)(nullptr); | 705 | 4 | using Request = CapRequestTraits<decltype(request)>; | 706 | 4 | using FieldList = typename ProxyClientMethodTraits<typename Request::Params>::Fields; | 707 | 4 | invoke_context.emplace(*proxy_client.m_context.connection, thread_context); | 708 | 4 | IterateFields().handleChain(*invoke_context, request, FieldList(), typename FieldObjs::BuildParams{&fields}...); | 709 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 710 | 4 | << "{" << thread_context.thread_name << "} IPC client send " | 711 | 4 | << TypeName<typename Request::Params>(); | 712 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 713 | 4 | << "send data: " << LogEscape(request.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 714 | | | 715 | 4 | proxy_client.m_context.loop->m_task_set->add(request.send().then( | 716 | 4 | [&](::capnp::Response<typename Request::Results>&& response) { | 717 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Debug) | 718 | 4 | << "{" << thread_context.thread_name << "} IPC client recv " | 719 | 4 | << TypeName<typename Request::Results>(); | 720 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Trace) | 721 | 4 | << "recv data: " << LogEscape(response.toString(), proxy_client.m_context.loop->m_log_opts.max_chars); | 722 | 4 | try { | 723 | 4 | IterateFields().handleChain( | 724 | 4 | *invoke_context, response, FieldList(), typename FieldObjs::ReadResults{&fields}...); | 725 | 4 | } catch (...) { | 726 | 4 | exception = std::current_exception(); | 727 | 4 | } | 728 | 4 | const Lock lock(thread_context.waiter->m_mutex); | 729 | 4 | done = true; | 730 | 4 | thread_context.waiter->m_cv.notify_all(); | 731 | 4 | }, | 732 | 4 | [&](const ::kj::Exception& e) { | 733 | 4 | if (e.getType() == ::kj::Exception::Type::DISCONNECTED) { | 734 | 4 | disconnected = "IPC client method call interrupted by disconnect."; | 735 | 4 | } else { | 736 | 4 | kj_exception = kj::str("kj::Exception: ", e).cStr(); | 737 | 4 | MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Info) | 738 | 4 | << "{" << thread_context.thread_name << "} IPC client exception " << kj_exception; | 739 | 4 | } | 740 | 4 | const Lock lock(thread_context.waiter->m_mutex); | 741 | 4 | done = true; | 742 | 4 | thread_context.waiter->m_cv.notify_all(); | 743 | 4 | })); | 744 | 4 | }); | 745 | | | 746 | 4 | Lock lock(thread_context.waiter->m_mutex); | 747 | 4 | thread_context.waiter->wait(lock, [&done]() { return done; }); | 748 | 4 | if (exception) std::rethrow_exception(exception); | 749 | 4 | if (!kj_exception.empty()) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << kj_exception; | 750 | 4 | if (disconnected) MP_LOGPLAIN(*proxy_client.m_context.loop, Log::Raise) << disconnected; | 751 | 4 | } |
|
752 | | |
753 | | //! Invoke callable `fn()` that may return void. If it does return void, replace |
754 | | //! return value with value of `ret()`. This is useful for avoiding code |
755 | | //! duplication and branching in generic code that forwards calls to functions. |
756 | | template <typename Fn, typename Ret> |
757 | | auto ReplaceVoid(Fn&& fn, Ret&& ret) |
758 | 42 | { |
759 | 42 | if constexpr (std::is_same_v<decltype(fn()), void>) { |
760 | 16 | fn(); |
761 | 16 | return ret(); |
762 | 26 | } else { |
763 | 26 | return fn(); |
764 | 26 | } |
765 | 42 | } auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>)::'lambda0'()>(mp::ProxyServer<gen::FooInterface>&&, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&&) Line | Count | Source | 758 | 1 | { | 759 | 1 | if constexpr (std::is_same_v<decltype(fn()), void>) { | 760 | 1 | fn(); | 761 | 1 | return ret(); | 762 | | } else { | 763 | | return fn(); | 764 | | } | 765 | 1 | } |
auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<gen::FooInterface>&&, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&&) Line | Count | Source | 758 | 1 | { | 759 | 1 | if constexpr (std::is_same_v<decltype(fn()), void>) { | 760 | 1 | fn(); | 761 | 1 | return ret(); | 762 | | } else { | 763 | | return fn(); | 764 | | } | 765 | 1 | } |
auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<gen::FooInterface>&&, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&&) Line | Count | Source | 758 | 1 | { | 759 | 1 | if constexpr (std::is_same_v<decltype(fn()), void>) { | 760 | 1 | fn(); | 761 | 1 | return ret(); | 762 | | } else { | 763 | | return fn(); | 764 | | } | 765 | 1 | } |
auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<gen::FooInterface>&&, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&&) Line | Count | Source | 758 | 1 | { | 759 | 1 | if constexpr (std::is_same_v<decltype(fn()), void>) { | 760 | 1 | fn(); | 761 | 1 | return ret(); | 762 | | } else { | 763 | | return fn(); | 764 | | } | 765 | 1 | } |
auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<gen::FooInterface>&&, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&&) Line | Count | Source | 758 | 1 | { | 759 | 1 | if constexpr (std::is_same_v<decltype(fn()), void>) { | 760 | 1 | fn(); | 761 | 1 | return ret(); | 762 | | } else { | 763 | | return fn(); | 764 | | } | 765 | 1 | } |
auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<gen::FooInterface>&&, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&&) Line | Count | Source | 758 | 1 | { | 759 | 1 | if constexpr (std::is_same_v<decltype(fn()), void>) { | 760 | 1 | fn(); | 761 | 1 | return ret(); | 762 | | } else { | 763 | | return fn(); | 764 | | } | 765 | 1 | } |
auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Init>&&, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&&) Line | Count | Source | 758 | 10 | { | 759 | 10 | if constexpr (std::is_same_v<decltype(fn()), void>) { | 760 | 10 | fn(); | 761 | 10 | return ret(); | 762 | | } else { | 763 | | return fn(); | 764 | | } | 765 | 10 | } |
auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Init>&&, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&&) Line | Count | Source | 758 | 6 | { | 759 | | if constexpr (std::is_same_v<decltype(fn()), void>) { | 760 | | fn(); | 761 | | return ret(); | 762 | 6 | } else { | 763 | 6 | return fn(); | 764 | 6 | } | 765 | 6 | } |
Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>&, mp::ServerCall)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>&, mp::ServerCall)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Init>&&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Init>&&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&&) auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Init>&&, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&&) Line | Count | Source | 758 | 4 | { | 759 | | if constexpr (std::is_same_v<decltype(fn()), void>) { | 760 | | fn(); | 761 | | return ret(); | 762 | 4 | } else { | 763 | 4 | return fn(); | 764 | 4 | } | 765 | 4 | } |
Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Mining>&&, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Mining>&&, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Mining>&&, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Mining>&&, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Mining>&&, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Mining>&&, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>&, mp::ServerCall)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>&, mp::ServerCall)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Mining>&&, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&&) Unexecuted instantiation: auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&, mp::ServerCall)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&, mp::ServerCall)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&&) auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>>(mp::ProxyServer<ipc::capnp::messages::Rpc>&, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>>(mp::ProxyServer<ipc::capnp::messages::Rpc>&, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Rpc>&&, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&&) Line | Count | Source | 758 | 4 | { | 759 | | if constexpr (std::is_same_v<decltype(fn()), void>) { | 760 | | fn(); | 761 | | return ret(); | 762 | 4 | } else { | 763 | 4 | return fn(); | 764 | 4 | } | 765 | 4 | } |
auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>>(mp::ProxyServer<ipc::capnp::messages::Echo>&, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>>(mp::ProxyServer<ipc::capnp::messages::Echo>&, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Echo>&&, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&&) Line | Count | Source | 758 | 6 | { | 759 | | if constexpr (std::is_same_v<decltype(fn()), void>) { | 760 | | fn(); | 761 | | return ret(); | 762 | 6 | } else { | 763 | 6 | return fn(); | 764 | 6 | } | 765 | 6 | } |
auto mp::ReplaceVoid<kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>>(mp::ProxyServer<ipc::capnp::messages::Echo>&, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>)::'lambda'(), kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>>(mp::ProxyServer<ipc::capnp::messages::Echo>&, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>)::'lambda0'()>(mp::ProxyServer<ipc::capnp::messages::Echo>&&, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&&) Line | Count | Source | 758 | 6 | { | 759 | | if constexpr (std::is_same_v<decltype(fn()), void>) { | 760 | | fn(); | 761 | | return ret(); | 762 | 6 | } else { | 763 | 6 | return fn(); | 764 | 6 | } | 765 | 6 | } |
|
766 | | |
767 | | extern std::atomic<int> server_reqs; |
768 | | |
769 | | //! Entry point called by generated server code that looks like: |
770 | | //! |
771 | | //! kj::Promise<void> ProxyServer<InterfaceName>::methodName(CallContext call_context) { |
772 | | //! return serverInvoke(*this, call_context, MakeServerField<0, ...>(MakeServerField<1, ...>(Make<ServerRet, ...>(ServerCall())))); |
773 | | //! } |
774 | | //! |
775 | | //! Ellipses above are where generated Accessor<> type declarations are inserted. |
776 | | template <typename Server, typename CallContext, typename Fn> |
777 | | kj::Promise<void> serverInvoke(Server& server, CallContext& call_context, Fn fn) |
778 | 42 | { |
779 | 42 | auto params = call_context.getParams(); |
780 | 42 | using Params = decltype(params); |
781 | 42 | using Results = typename decltype(call_context.getResults())::Builds; |
782 | | |
783 | 42 | int req = ++server_reqs; |
784 | 42 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " |
785 | 42 | << TypeName<typename Params::Reads>(); |
786 | 42 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " |
787 | 42 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); |
788 | | |
789 | 42 | try { |
790 | 42 | using ServerContext = ServerInvokeContext<Server, CallContext>; |
791 | 42 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; |
792 | 42 | ServerContext server_context{server, call_context, req}; |
793 | | // ReplaceVoid is used to support fn.invoke implementations that |
794 | | // execute asynchronously and return promises, as well as |
795 | | // implementations that execute synchronously and return void. The |
796 | | // invoke function will be synchronous by default, but asynchronous if |
797 | | // an mp.Context argument is passed, and the mp.Context PassField |
798 | | // overload returns a promise executing the request in a worker thread |
799 | | // and waiting for it to complete. |
800 | 42 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); },kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>)::'lambda'()::operator()() const Line | Count | Source | 800 | 1 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Line | Count | Source | 800 | 1 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Line | Count | Source | 800 | 1 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Line | Count | Source | 800 | 1 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Line | Count | Source | 800 | 1 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Line | Count | Source | 800 | 1 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>)::'lambda'()::operator()() const Line | Count | Source | 800 | 10 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Line | Count | Source | 800 | 6 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, |
Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>&, mp::ServerCall)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Line | Count | Source | 800 | 4 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, |
Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>&, mp::ServerCall)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>)::'lambda'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&, mp::ServerCall)::'lambda'()::operator()() const kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>>(mp::ProxyServer<ipc::capnp::messages::Rpc>&, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>)::'lambda'()::operator()() const Line | Count | Source | 800 | 4 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>>(mp::ProxyServer<ipc::capnp::messages::Echo>&, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>)::'lambda'()::operator()() const Line | Count | Source | 800 | 6 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>>(mp::ProxyServer<ipc::capnp::messages::Echo>&, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>)::'lambda'()::operator()() const Line | Count | Source | 800 | 6 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, |
|
801 | 42 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); })kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>)::'lambda0'()::operator()() const Line | Count | Source | 801 | 1 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()::operator()() const Line | Count | Source | 801 | 1 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()::operator()() const Line | Count | Source | 801 | 1 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()::operator()() const Line | Count | Source | 801 | 1 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()::operator()() const Line | Count | Source | 801 | 1 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda0'()::operator()() const Line | Count | Source | 801 | 1 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>)::'lambda0'()::operator()() const Line | Count | Source | 801 | 10 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) |
Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>&, mp::ServerCall)::'lambda0'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>&, mp::ServerCall)::'lambda0'()::operator()() const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&, mp::ServerCall)::'lambda0'()::operator()() const |
802 | 42 | .then([&server, req](CallContext call_context) { |
803 | 42 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); |
804 | 42 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " |
805 | 42 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); |
806 | 42 | }); kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>)::'lambda'(capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>)::operator()(capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>) const Line | Count | Source | 802 | 1 | .then([&server, req](CallContext call_context) { | 803 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 1 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 1 | }); |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>)::operator()(capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>) const Line | Count | Source | 802 | 1 | .then([&server, req](CallContext call_context) { | 803 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 1 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 1 | }); |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>)::operator()(capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>) const Line | Count | Source | 802 | 1 | .then([&server, req](CallContext call_context) { | 803 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 1 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 1 | }); |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>)::operator()(capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>) const Line | Count | Source | 802 | 1 | .then([&server, req](CallContext call_context) { | 803 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 1 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 1 | }); |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>)::operator()(capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>) const Line | Count | Source | 802 | 1 | .then([&server, req](CallContext call_context) { | 803 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 1 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 1 | }); |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>)::operator()(capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>) const Line | Count | Source | 802 | 1 | .then([&server, req](CallContext call_context) { | 803 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 1 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 1 | }); |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>) const Line | Count | Source | 802 | 10 | .then([&server, req](CallContext call_context) { | 803 | 10 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 10 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 10 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 10 | }); |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>) const Line | Count | Source | 802 | 6 | .then([&server, req](CallContext call_context) { | 803 | 6 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 6 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 6 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 6 | }); |
Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>&, mp::ServerCall)::'lambda'(capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>)::operator()(capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>) const kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>) const Line | Count | Source | 802 | 4 | .then([&server, req](CallContext call_context) { | 803 | 4 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 4 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 4 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 4 | }); |
Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>&, mp::ServerCall)::'lambda'(capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>)::'lambda'(capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>)::operator()(capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>)::operator()(capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>)::operator()(capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>)::operator()(capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>)::operator()(capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>)::operator()(capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>)::operator()(capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>)::operator()(capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>)::operator()(capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>) const Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&, mp::ServerCall)::'lambda'(capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>)::operator()(capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>) const kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>>(mp::ProxyServer<ipc::capnp::messages::Rpc>&, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>) const Line | Count | Source | 802 | 4 | .then([&server, req](CallContext call_context) { | 803 | 4 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 4 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 4 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 4 | }); |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>>(mp::ProxyServer<ipc::capnp::messages::Echo>&, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>) const Line | Count | Source | 802 | 6 | .then([&server, req](CallContext call_context) { | 803 | 6 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 6 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 6 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 6 | }); |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>>(mp::ProxyServer<ipc::capnp::messages::Echo>&, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>)::'lambda'(capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>)::operator()(capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>) const Line | Count | Source | 802 | 6 | .then([&server, req](CallContext call_context) { | 803 | 6 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 6 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 6 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 6 | }); |
|
807 | 42 | } catch (const std::exception& e) { |
808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); |
809 | 0 | throw; |
810 | 0 | } catch (...) { |
811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; |
812 | 0 | throw; |
813 | 0 | } |
814 | 42 | } kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::AddParams, gen::FooInterface::AddResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::A, 1>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::B, 1>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 2>, mp::ServerCall>>>) Line | Count | Source | 778 | 1 | { | 779 | 1 | auto params = call_context.getParams(); | 780 | 1 | using Params = decltype(params); | 781 | 1 | using Results = typename decltype(call_context.getResults())::Builds; | 782 | | | 783 | 1 | int req = ++server_reqs; | 784 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " | 785 | 1 | << TypeName<typename Params::Reads>(); | 786 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " | 787 | 1 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); | 788 | | | 789 | 1 | try { | 790 | 1 | using ServerContext = ServerInvokeContext<Server, CallContext>; | 791 | 1 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; | 792 | 1 | ServerContext server_context{server, call_context, req}; | 793 | | // ReplaceVoid is used to support fn.invoke implementations that | 794 | | // execute asynchronously and return promises, as well as | 795 | | // implementations that execute synchronously and return void. The | 796 | | // invoke function will be synchronous by default, but asynchronous if | 797 | | // an mp.Context argument is passed, and the mp.Context PassField | 798 | | // overload returns a promise executing the request in a worker thread | 799 | | // and waiting for it to complete. | 800 | 1 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, | 801 | 1 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) | 802 | 1 | .then([&server, req](CallContext call_context) { | 803 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 1 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 1 | }); | 807 | 1 | } catch (const std::exception& e) { | 808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); | 809 | 0 | throw; | 810 | 0 | } catch (...) { | 811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; | 812 | 0 | throw; | 813 | 0 | } | 814 | 1 | } |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassOutPointParams, gen::FooInterface::PassOutPointResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>) Line | Count | Source | 778 | 1 | { | 779 | 1 | auto params = call_context.getParams(); | 780 | 1 | using Params = decltype(params); | 781 | 1 | using Results = typename decltype(call_context.getResults())::Builds; | 782 | | | 783 | 1 | int req = ++server_reqs; | 784 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " | 785 | 1 | << TypeName<typename Params::Reads>(); | 786 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " | 787 | 1 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); | 788 | | | 789 | 1 | try { | 790 | 1 | using ServerContext = ServerInvokeContext<Server, CallContext>; | 791 | 1 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; | 792 | 1 | ServerContext server_context{server, call_context, req}; | 793 | | // ReplaceVoid is used to support fn.invoke implementations that | 794 | | // execute asynchronously and return promises, as well as | 795 | | // implementations that execute synchronously and return void. The | 796 | | // invoke function will be synchronous by default, but asynchronous if | 797 | | // an mp.Context argument is passed, and the mp.Context PassField | 798 | | // overload returns a promise executing the request in a worker thread | 799 | | // and waiting for it to complete. | 800 | 1 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, | 801 | 1 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) | 802 | 1 | .then([&server, req](CallContext call_context) { | 803 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 1 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 1 | }); | 807 | 1 | } catch (const std::exception& e) { | 808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); | 809 | 0 | throw; | 810 | 0 | } catch (...) { | 811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; | 812 | 0 | throw; | 813 | 0 | } | 814 | 1 | } |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassUniValueParams, gen::FooInterface::PassUniValueResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>) Line | Count | Source | 778 | 1 | { | 779 | 1 | auto params = call_context.getParams(); | 780 | 1 | using Params = decltype(params); | 781 | 1 | using Results = typename decltype(call_context.getResults())::Builds; | 782 | | | 783 | 1 | int req = ++server_reqs; | 784 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " | 785 | 1 | << TypeName<typename Params::Reads>(); | 786 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " | 787 | 1 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); | 788 | | | 789 | 1 | try { | 790 | 1 | using ServerContext = ServerInvokeContext<Server, CallContext>; | 791 | 1 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; | 792 | 1 | ServerContext server_context{server, call_context, req}; | 793 | | // ReplaceVoid is used to support fn.invoke implementations that | 794 | | // execute asynchronously and return promises, as well as | 795 | | // implementations that execute synchronously and return void. The | 796 | | // invoke function will be synchronous by default, but asynchronous if | 797 | | // an mp.Context argument is passed, and the mp.Context PassField | 798 | | // overload returns a promise executing the request in a worker thread | 799 | | // and waiting for it to complete. | 800 | 1 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, | 801 | 1 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) | 802 | 1 | .then([&server, req](CallContext call_context) { | 803 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 1 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 1 | }); | 807 | 1 | } catch (const std::exception& e) { | 808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); | 809 | 0 | throw; | 810 | 0 | } catch (...) { | 811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; | 812 | 0 | throw; | 813 | 0 | } | 814 | 1 | } |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassTransactionParams, gen::FooInterface::PassTransactionResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>) Line | Count | Source | 778 | 1 | { | 779 | 1 | auto params = call_context.getParams(); | 780 | 1 | using Params = decltype(params); | 781 | 1 | using Results = typename decltype(call_context.getResults())::Builds; | 782 | | | 783 | 1 | int req = ++server_reqs; | 784 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " | 785 | 1 | << TypeName<typename Params::Reads>(); | 786 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " | 787 | 1 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); | 788 | | | 789 | 1 | try { | 790 | 1 | using ServerContext = ServerInvokeContext<Server, CallContext>; | 791 | 1 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; | 792 | 1 | ServerContext server_context{server, call_context, req}; | 793 | | // ReplaceVoid is used to support fn.invoke implementations that | 794 | | // execute asynchronously and return promises, as well as | 795 | | // implementations that execute synchronously and return void. The | 796 | | // invoke function will be synchronous by default, but asynchronous if | 797 | | // an mp.Context argument is passed, and the mp.Context PassField | 798 | | // overload returns a promise executing the request in a worker thread | 799 | | // and waiting for it to complete. | 800 | 1 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, | 801 | 1 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) | 802 | 1 | .then([&server, req](CallContext call_context) { | 803 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 1 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 1 | }); | 807 | 1 | } catch (const std::exception& e) { | 808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); | 809 | 0 | throw; | 810 | 0 | } catch (...) { | 811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; | 812 | 0 | throw; | 813 | 0 | } | 814 | 1 | } |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassVectorCharParams, gen::FooInterface::PassVectorCharResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>) Line | Count | Source | 778 | 1 | { | 779 | 1 | auto params = call_context.getParams(); | 780 | 1 | using Params = decltype(params); | 781 | 1 | using Results = typename decltype(call_context.getResults())::Builds; | 782 | | | 783 | 1 | int req = ++server_reqs; | 784 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " | 785 | 1 | << TypeName<typename Params::Reads>(); | 786 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " | 787 | 1 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); | 788 | | | 789 | 1 | try { | 790 | 1 | using ServerContext = ServerInvokeContext<Server, CallContext>; | 791 | 1 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; | 792 | 1 | ServerContext server_context{server, call_context, req}; | 793 | | // ReplaceVoid is used to support fn.invoke implementations that | 794 | | // execute asynchronously and return promises, as well as | 795 | | // implementations that execute synchronously and return void. The | 796 | | // invoke function will be synchronous by default, but asynchronous if | 797 | | // an mp.Context argument is passed, and the mp.Context PassField | 798 | | // overload returns a promise executing the request in a worker thread | 799 | | // and waiting for it to complete. | 800 | 1 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, | 801 | 1 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) | 802 | 1 | .then([&server, req](CallContext call_context) { | 803 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 1 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 1 | }); | 807 | 1 | } catch (const std::exception& e) { | 808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); | 809 | 0 | throw; | 810 | 0 | } catch (...) { | 811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; | 812 | 0 | throw; | 813 | 0 | } | 814 | 1 | } |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<gen::FooInterface>, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<gen::FooInterface>&, capnp::CallContext<gen::FooInterface::PassScriptParams, gen::FooInterface::PassScriptResults>&, mp::ServerField<1, mp::Accessor<mp::ipc_test_fields::Arg, 17>, mp::ServerRet<mp::Accessor<mp::ipc_test_fields::Result, 18>, mp::ServerCall>>) Line | Count | Source | 778 | 1 | { | 779 | 1 | auto params = call_context.getParams(); | 780 | 1 | using Params = decltype(params); | 781 | 1 | using Results = typename decltype(call_context.getResults())::Builds; | 782 | | | 783 | 1 | int req = ++server_reqs; | 784 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " | 785 | 1 | << TypeName<typename Params::Reads>(); | 786 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " | 787 | 1 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); | 788 | | | 789 | 1 | try { | 790 | 1 | using ServerContext = ServerInvokeContext<Server, CallContext>; | 791 | 1 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; | 792 | 1 | ServerContext server_context{server, call_context, req}; | 793 | | // ReplaceVoid is used to support fn.invoke implementations that | 794 | | // execute asynchronously and return promises, as well as | 795 | | // implementations that execute synchronously and return void. The | 796 | | // invoke function will be synchronous by default, but asynchronous if | 797 | | // an mp.Context argument is passed, and the mp.Context PassField | 798 | | // overload returns a promise executing the request in a worker thread | 799 | | // and waiting for it to complete. | 800 | 1 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, | 801 | 1 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) | 802 | 1 | .then([&server, req](CallContext call_context) { | 803 | 1 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 1 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 1 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 1 | }); | 807 | 1 | } catch (const std::exception& e) { | 808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); | 809 | 0 | throw; | 810 | 0 | } catch (...) { | 811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; | 812 | 0 | throw; | 813 | 0 | } | 814 | 1 | } |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::ConstructParams, ipc::capnp::messages::Init::ConstructResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::ThreadMap, 19>, mp::ServerCall>) Line | Count | Source | 778 | 10 | { | 779 | 10 | auto params = call_context.getParams(); | 780 | 10 | using Params = decltype(params); | 781 | 10 | using Results = typename decltype(call_context.getResults())::Builds; | 782 | | | 783 | 10 | int req = ++server_reqs; | 784 | 10 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " | 785 | 10 | << TypeName<typename Params::Reads>(); | 786 | 10 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " | 787 | 10 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); | 788 | | | 789 | 10 | try { | 790 | 10 | using ServerContext = ServerInvokeContext<Server, CallContext>; | 791 | 10 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; | 792 | 10 | ServerContext server_context{server, call_context, req}; | 793 | | // ReplaceVoid is used to support fn.invoke implementations that | 794 | | // execute asynchronously and return promises, as well as | 795 | | // implementations that execute synchronously and return void. The | 796 | | // invoke function will be synchronous by default, but asynchronous if | 797 | | // an mp.Context argument is passed, and the mp.Context PassField | 798 | | // overload returns a promise executing the request in a worker thread | 799 | | // and waiting for it to complete. | 800 | 10 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, | 801 | 10 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) | 802 | 10 | .then([&server, req](CallContext call_context) { | 803 | 10 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 10 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 10 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 10 | }); | 807 | 10 | } catch (const std::exception& e) { | 808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); | 809 | 0 | throw; | 810 | 0 | } catch (...) { | 811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; | 812 | 0 | throw; | 813 | 0 | } | 814 | 10 | } |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeEchoParams, ipc::capnp::messages::Init::MakeEchoResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>) Line | Count | Source | 778 | 6 | { | 779 | 6 | auto params = call_context.getParams(); | 780 | 6 | using Params = decltype(params); | 781 | 6 | using Results = typename decltype(call_context.getResults())::Builds; | 782 | | | 783 | 6 | int req = ++server_reqs; | 784 | 6 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " | 785 | 6 | << TypeName<typename Params::Reads>(); | 786 | 6 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " | 787 | 6 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); | 788 | | | 789 | 6 | try { | 790 | 6 | using ServerContext = ServerInvokeContext<Server, CallContext>; | 791 | 6 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; | 792 | 6 | ServerContext server_context{server, call_context, req}; | 793 | | // ReplaceVoid is used to support fn.invoke implementations that | 794 | | // execute asynchronously and return promises, as well as | 795 | | // implementations that execute synchronously and return void. The | 796 | | // invoke function will be synchronous by default, but asynchronous if | 797 | | // an mp.Context argument is passed, and the mp.Context PassField | 798 | | // overload returns a promise executing the request in a worker thread | 799 | | // and waiting for it to complete. | 800 | 6 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, | 801 | 6 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) | 802 | 6 | .then([&server, req](CallContext call_context) { | 803 | 6 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 6 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 6 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 6 | }); | 807 | 6 | } catch (const std::exception& e) { | 808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); | 809 | 0 | throw; | 810 | 0 | } catch (...) { | 811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; | 812 | 0 | throw; | 813 | 0 | } | 814 | 6 | } |
Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningOld2Params, ipc::capnp::messages::Init::MakeMiningOld2Results>&, mp::ServerCall) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeMiningParams, ipc::capnp::messages::Init::MakeMiningResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>) kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Init>, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Init>&, capnp::CallContext<ipc::capnp::messages::Init::MakeRpcParams, ipc::capnp::messages::Init::MakeRpcResults>&, mp::ServerField<0, mp::Accessor<mp::init_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::init_fields::Result, 18>, mp::ServerCall>>) Line | Count | Source | 778 | 4 | { | 779 | 4 | auto params = call_context.getParams(); | 780 | 4 | using Params = decltype(params); | 781 | 4 | using Results = typename decltype(call_context.getResults())::Builds; | 782 | | | 783 | 4 | int req = ++server_reqs; | 784 | 4 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " | 785 | 4 | << TypeName<typename Params::Reads>(); | 786 | 4 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " | 787 | 4 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); | 788 | | | 789 | 4 | try { | 790 | 4 | using ServerContext = ServerInvokeContext<Server, CallContext>; | 791 | 4 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; | 792 | 4 | ServerContext server_context{server, call_context, req}; | 793 | | // ReplaceVoid is used to support fn.invoke implementations that | 794 | | // execute asynchronously and return promises, as well as | 795 | | // implementations that execute synchronously and return void. The | 796 | | // invoke function will be synchronous by default, but asynchronous if | 797 | | // an mp.Context argument is passed, and the mp.Context PassField | 798 | | // overload returns a promise executing the request in a worker thread | 799 | | // and waiting for it to complete. | 800 | 4 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, | 801 | 4 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) | 802 | 4 | .then([&server, req](CallContext call_context) { | 803 | 4 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 4 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 4 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 4 | }); | 807 | 4 | } catch (const std::exception& e) { | 808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); | 809 | 0 | throw; | 810 | 0 | } catch (...) { | 811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; | 812 | 0 | throw; | 813 | 0 | } | 814 | 4 | } |
Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::IsTestChainParams, ipc::capnp::messages::Mining::IsTestChainResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::IsInitialBlockDownloadParams, ipc::capnp::messages::Mining::IsInitialBlockDownloadResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::GetTipParams, ipc::capnp::messages::Mining::GetTipResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 22>, mp::ServerCall>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::WaitTipChangedParams, ipc::capnp::messages::Mining::WaitTipChangedResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::CurrentTip, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timeout, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::CreateNewBlockParams, ipc::capnp::messages::Mining::CreateNewBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Cooldown, 1>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::CheckBlockParams, ipc::capnp::messages::Mining::CheckBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Block, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Reason, 18>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Debug, 18>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Mining>, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::Mining>&, capnp::CallContext<ipc::capnp::messages::Mining::InterruptParams, ipc::capnp::messages::Mining::InterruptResults>&, mp::ServerCall) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::DestroyParams, ipc::capnp::messages::BlockTemplate::DestroyResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerDestroy>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockHeaderParams, ipc::capnp::messages::BlockTemplate::GetBlockHeaderResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxFeesParams, ipc::capnp::messages::BlockTemplate::GetTxFeesResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetTxSigopsParams, ipc::capnp::messages::BlockTemplate::GetTxSigopsResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathParams, ipc::capnp::messages::BlockTemplate::GetCoinbaseMerklePathResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::SubmitSolutionParams, ipc::capnp::messages::BlockTemplate::SubmitSolutionResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Version, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Timestamp, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Nonce, 1>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Coinbase, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 2>, mp::ServerCall>>>>>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>&, mp::ServerField<0, mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>>) Unexecuted instantiation: kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>, mp::ServerCall>(mp::ProxyServer<ipc::capnp::messages::BlockTemplate>&, capnp::CallContext<ipc::capnp::messages::BlockTemplate::InterruptWaitParams, ipc::capnp::messages::BlockTemplate::InterruptWaitResults>&, mp::ServerCall) kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Rpc>, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>, mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>>(mp::ProxyServer<ipc::capnp::messages::Rpc>&, capnp::CallContext<ipc::capnp::messages::Rpc::ExecuteRpcParams, ipc::capnp::messages::Rpc::ExecuteRpcResults>&, mp::ServerField<0, mp::Accessor<mp::rpc_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Request, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::Uri, 17>, mp::ServerField<1, mp::Accessor<mp::rpc_fields::User, 17>, mp::ServerRet<mp::Accessor<mp::rpc_fields::Result, 18>, mp::ServerCall>>>>>) Line | Count | Source | 778 | 4 | { | 779 | 4 | auto params = call_context.getParams(); | 780 | 4 | using Params = decltype(params); | 781 | 4 | using Results = typename decltype(call_context.getResults())::Builds; | 782 | | | 783 | 4 | int req = ++server_reqs; | 784 | 4 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " | 785 | 4 | << TypeName<typename Params::Reads>(); | 786 | 4 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " | 787 | 4 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); | 788 | | | 789 | 4 | try { | 790 | 4 | using ServerContext = ServerInvokeContext<Server, CallContext>; | 791 | 4 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; | 792 | 4 | ServerContext server_context{server, call_context, req}; | 793 | | // ReplaceVoid is used to support fn.invoke implementations that | 794 | | // execute asynchronously and return promises, as well as | 795 | | // implementations that execute synchronously and return void. The | 796 | | // invoke function will be synchronous by default, but asynchronous if | 797 | | // an mp.Context argument is passed, and the mp.Context PassField | 798 | | // overload returns a promise executing the request in a worker thread | 799 | | // and waiting for it to complete. | 800 | 4 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, | 801 | 4 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) | 802 | 4 | .then([&server, req](CallContext call_context) { | 803 | 4 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 4 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 4 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 4 | }); | 807 | 4 | } catch (const std::exception& e) { | 808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); | 809 | 0 | throw; | 810 | 0 | } catch (...) { | 811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; | 812 | 0 | throw; | 813 | 0 | } | 814 | 4 | } |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>>(mp::ProxyServer<ipc::capnp::messages::Echo>&, capnp::CallContext<ipc::capnp::messages::Echo::DestroyParams, ipc::capnp::messages::Echo::DestroyResults>&, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerDestroy>) Line | Count | Source | 778 | 6 | { | 779 | 6 | auto params = call_context.getParams(); | 780 | 6 | using Params = decltype(params); | 781 | 6 | using Results = typename decltype(call_context.getResults())::Builds; | 782 | | | 783 | 6 | int req = ++server_reqs; | 784 | 6 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " | 785 | 6 | << TypeName<typename Params::Reads>(); | 786 | 6 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " | 787 | 6 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); | 788 | | | 789 | 6 | try { | 790 | 6 | using ServerContext = ServerInvokeContext<Server, CallContext>; | 791 | 6 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; | 792 | 6 | ServerContext server_context{server, call_context, req}; | 793 | | // ReplaceVoid is used to support fn.invoke implementations that | 794 | | // execute asynchronously and return promises, as well as | 795 | | // implementations that execute synchronously and return void. The | 796 | | // invoke function will be synchronous by default, but asynchronous if | 797 | | // an mp.Context argument is passed, and the mp.Context PassField | 798 | | // overload returns a promise executing the request in a worker thread | 799 | | // and waiting for it to complete. | 800 | 6 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, | 801 | 6 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) | 802 | 6 | .then([&server, req](CallContext call_context) { | 803 | 6 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 6 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 6 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 6 | }); | 807 | 6 | } catch (const std::exception& e) { | 808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); | 809 | 0 | throw; | 810 | 0 | } catch (...) { | 811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; | 812 | 0 | throw; | 813 | 0 | } | 814 | 6 | } |
kj::Promise<void> mp::serverInvoke<mp::ProxyServer<ipc::capnp::messages::Echo>, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>>(mp::ProxyServer<ipc::capnp::messages::Echo>&, capnp::CallContext<ipc::capnp::messages::Echo::EchoParams, ipc::capnp::messages::Echo::EchoResults>&, mp::ServerField<0, mp::Accessor<mp::echo_fields::Context, 17>, mp::ServerField<1, mp::Accessor<mp::echo_fields::Echo, 17>, mp::ServerRet<mp::Accessor<mp::echo_fields::Result, 18>, mp::ServerCall>>>) Line | Count | Source | 778 | 6 | { | 779 | 6 | auto params = call_context.getParams(); | 780 | 6 | using Params = decltype(params); | 781 | 6 | using Results = typename decltype(call_context.getResults())::Builds; | 782 | | | 783 | 6 | int req = ++server_reqs; | 784 | 6 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server recv request #" << req << " " | 785 | 6 | << TypeName<typename Params::Reads>(); | 786 | 6 | MP_LOG(*server.m_context.loop, Log::Trace) << "request data: " | 787 | 6 | << LogEscape(params.toString(), server.m_context.loop->m_log_opts.max_chars); | 788 | | | 789 | 6 | try { | 790 | 6 | using ServerContext = ServerInvokeContext<Server, CallContext>; | 791 | 6 | using ArgList = typename ProxyClientMethodTraits<typename Params::Reads>::Params; | 792 | 6 | ServerContext server_context{server, call_context, req}; | 793 | | // ReplaceVoid is used to support fn.invoke implementations that | 794 | | // execute asynchronously and return promises, as well as | 795 | | // implementations that execute synchronously and return void. The | 796 | | // invoke function will be synchronous by default, but asynchronous if | 797 | | // an mp.Context argument is passed, and the mp.Context PassField | 798 | | // overload returns a promise executing the request in a worker thread | 799 | | // and waiting for it to complete. | 800 | 6 | return ReplaceVoid([&]() { return fn.invoke(server_context, ArgList()); }, | 801 | 6 | [&]() { return kj::Promise<CallContext>(kj::mv(call_context)); }) | 802 | 6 | .then([&server, req](CallContext call_context) { | 803 | 6 | MP_LOG(*server.m_context.loop, Log::Debug) << "IPC server send response #" << req << " " << TypeName<Results>(); | 804 | 6 | MP_LOG(*server.m_context.loop, Log::Trace) << "response data: " | 805 | 6 | << LogEscape(call_context.getResults().toString(), server.m_context.loop->m_log_opts.max_chars); | 806 | 6 | }); | 807 | 6 | } catch (const std::exception& e) { | 808 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception: " << e.what(); | 809 | 0 | throw; | 810 | 0 | } catch (...) { | 811 | 0 | MP_LOG(*server.m_context.loop, Log::Error) << "IPC server unhandled exception"; | 812 | 0 | throw; | 813 | 0 | } | 814 | 6 | } |
|
815 | | |
816 | | //! Map to convert client interface pointers to ProxyContext struct references |
817 | | //! at runtime using typeids. |
818 | | struct ProxyTypeRegister { |
819 | | template<typename Interface> |
820 | 6.52k | ProxyTypeRegister(TypeList<Interface>) { |
821 | 6.52k | types().emplace(typeid(Interface), [](void* iface) -> ProxyContext& { return static_cast<typename mp::ProxyType<Interface>::Client&>(*static_cast<Interface*>(iface)).m_context; });Unexecuted instantiation: mp::ProxyTypeRegister::ProxyTypeRegister<FooImplementation>(mp::TypeList<FooImplementation>)::'lambda'(void*)::operator()(void*) const Unexecuted instantiation: mp::ProxyTypeRegister::ProxyTypeRegister<interfaces::Init>(mp::TypeList<interfaces::Init>)::'lambda'(void*)::operator()(void*) const Unexecuted instantiation: mp::ProxyTypeRegister::ProxyTypeRegister<interfaces::Echo>(mp::TypeList<interfaces::Echo>)::'lambda'(void*)::operator()(void*) const Unexecuted instantiation: mp::ProxyTypeRegister::ProxyTypeRegister<interfaces::Mining>(mp::TypeList<interfaces::Mining>)::'lambda'(void*)::operator()(void*) const Unexecuted instantiation: mp::ProxyTypeRegister::ProxyTypeRegister<interfaces::BlockTemplate>(mp::TypeList<interfaces::BlockTemplate>)::'lambda'(void*)::operator()(void*) const Unexecuted instantiation: mp::ProxyTypeRegister::ProxyTypeRegister<interfaces::Rpc>(mp::TypeList<interfaces::Rpc>)::'lambda'(void*)::operator()(void*) const |
822 | 6.52k | } mp::ProxyTypeRegister::ProxyTypeRegister<FooImplementation>(mp::TypeList<FooImplementation>) Line | Count | Source | 820 | 157 | ProxyTypeRegister(TypeList<Interface>) { | 821 | 157 | types().emplace(typeid(Interface), [](void* iface) -> ProxyContext& { return static_cast<typename mp::ProxyType<Interface>::Client&>(*static_cast<Interface*>(iface)).m_context; }); | 822 | 157 | } |
mp::ProxyTypeRegister::ProxyTypeRegister<interfaces::Init>(mp::TypeList<interfaces::Init>) Line | Count | Source | 820 | 1.27k | ProxyTypeRegister(TypeList<Interface>) { | 821 | 1.27k | types().emplace(typeid(Interface), [](void* iface) -> ProxyContext& { return static_cast<typename mp::ProxyType<Interface>::Client&>(*static_cast<Interface*>(iface)).m_context; }); | 822 | 1.27k | } |
mp::ProxyTypeRegister::ProxyTypeRegister<interfaces::Echo>(mp::TypeList<interfaces::Echo>) Line | Count | Source | 820 | 1.27k | ProxyTypeRegister(TypeList<Interface>) { | 821 | 1.27k | types().emplace(typeid(Interface), [](void* iface) -> ProxyContext& { return static_cast<typename mp::ProxyType<Interface>::Client&>(*static_cast<Interface*>(iface)).m_context; }); | 822 | 1.27k | } |
mp::ProxyTypeRegister::ProxyTypeRegister<interfaces::Mining>(mp::TypeList<interfaces::Mining>) Line | Count | Source | 820 | 1.27k | ProxyTypeRegister(TypeList<Interface>) { | 821 | 1.27k | types().emplace(typeid(Interface), [](void* iface) -> ProxyContext& { return static_cast<typename mp::ProxyType<Interface>::Client&>(*static_cast<Interface*>(iface)).m_context; }); | 822 | 1.27k | } |
mp::ProxyTypeRegister::ProxyTypeRegister<interfaces::BlockTemplate>(mp::TypeList<interfaces::BlockTemplate>) Line | Count | Source | 820 | 1.27k | ProxyTypeRegister(TypeList<Interface>) { | 821 | 1.27k | types().emplace(typeid(Interface), [](void* iface) -> ProxyContext& { return static_cast<typename mp::ProxyType<Interface>::Client&>(*static_cast<Interface*>(iface)).m_context; }); | 822 | 1.27k | } |
mp::ProxyTypeRegister::ProxyTypeRegister<interfaces::Rpc>(mp::TypeList<interfaces::Rpc>) Line | Count | Source | 820 | 1.27k | ProxyTypeRegister(TypeList<Interface>) { | 821 | 1.27k | types().emplace(typeid(Interface), [](void* iface) -> ProxyContext& { return static_cast<typename mp::ProxyType<Interface>::Client&>(*static_cast<Interface*>(iface)).m_context; }); | 822 | 1.27k | } |
|
823 | | using Types = std::map<std::type_index, ProxyContext&(*)(void*)>; |
824 | 6.52k | static Types& types() { static Types types; return types; } |
825 | | }; |
826 | | |
827 | | } // namespace mp |
828 | | |
829 | | #endif // MP_PROXY_TYPES_H |