@@ -116,10 +116,11 @@ */ - (BOOL)isEqual: (id)obj; /** * Calculate a hash for the object. + * * Classes containing data (like strings, arrays, lists etc.) should reimplement * this! * * \return A 32 bit hash for the object */ @@ -209,5 +210,15 @@ * Deallocates the object and also frees all memory allocated via its memory * pool. */ - (void)dealloc; @end + +/** + * Objects implementing this protocol can be copied. + */ +@protocol OFCopying +/** + * \return A copy of the object + */ +- (id)copy; +@end