10
10
#include < string>
11
11
#include < type_traits>
12
12
13
- #include " Array2D.h"
14
13
#include " Flags.h"
15
14
#include " Serialization.h"
16
15
@@ -116,33 +115,20 @@ namespace gf {
116
115
}
117
116
118
117
template <typename T, typename E = std::enable_if_t <std::is_enum_v<T>, T>>
119
- inline Serializer& operator |(Serializer& ar, T data)
118
+ Serializer& operator |(Serializer& ar, T data)
120
119
{
121
120
using U = std::underlying_type_t <T>;
122
121
return ar | static_cast <U>(data);
123
122
}
124
123
125
124
template <typename E>
126
- inline Serializer& operator |(Serializer& ar, Flags<E> data)
125
+ Serializer& operator |(Serializer& ar, Flags<E> data)
127
126
{
128
127
return ar | data.m_data ;
129
128
}
130
129
131
- template <typename T>
132
- inline Serializer& operator |(Serializer& ar, const Array2D<T>& array)
133
- {
134
- const Vec2I size = array.size ();
135
- ar | size.w | size.h ;
136
-
137
- for (auto & item : array) {
138
- ar | item;
139
- }
140
-
141
- return ar;
142
- }
143
-
144
130
template <typename K, typename V>
145
- inline Serializer& operator |(Serializer& ar, const std::pair<K, V>& pair)
131
+ Serializer& operator |(Serializer& ar, const std::pair<K, V>& pair)
146
132
{
147
133
return ar | pair.first | pair.second ;
148
134
}
@@ -257,7 +243,7 @@ namespace gf {
257
243
}
258
244
259
245
template <typename T, typename E = std::enable_if_t <std::is_enum_v<T>, T>>
260
- inline Deserializer& operator |(Deserializer& ar, T& data)
246
+ Deserializer& operator |(Deserializer& ar, T& data)
261
247
{
262
248
using U = std::underlying_type_t <T>;
263
249
U underlying;
@@ -267,29 +253,13 @@ namespace gf {
267
253
}
268
254
269
255
template <typename E>
270
- inline Deserializer& operator |(Deserializer& ar, Flags<E>& data)
256
+ Deserializer& operator |(Deserializer& ar, Flags<E>& data)
271
257
{
272
258
return ar | data.m_data ;
273
259
}
274
260
275
- template <typename T>
276
- inline Deserializer& operator |(Deserializer& ar, Array2D<T>& array)
277
- {
278
- Vec2I size (0 , 0 );
279
- ar | size.w | size.h ;
280
-
281
- Array2D<T> tmp (size);
282
-
283
- for (auto & item : tmp) {
284
- ar | item;
285
- }
286
-
287
- array = std::move (tmp);
288
- return ar;
289
- }
290
-
291
261
template <typename K, typename V>
292
- inline Deserializer& operator |(Deserializer& ar, std::pair<K, V>& pair)
262
+ Deserializer& operator |(Deserializer& ar, std::pair<K, V>& pair)
293
263
{
294
264
return ar | pair.first | pair.second ;
295
265
}
0 commit comments