You don’t tell use what is your problem. You can perfectly encode any structure using Keyed archivers (whether there is cycles and backlinks).
> Le 5 févr. 2016 à 14:13, Dave <d...@looktowindward.com> a écrit : > > Hi, > > I’m having problems with Back Links when Archiving/Unarchiving an Object. I > found the text below at: > > https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Archiving/Articles/archives.html > > > Root Object > > An object graph is not necessarily a simple tree structure. Two objects can > contain references to each other, for example, creating a cycle. If a coder > follows every link and blindly encodes each object it encounters, this > circular reference will generate an infinite loop in the coder. Also, a > single object can be referenced by several other objects. The coder must be > able to recognize and handle multiple and circular references so that it does > not encode more than one copy of each object, but still regenerate all the > references when decoding. > To solve this problem, NSCoder introduces the concept of a root object. The > root object is the starting point of an object graph. To encode an object > graph, you invoke the NSCoder method encodeRootObject:, passing in the first > object to encode. Every object encoded within the context of this invocation > is tracked. If the coder is asked to encode an object more than once, the > coder encodes a reference to the first encoding instead of encoding the > object again. > > NSCoder does not implement support for root objects; NSCoder’s implementation > of encodeRootObject: simply encodes the object by invoking encodeObject:. It > is the responsibility of its concrete subclasses to keep track of multiple > references to objects, thus preserving the structure of any object graphs. > > The last paragraph seems pertinent to my problem, so do I need to do > something special for “weak”, back links in order to “keep track of multiple > references to objects”? If so could some please tell me how to do this? I’m > really struggling to get something out the door and was advised to use the > Keyed Archiver/Unarchiver as it would be the simplest implementation…… > > Is this any other documentation or sample code available? There are plenty of > trivial examples out there, no nothing I can find that works for weak back > links, although according to all the Apple Blurb I can find, it is possible, > they just don’t tell you how to do it that I can find! > > Thanks in Advance for Any Help > All the Best > Dave > > _______________________________________________ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/mailing%40xenonium.com > > This email sent to mail...@xenonium.com _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com