OpenCBDC Transaction Processor
Loading...
Searching...
No Matches
parsec/runtime_locking_shard/format.cpp
Go to the documentation of this file.
1// Copyright (c) 2021 MIT Digital Currency Initiative,
2// Federal Reserve Bank of Boston
3// Distributed under the MIT software license, see the accompanying
4// file COPYING or http://www.opensource.org/licenses/mit-license.php.
5
6#include "format.hpp"
7
9
10namespace cbdc {
11 auto
14 -> serializer& {
15 return ser << req.m_ticket_number << req.m_broker_id << req.m_key
16 << req.m_locktype << req.m_first_lock;
17 }
20 -> serializer& {
21 return deser >> req.m_ticket_number >> req.m_broker_id >> req.m_key
22 >> req.m_locktype >> req.m_first_lock;
23 }
24
25 auto
28 -> serializer& {
29 return ser << req.m_ticket_number;
30 }
33 -> serializer& {
34 return deser >> req.m_ticket_number;
35 }
36
37 auto
40 -> serializer& {
41 return ser << req.m_ticket_number << req.m_state_updates
42 << req.m_broker_id;
43 }
46 -> serializer& {
47 return deser >> req.m_ticket_number >> req.m_state_updates
48 >> req.m_broker_id;
49 }
50
51 auto
54 -> serializer& {
55 return ser << req.m_ticket_number;
56 }
59 -> serializer& {
60 return deser >> req.m_ticket_number;
61 }
62
63 auto
66 -> serializer& {
67 return ser << req.m_ticket_number;
68 }
71 -> serializer& {
72 return deser >> req.m_ticket_number;
73 }
74
76 serializer& ser,
78 -> serializer& {
79 return ser << req.m_broker_id;
80 }
81 auto
84 -> serializer& {
85 return deser >> req.m_broker_id;
86 }
87
90 -> serializer& {
91 return ser << err.m_error_code << err.m_wounded_details;
92 }
95 -> serializer& {
96 return deser >> err.m_error_code >> err.m_wounded_details;
97 }
98
101 -> serializer& {
102 return ser << det.m_wounding_ticket << det.m_wounding_key;
103 }
106 -> serializer& {
107 return deser >> det.m_wounding_ticket >> det.m_wounding_key;
108 }
109
111 serializer& ser,
113 req) -> serializer& {
114 return ser << req.m_ticket_number << req.m_broker_id
115 << req.m_state_update;
116 }
118 serializer& deser,
120 -> serializer& {
121 return deser >> req.m_ticket_number >> req.m_broker_id
122 >> req.m_state_update;
123 }
124
126 const parsec::runtime_locking_shard::rpc::
127 replicated_get_tickets_request& /* req */)
128 -> serializer& {
129 return ser;
130 }
132 parsec::runtime_locking_shard::rpc::
133 replicated_get_tickets_request& /* req */)
134 -> serializer& {
135 return deser;
136 }
137
139 const parsec::runtime_locking_shard::
140 replicated_shard_interface::ticket_type& t)
141 -> serializer& {
142 return ser << t.m_state << t.m_broker_id << t.m_state_update;
143 }
145 serializer& deser,
147 t) -> serializer& {
148 return deser >> t.m_state >> t.m_broker_id >> t.m_state_update;
149 }
150}
Interface for serializing objects into and out of raw bytes representations.
auto operator>>(serializer &deser, parsec::agent::rpc::request &req) -> serializer &
auto operator<<(serializer &ser, const parsec::agent::rpc::request &req) -> serializer &