@@ -56,20 +56,19 @@ class SerializationTraits {};
56
56
57
57
// / TypeNameSequence is a utility for rendering sequences of types to a string
58
58
// / by rendering each type, separated by ", ".
59
- template <typename ChannelT, typename ... ArgTs>
60
- class TypeNameSequence {};
59
+ template <typename ChannelT, typename ... ArgTs> class TypeNameSequence {};
61
60
62
61
// / Render a TypeNameSequence of a single type to an ostream.
63
62
template <typename OStream, typename ChannelT, typename ArgT>
64
- OStream& operator <<(OStream &OS, const TypeNameSequence<ChannelT, ArgT> &V) {
63
+ OStream & operator <<(OStream &OS, const TypeNameSequence<ChannelT, ArgT> &V) {
65
64
OS << SerializationTraits<ChannelT, ArgT>::getName ();
66
65
return OS;
67
66
}
68
67
69
68
// / Render a TypeNameSequence of more than one type to an ostream.
70
- template <typename OStream, typename ChannelT, typename ArgT1,
71
- typename ArgT2, typename ... ArgTs>
72
- OStream&
69
+ template <typename OStream, typename ChannelT, typename ArgT1, typename ArgT2,
70
+ typename ... ArgTs>
71
+ OStream &
73
72
operator <<(OStream &OS,
74
73
const TypeNameSequence<ChannelT, ArgT1, ArgT2, ArgTs...> &V) {
75
74
OS << SerializationTraits<ChannelT, ArgT1>::getName () << " , "
@@ -86,8 +85,9 @@ Error serializeSeq(ChannelT &C, const T &Arg, const Ts &... Args) {
86
85
}
87
86
88
87
// / RPC channel serialization for an (empty) variadic list of arguments.
89
- template <typename ChannelT>
90
- Error serializeSeq (ChannelT &C) { return Error::success (); }
88
+ template <typename ChannelT> Error serializeSeq (ChannelT &C) {
89
+ return Error::success ();
90
+ }
91
91
92
92
// / RPC channel deserialization for a variadic list of arguments.
93
93
template <typename ChannelT, typename T, typename ... Ts>
@@ -98,20 +98,20 @@ Error deserializeSeq(ChannelT &C, T &Arg, Ts &... Args) {
98
98
}
99
99
100
100
// / RPC channel serialization for an (empty) variadic list of arguments.
101
- template <typename ChannelT>
102
- Error deserializeSeq (ChannelT &C) { return Error::success (); }
101
+ template <typename ChannelT> Error deserializeSeq (ChannelT &C) {
102
+ return Error::success ();
103
+ }
103
104
104
105
// / SerializationTraits default specialization for std::pair.
105
106
template <typename ChannelT, typename T1, typename T2>
106
107
class SerializationTraits <ChannelT, std::pair<T1, T2>> {
107
108
public:
108
- static const char * getName () {
109
+ static const char * getName () {
109
110
std::lock_guard<std::mutex> Lock (NameMutex);
110
111
if (Name.empty ())
111
112
Name = (std::ostringstream ()
112
- << " std::pair<"
113
- << TypeNameSequence<ChannelT, T1, T2>()
114
- << " >" ).str ();
113
+ << " std::pair<" << TypeNameSequence<ChannelT, T1, T2>() << " >" )
114
+ .str ();
115
115
116
116
return Name.data ();
117
117
}
@@ -123,6 +123,7 @@ class SerializationTraits<ChannelT, std::pair<T1, T2>> {
123
123
static Error deserialize (ChannelT &C, std::pair<T1, T2> &V) {
124
124
return deserializeSeq (C, V.first , V.second );
125
125
}
126
+
126
127
private:
127
128
static std::mutex NameMutex;
128
129
static std::string Name;
@@ -138,14 +139,12 @@ std::string SerializationTraits<ChannelT, std::pair<T1, T2>>::Name;
138
139
template <typename ChannelT, typename ... ArgTs>
139
140
class SerializationTraits <ChannelT, std::tuple<ArgTs...>> {
140
141
public:
141
-
142
- static const char * getName () {
142
+ static const char *getName () {
143
143
std::lock_guard<std::mutex> Lock (NameMutex);
144
144
if (Name.empty ())
145
145
Name = (std::ostringstream ()
146
- << " std::tuple<"
147
- << TypeNameSequence<ChannelT, ArgTs...>()
148
- << " >" ).str ();
146
+ << " std::tuple<" << TypeNameSequence<ChannelT, ArgTs...>() << " >" )
147
+ .str ();
149
148
150
149
return Name.data ();
151
150
}
@@ -161,7 +160,6 @@ class SerializationTraits<ChannelT, std::tuple<ArgTs...>> {
161
160
}
162
161
163
162
private:
164
-
165
163
// Serialization helper for std::tuple.
166
164
template <size_t ... Is>
167
165
static Error serializeTupleHelper (ChannelT &C, const std::tuple<ArgTs...> &V,
@@ -190,19 +188,18 @@ std::string SerializationTraits<ChannelT, std::tuple<ArgTs...>>::Name;
190
188
template <typename ChannelT, typename T>
191
189
class SerializationTraits <ChannelT, std::vector<T>> {
192
190
public:
193
-
194
- static const char * getName () {
191
+ static const char *getName () {
195
192
std::lock_guard<std::mutex> Lock (NameMutex);
196
193
if (Name.empty ())
197
- Name = (std::ostringstream ()
198
- << " std::vector< " << TypeNameSequence<ChannelT, T>()
199
- << " > " ) .str ();
194
+ Name = (std::ostringstream () << " std::vector< "
195
+ << TypeNameSequence<ChannelT, T>() << " > " )
196
+ .str ();
200
197
return Name.data ();
201
198
}
202
199
203
200
static Error serialize (ChannelT &C, const std::vector<T> &V) {
204
- if (auto Err = SerializationTraits<ChannelT, uint64_t >::
205
- serialize ( C, static_cast <uint64_t >(V.size ())))
201
+ if (auto Err = SerializationTraits<ChannelT, uint64_t >::serialize (
202
+ C, static_cast <uint64_t >(V.size ())))
206
203
return Err;
207
204
208
205
for (const auto &E : V)
@@ -214,8 +211,8 @@ class SerializationTraits<ChannelT, std::vector<T>> {
214
211
215
212
static Error deserialize (ChannelT &C, std::vector<T> &V) {
216
213
uint64_t Count = 0 ;
217
- if (auto Err = SerializationTraits<ChannelT, uint64_t >::
218
- deserialize (C, Count))
214
+ if (auto Err =
215
+ SerializationTraits<ChannelT, uint64_t >:: deserialize (C, Count))
219
216
return Err;
220
217
221
218
V.resize (Count);
0 commit comments