diff orange/serialization/archives/Archive.d @ 28:bffcbc8c392b experimental

Associative arrays are now treated as references.
author Jacob Carlborg <doob@me.com>
date Fri, 19 Nov 2010 11:55:04 +0100
parents 78e5fef4bbf2
children c422ff6477dd
line wrap: on
line diff
--- a/orange/serialization/archives/Archive.d	Fri Nov 19 11:14:55 2010 +0100
+++ b/orange/serialization/archives/Archive.d	Fri Nov 19 11:55:04 2010 +0100
@@ -47,7 +47,7 @@
 	size_t id = size_t.max;
 }
 
-interface IArchive
+interface Archive
 {
 	alias Serializer.Id Id;
 	
@@ -113,7 +113,7 @@
 	
 	Id unarchiveArray (string key, void delegate (size_t length) dg);
 	void unarchiveArray (Id id, void delegate (size_t length) dg);
-	void unarchiveAssociativeArray (string type, void delegate (size_t length) dg);
+	Id unarchiveAssociativeArray (string type, void delegate (size_t length) dg);
 	void unarchiveAssociativeArrayKey (string key, void delegate () dg);
 	void unarchiveAssociativeArrayValue (string key, void delegate () dg);
 	
@@ -173,7 +173,7 @@
 	void postProcessArray (Id id);
 }
 
-abstract class Archive (U) : IArchive
+abstract class Base (U) : Archive
 {
 	version (Tango) alias U[] Data;
 	else mixin ("alias immutable(U)[] Data;");