57#define DECLARE_COMMON_SERIALISER(T) \
58 struct CommonProto::Serialise< T > \
60 static T read(const Store & store, CommonProto::ReadConn conn); \
61 [[nodiscard]] static WireFormatGenerator write(const Store & store, CommonProto::WriteConn conn, const T & str); \
65DECLARE_COMMON_SERIALISER(std::string);
76DECLARE_COMMON_SERIALISER(std::vector<T>);
78DECLARE_COMMON_SERIALISER(std::set<T>);
79template<
typename... Ts>
80DECLARE_COMMON_SERIALISER(std::tuple<Ts...>);
83template<
typename K,
typename V>
84DECLARE_COMMON_SERIALISER(std::map<K COMMA_ V>);
102DECLARE_COMMON_SERIALISER(std::optional<StorePath>);
104DECLARE_COMMON_SERIALISER(std::optional<ContentAddress>);
Definition store-api.hh:195
Definition common-protocol.hh:31
Definition common-protocol.hh:43
Definition common-protocol.hh:39
Definition common-protocol.hh:26
static WireFormatGenerator write(const Store &store, WriteConn conn, const T &t)
Definition common-protocol.hh:51
Definition content-address.hh:126
Definition realisation.hh:24
Definition realisation.hh:49
Definition serialise.hh:66