5#ifndef MP_TEST_FOO_TYPES_H
6#define MP_TEST_FOO_TYPES_H
12#include <capnp/common.h>
14#include <mp/test/foo.capnp.h>
44template <
typename Output>
48 output.setV2(value.
v2);
51template <
typename Input,
typename ReadDest>
54 messages::FooCustom::Reader
custom = input.get();
63template <
typename Input>
68 return input.get().size() != 0;
73 test::messages::FooMessage::Builder&&
builder)
79 const test::messages::FooMessage::Reader&
reader,
87 test::messages::FooMutable::Builder&&
builder)
93 const test::messages::FooMutable::Reader&
reader,
100 const test::messages::FooMutable::Reader&
reader,
101 test::messages::FooMutable::Builder
builder,
void CustomBuildField(TypeList< FooCustom >, Priority< 1 >, InvokeContext &invoke_context, const FooCustom &value, Output &&output)
decltype(auto) CustomReadField(TypeList< FooCustom >, Priority< 1 >, InvokeContext &invoke_context, Input &&input, ReadDest &&read_dest)
Functions to serialize / deserialize common bitcoin types.
void CustomPassMessage(InvokeContext &invoke_context, const test::messages::FooMutable::Reader &reader, test::messages::FooMutable::Builder builder, std::function< void(test::FooMutable &)> &&fn)
void BuildField(TypeList< LocalTypes... >, Context &context, Output &&output, Values &&... values)
void CustomBuildMessage(InvokeContext &invoke_context, const test::FooMessage &src, test::messages::FooMessage::Builder &&builder)
void CustomReadMessage(InvokeContext &invoke_context, const test::messages::FooMessage::Reader &reader, test::FooMessage &dest)
decltype(auto) ReadField(TypeList< LocalTypes... >, InvokeContext &invoke_context, Input &&input, Args &&... args)
bool CustomHasField(TypeList< CTransaction >, InvokeContext &invoke_context, const Input &input)
Interpret empty Data fields as null CTransactionRef values.
Function parameter type for prioritizing overloaded function calls that would otherwise be ambiguous.
Generic utility functions used by capnp code.
constexpr auto Ticks(Dur2 d)
Helper to count the seconds of a duration/time_point.