aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/basetypes/MCSet.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/basetypes/MCSet.cc')
-rw-r--r--src/core/basetypes/MCSet.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/core/basetypes/MCSet.cc b/src/core/basetypes/MCSet.cc
index 393873b0..ca66a10f 100644
--- a/src/core/basetypes/MCSet.cc
+++ b/src/core/basetypes/MCSet.cc
@@ -100,3 +100,16 @@ void Set::addObjectsFromArray(Array * objects)
addObject(objects->objectAtIndex(i));
}
}
+
+HashMap * Set::serializable()
+{
+ HashMap * result = Object::serializable();
+ result->setObjectForKey(MCSTR("items"), allObjects()->serializable());
+ return result;
+}
+
+void Set::importSerializable(HashMap * serializable)
+{
+ Array * array = (Array *) Object::objectWithSerializable((HashMap *) serializable->objectForKey(MCSTR("items")));
+ addObjectsFromArray(array);
+}