comparison orange/serialization/Serializer.d @ 17:c4e7e64ffb67

Changed toData/fromData to take an instance of the serializer instead of the archive.
author Jacob Carlborg <doob@me.com>
date Sun, 08 Aug 2010 21:59:59 +0200
parents 091ff1b263db
children 3d42ea434d46
comparison
equal deleted inserted replaced
16:091ff1b263db 17:c4e7e64ffb67
147 { 147 {
148 auto wrapper = getSerializerWrapper!(T)(runtimeType); 148 auto wrapper = getSerializerWrapper!(T)(runtimeType);
149 wrapper(value, this, key); 149 wrapper(value, this, key);
150 } 150 }
151 151
152 else static if (isSerializable!(T, ArchiveType)) 152 else static if (isSerializable!(T, Serializer))
153 value.toData(this, key); 153 value.toData(this, key);
154 154
155 else 155 else
156 { 156 {
157 if (isBaseClass(value)) 157 if (isBaseClass(value))
175 wrapper(value, this, key); 175 wrapper(value, this, key);
176 } 176 }
177 177
178 else 178 else
179 { 179 {
180 static if (isSerializable!(T, ArchiveType)) 180 static if (isSerializable!(T, Serializer))
181 value.toData(this, key); 181 value.toData(this, key);
182 182
183 else 183 else
184 objectStructSerializeHelper(value); 184 objectStructSerializeHelper(value);
185 } 185 }
215 { 215 {
216 auto wrapper = getSerializerWrapper!(T)(key); 216 auto wrapper = getSerializerWrapper!(T)(key);
217 wrapper(value, this, key); 217 wrapper(value, this, key);
218 } 218 }
219 219
220 else static if (isSerializable!(T, ArchiveType)) 220 else static if (isSerializable!(T, Serializer))
221 value.toData(this, key); 221 value.toData(this, key);
222 222
223 else 223 else
224 { 224 {
225 static if (isVoid!(BaseTypeOfPointer!(T))) 225 static if (isVoid!(BaseTypeOfPointer!(T)))
314 { 314 {
315 auto wrapper = getDeserializerWrapper!(T)(runtimeType); 315 auto wrapper = getDeserializerWrapper!(T)(runtimeType);
316 wrapper(value, this, key); 316 wrapper(value, this, key);
317 } 317 }
318 318
319 else static if (isSerializable!(T, ArchiveType)) 319 else static if (isSerializable!(T, Serializer))
320 value.fromData(this, key); 320 value.fromData(this, key);
321 321
322 else 322 else
323 { 323 {
324 if (isBaseClass(value)) 324 if (isBaseClass(value))
346 wrapper(value, this, key); 346 wrapper(value, this, key);
347 } 347 }
348 348
349 else 349 else
350 { 350 {
351 static if (isSerializable!(T, ArchiveType)) 351 static if (isSerializable!(T, Serializer))
352 value.fromData(this, key); 352 value.fromData(this, key);
353 353
354 else 354 else
355 objectStructDeserializeHelper(value); 355 objectStructDeserializeHelper(value);
356 } 356 }
392 { 392 {
393 auto wrapper = getDeserializerWrapper!(T)(key); 393 auto wrapper = getDeserializerWrapper!(T)(key);
394 wrapper(value, this, key); 394 wrapper(value, this, key);
395 } 395 }
396 396
397 else static if (isSerializable!(T, ArchiveType)) 397 else static if (isSerializable!(T, Serializer))
398 value.fromData(this, key); 398 value.fromData(this, key);
399 399
400 else 400 else
401 { 401 {
402 static if (isVoid!(BaseTypeOfPointer!(T))) 402 static if (isVoid!(BaseTypeOfPointer!(T)))