/tmp/bitcoin/src/ipc/libmultiprocess/include/mp/type-struct.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_TYPE_STRUCT_H |
6 | | #define MP_PROXY_TYPE_STRUCT_H |
7 | | |
8 | | #include <mp/util.h> |
9 | | |
10 | | namespace mp { |
11 | | template <size_t index, typename LocalType, typename Value, typename Output> |
12 | | void BuildOne(TypeList<LocalType> param, |
13 | | InvokeContext& invoke_context, |
14 | | Output&& output, |
15 | | Value&& value, |
16 | | typename std::enable_if < index<ProxyType<LocalType>::fields>::type * enable = nullptr) |
17 | 0 | { |
18 | 0 | using Index = std::integral_constant<size_t, index>; |
19 | 0 | using Struct = typename ProxyType<LocalType>::Struct; |
20 | 0 | using Accessor = typename std::tuple_element<index, typename ProxyStruct<Struct>::Accessors>::type; |
21 | 0 | auto&& field_output = Make<StructField, Accessor>(output); |
22 | 0 | auto&& field_value = value.*ProxyType<LocalType>::get(Index()); |
23 | 0 | BuildField(TypeList<Decay<decltype(field_value)>>(), invoke_context, field_output, field_value); |
24 | 0 | BuildOne<index + 1>(param, invoke_context, output, value); |
25 | 0 | } Unexecuted instantiation: void mp::BuildOne<0ul, node::BlockCreateOptions, node::BlockCreateOptions const&, ipc::capnp::messages::BlockCreateOptions::Builder>(mp::TypeList<node::BlockCreateOptions>, mp::InvokeContext&, ipc::capnp::messages::BlockCreateOptions::Builder&&, node::BlockCreateOptions const&, std::enable_if<0ul < ProxyType<node::BlockCreateOptions>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<1ul, node::BlockCreateOptions, node::BlockCreateOptions const&, ipc::capnp::messages::BlockCreateOptions::Builder&>(mp::TypeList<node::BlockCreateOptions>, mp::InvokeContext&, ipc::capnp::messages::BlockCreateOptions::Builder&, node::BlockCreateOptions const&, std::enable_if<1ul < ProxyType<node::BlockCreateOptions>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<2ul, node::BlockCreateOptions, node::BlockCreateOptions const&, ipc::capnp::messages::BlockCreateOptions::Builder&>(mp::TypeList<node::BlockCreateOptions>, mp::InvokeContext&, ipc::capnp::messages::BlockCreateOptions::Builder&, node::BlockCreateOptions const&, std::enable_if<2ul < ProxyType<node::BlockCreateOptions>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<0ul, node::BlockCheckOptions, node::BlockCheckOptions const&, ipc::capnp::messages::BlockCheckOptions::Builder>(mp::TypeList<node::BlockCheckOptions>, mp::InvokeContext&, ipc::capnp::messages::BlockCheckOptions::Builder&&, node::BlockCheckOptions const&, std::enable_if<0ul < ProxyType<node::BlockCheckOptions>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<1ul, node::BlockCheckOptions, node::BlockCheckOptions const&, ipc::capnp::messages::BlockCheckOptions::Builder&>(mp::TypeList<node::BlockCheckOptions>, mp::InvokeContext&, ipc::capnp::messages::BlockCheckOptions::Builder&, node::BlockCheckOptions const&, std::enable_if<1ul < ProxyType<node::BlockCheckOptions>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<0ul, node::BlockWaitOptions, node::BlockWaitOptions&, ipc::capnp::messages::BlockWaitOptions::Builder>(mp::TypeList<node::BlockWaitOptions>, mp::InvokeContext&, ipc::capnp::messages::BlockWaitOptions::Builder&&, node::BlockWaitOptions&, std::enable_if<0ul < ProxyType<node::BlockWaitOptions>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<1ul, node::BlockWaitOptions, node::BlockWaitOptions&, ipc::capnp::messages::BlockWaitOptions::Builder&>(mp::TypeList<node::BlockWaitOptions>, mp::InvokeContext&, ipc::capnp::messages::BlockWaitOptions::Builder&, node::BlockWaitOptions&, std::enable_if<1ul < ProxyType<node::BlockWaitOptions>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<0ul, interfaces::BlockRef, interfaces::BlockRef&, ipc::capnp::messages::BlockRef::Builder>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, ipc::capnp::messages::BlockRef::Builder&&, interfaces::BlockRef&, std::enable_if<0ul < ProxyType<interfaces::BlockRef>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<1ul, interfaces::BlockRef, interfaces::BlockRef&, ipc::capnp::messages::BlockRef::Builder&>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, ipc::capnp::messages::BlockRef::Builder&, interfaces::BlockRef&, std::enable_if<1ul < ProxyType<interfaces::BlockRef>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<0ul, node::CoinbaseTx, node::CoinbaseTx&, ipc::capnp::messages::CoinbaseTx::Builder>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, ipc::capnp::messages::CoinbaseTx::Builder&&, node::CoinbaseTx&, std::enable_if<0ul < ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<1ul, node::CoinbaseTx, node::CoinbaseTx&, ipc::capnp::messages::CoinbaseTx::Builder&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, ipc::capnp::messages::CoinbaseTx::Builder&, node::CoinbaseTx&, std::enable_if<1ul < ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<2ul, node::CoinbaseTx, node::CoinbaseTx&, ipc::capnp::messages::CoinbaseTx::Builder&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, ipc::capnp::messages::CoinbaseTx::Builder&, node::CoinbaseTx&, std::enable_if<2ul < ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<3ul, node::CoinbaseTx, node::CoinbaseTx&, ipc::capnp::messages::CoinbaseTx::Builder&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, ipc::capnp::messages::CoinbaseTx::Builder&, node::CoinbaseTx&, std::enable_if<3ul < ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<4ul, node::CoinbaseTx, node::CoinbaseTx&, ipc::capnp::messages::CoinbaseTx::Builder&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, ipc::capnp::messages::CoinbaseTx::Builder&, node::CoinbaseTx&, std::enable_if<4ul < ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<5ul, node::CoinbaseTx, node::CoinbaseTx&, ipc::capnp::messages::CoinbaseTx::Builder&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, ipc::capnp::messages::CoinbaseTx::Builder&, node::CoinbaseTx&, std::enable_if<5ul < ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<6ul, node::CoinbaseTx, node::CoinbaseTx&, ipc::capnp::messages::CoinbaseTx::Builder&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, ipc::capnp::messages::CoinbaseTx::Builder&, node::CoinbaseTx&, std::enable_if<6ul < ProxyType<node::CoinbaseTx>::fields, void>::type*) |
26 | | |
27 | | template <size_t index, typename LocalType, typename Value, typename Output> |
28 | | void BuildOne(TypeList<LocalType> param, |
29 | | InvokeContext& invoke_context, |
30 | | Output&& output, |
31 | | Value&& value, |
32 | | typename std::enable_if<index == ProxyType<LocalType>::fields>::type* enable = nullptr) |
33 | 0 | { |
34 | 0 | } Unexecuted instantiation: void mp::BuildOne<3ul, node::BlockCreateOptions, node::BlockCreateOptions const&, ipc::capnp::messages::BlockCreateOptions::Builder&>(mp::TypeList<node::BlockCreateOptions>, mp::InvokeContext&, ipc::capnp::messages::BlockCreateOptions::Builder&, node::BlockCreateOptions const&, std::enable_if<3ul == ProxyType<node::BlockCreateOptions>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<2ul, node::BlockCheckOptions, node::BlockCheckOptions const&, ipc::capnp::messages::BlockCheckOptions::Builder&>(mp::TypeList<node::BlockCheckOptions>, mp::InvokeContext&, ipc::capnp::messages::BlockCheckOptions::Builder&, node::BlockCheckOptions const&, std::enable_if<2ul == ProxyType<node::BlockCheckOptions>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<2ul, node::BlockWaitOptions, node::BlockWaitOptions&, ipc::capnp::messages::BlockWaitOptions::Builder&>(mp::TypeList<node::BlockWaitOptions>, mp::InvokeContext&, ipc::capnp::messages::BlockWaitOptions::Builder&, node::BlockWaitOptions&, std::enable_if<2ul == ProxyType<node::BlockWaitOptions>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<2ul, interfaces::BlockRef, interfaces::BlockRef&, ipc::capnp::messages::BlockRef::Builder&>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, ipc::capnp::messages::BlockRef::Builder&, interfaces::BlockRef&, std::enable_if<2ul == ProxyType<interfaces::BlockRef>::fields, void>::type*) Unexecuted instantiation: void mp::BuildOne<7ul, node::CoinbaseTx, node::CoinbaseTx&, ipc::capnp::messages::CoinbaseTx::Builder&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, ipc::capnp::messages::CoinbaseTx::Builder&, node::CoinbaseTx&, std::enable_if<7ul == ProxyType<node::CoinbaseTx>::fields, void>::type*) |
35 | | |
36 | | template <typename LocalType, typename Value, typename Output> |
37 | | void CustomBuildField(TypeList<LocalType> local_type, |
38 | | Priority<1>, |
39 | | InvokeContext& invoke_context, |
40 | | Value&& value, |
41 | | Output&& output, |
42 | | typename ProxyType<LocalType>::Struct* enable = nullptr) |
43 | 0 | { |
44 | 0 | BuildOne<0>(local_type, invoke_context, output.init(), value); |
45 | 0 | } Unexecuted instantiation: void mp::CustomBuildField<node::BlockCreateOptions, 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::Priority<1>, 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::ProxyType<node::BlockCreateOptions>::Struct*) Unexecuted instantiation: void mp::CustomBuildField<node::BlockCheckOptions, 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::Priority<1>, 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::ProxyType<node::BlockCheckOptions>::Struct*) Unexecuted instantiation: void mp::CustomBuildField<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<1>, mp::InvokeContext&, node::BlockWaitOptions&&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, capnp::Request<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&&, mp::ProxyType<node::BlockWaitOptions>::Struct*) Unexecuted instantiation: void mp::CustomBuildField<interfaces::BlockRef, interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, ipc::capnp::messages::Mining::GetTipResults::Builder>&>(mp::TypeList<interfaces::BlockRef>, mp::Priority<1>, mp::InvokeContext&, interfaces::BlockRef&&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, ipc::capnp::messages::Mining::GetTipResults::Builder>&, mp::ProxyType<interfaces::BlockRef>::Struct*) Unexecuted instantiation: void mp::CustomBuildField<interfaces::BlockRef, interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>&>(mp::TypeList<interfaces::BlockRef>, mp::Priority<1>, mp::InvokeContext&, interfaces::BlockRef&&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::Mining::WaitTipChangedResults::Builder>&, mp::ProxyType<interfaces::BlockRef>::Struct*) Unexecuted instantiation: void mp::CustomBuildField<node::CoinbaseTx, node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults::Builder>&>(mp::TypeList<node::CoinbaseTx>, mp::Priority<1>, mp::InvokeContext&, node::CoinbaseTx&&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults::Builder>&, mp::ProxyType<node::CoinbaseTx>::Struct*) |
46 | | |
47 | | template <size_t index, typename LocalType, typename Input, typename Value> |
48 | | void ReadOne(TypeList<LocalType> param, |
49 | | InvokeContext& invoke_context, |
50 | | Input&& input, |
51 | | Value&& value, |
52 | | typename std::enable_if<index != ProxyType<LocalType>::fields>::type* enable = nullptr) |
53 | 0 | { |
54 | 0 | using Index = std::integral_constant<size_t, index>; |
55 | 0 | using Struct = typename ProxyType<LocalType>::Struct; |
56 | 0 | using Accessor = typename std::tuple_element<index, typename ProxyStruct<Struct>::Accessors>::type; |
57 | 0 | const auto& struc = input.get(); |
58 | 0 | auto&& field_value = value.*ProxyType<LocalType>::get(Index()); |
59 | 0 | ReadField(TypeList<RemoveCvRef<decltype(field_value)>>(), invoke_context, Make<StructField, Accessor>(struc), |
60 | 0 | ReadDestUpdate(field_value)); |
61 | 0 | ReadOne<index + 1>(param, invoke_context, input, value); |
62 | 0 | } Unexecuted instantiation: void mp::ReadOne<0ul, interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&, interfaces::BlockRef&>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&, interfaces::BlockRef&, std::enable_if<0ul != ProxyType<interfaces::BlockRef>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<1ul, interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&, interfaces::BlockRef&>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&, interfaces::BlockRef&, std::enable_if<1ul != ProxyType<interfaces::BlockRef>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<0ul, interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&, interfaces::BlockRef&>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&, interfaces::BlockRef&, std::enable_if<0ul != ProxyType<interfaces::BlockRef>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<1ul, interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&, interfaces::BlockRef&>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&, interfaces::BlockRef&, std::enable_if<1ul != ProxyType<interfaces::BlockRef>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<0ul, node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&, std::enable_if<0ul != ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<1ul, node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&, std::enable_if<1ul != ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<2ul, node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&, std::enable_if<2ul != ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<3ul, node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&, std::enable_if<3ul != ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<4ul, node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&, std::enable_if<4ul != ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<5ul, node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&, std::enable_if<5ul != ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<6ul, node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&, std::enable_if<6ul != ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<0ul, node::BlockCreateOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>&, node::BlockCreateOptions&>(mp::TypeList<node::BlockCreateOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>&, node::BlockCreateOptions&, std::enable_if<0ul != ProxyType<node::BlockCreateOptions>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<1ul, node::BlockCreateOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>&, node::BlockCreateOptions&>(mp::TypeList<node::BlockCreateOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>&, node::BlockCreateOptions&, std::enable_if<1ul != ProxyType<node::BlockCreateOptions>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<2ul, node::BlockCreateOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>&, node::BlockCreateOptions&>(mp::TypeList<node::BlockCreateOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>&, node::BlockCreateOptions&, std::enable_if<2ul != ProxyType<node::BlockCreateOptions>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<0ul, node::BlockCheckOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>&, node::BlockCheckOptions&>(mp::TypeList<node::BlockCheckOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>&, node::BlockCheckOptions&, std::enable_if<0ul != ProxyType<node::BlockCheckOptions>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<1ul, node::BlockCheckOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>&, node::BlockCheckOptions&>(mp::TypeList<node::BlockCheckOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>&, node::BlockCheckOptions&, std::enable_if<1ul != ProxyType<node::BlockCheckOptions>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<0ul, node::BlockWaitOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const>&, node::BlockWaitOptions&>(mp::TypeList<node::BlockWaitOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const>&, node::BlockWaitOptions&, std::enable_if<0ul != ProxyType<node::BlockWaitOptions>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<1ul, node::BlockWaitOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const>&, node::BlockWaitOptions&>(mp::TypeList<node::BlockWaitOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const>&, node::BlockWaitOptions&, std::enable_if<1ul != ProxyType<node::BlockWaitOptions>::fields, void>::type*) |
63 | | |
64 | | template <size_t index, typename LocalType, typename Input, typename Value> |
65 | | void ReadOne(TypeList<LocalType> param, |
66 | | InvokeContext& invoke_context, |
67 | | Input& input, |
68 | | Value& value, |
69 | | typename std::enable_if<index == ProxyType<LocalType>::fields>::type* enable = nullptr) |
70 | 0 | { |
71 | 0 | } Unexecuted instantiation: void mp::ReadOne<2ul, interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>, interfaces::BlockRef>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 22>, capnp::Response<ipc::capnp::messages::Mining::GetTipResults>>&, interfaces::BlockRef&, std::enable_if<2ul == ProxyType<interfaces::BlockRef>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<2ul, interfaces::BlockRef, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>, interfaces::BlockRef>(mp::TypeList<interfaces::BlockRef>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::Mining::WaitTipChangedResults>>&, interfaces::BlockRef&, std::enable_if<2ul == ProxyType<interfaces::BlockRef>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<7ul, node::CoinbaseTx, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>, node::CoinbaseTx>(mp::TypeList<node::CoinbaseTx>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, capnp::Response<ipc::capnp::messages::BlockTemplate::GetCoinbaseTxResults>>&, node::CoinbaseTx&, std::enable_if<7ul == ProxyType<node::CoinbaseTx>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<3ul, node::BlockCreateOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>, node::BlockCreateOptions>(mp::TypeList<node::BlockCreateOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CreateNewBlockParams::Reader const>&, node::BlockCreateOptions&, std::enable_if<3ul == ProxyType<node::BlockCreateOptions>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<2ul, node::BlockCheckOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>, node::BlockCheckOptions>(mp::TypeList<node::BlockCheckOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::Mining::CheckBlockParams::Reader const>&, node::BlockCheckOptions&, std::enable_if<2ul == ProxyType<node::BlockCheckOptions>::fields, void>::type*) Unexecuted instantiation: void mp::ReadOne<2ul, node::BlockWaitOptions, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const>, node::BlockWaitOptions>(mp::TypeList<node::BlockWaitOptions>, mp::InvokeContext&, mp::StructField<mp::Accessor<mp::mining_fields::Options, 17>, ipc::capnp::messages::BlockTemplate::WaitNextParams::Reader const>&, node::BlockWaitOptions&, std::enable_if<2ul == ProxyType<node::BlockWaitOptions>::fields, void>::type*) |
72 | | |
73 | | template <typename LocalType, typename Input, typename ReadDest> |
74 | | decltype(auto) CustomReadField(TypeList<LocalType> param, |
75 | | Priority<1>, |
76 | | InvokeContext& invoke_context, |
77 | | Input&& input, |
78 | | ReadDest&& read_dest, |
79 | | typename ProxyType<LocalType>::Struct* enable = nullptr) |
80 | 0 | { |
81 | 0 | return read_dest.update([&](auto& value) { ReadOne<0>(param, invoke_context, input, value); });Unexecuted instantiation: 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<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&)::operator()<interfaces::BlockRef>(interfaces::BlockRef&) const Unexecuted instantiation: auto 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&)::operator()<interfaces::BlockRef>(interfaces::BlockRef&) const Unexecuted instantiation: 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<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&)::operator()<interfaces::BlockRef>(interfaces::BlockRef&) const Unexecuted instantiation: auto 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&)::operator()<interfaces::BlockRef>(interfaces::BlockRef&) const Unexecuted instantiation: auto 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&)::operator()<node::CoinbaseTx>(node::CoinbaseTx&) const Unexecuted instantiation: auto 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&)::operator()<node::BlockCreateOptions>(node::BlockCreateOptions&) const Unexecuted instantiation: auto 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&)::operator()<node::BlockCheckOptions>(node::BlockCheckOptions&) const Unexecuted instantiation: auto 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&)::operator()<node::BlockWaitOptions>(node::BlockWaitOptions&) const |
82 | 0 | } Unexecuted instantiation: 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*) Unexecuted instantiation: 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*) Unexecuted instantiation: 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*) Unexecuted instantiation: 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*) Unexecuted instantiation: 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*) Unexecuted instantiation: 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*) Unexecuted instantiation: 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*) Unexecuted instantiation: 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*) |
83 | | } // namespace mp |
84 | | |
85 | | #endif // MP_PROXY_TYPE_STRUCT_H |