Thanks for the response.
The code wasn't working as I expected because I'd failed to initialise
the setOfValuesForCharacteristicTypes NSMutableSet which I was using
check the hashFromCharacteristicTypes before sending the hash to the
dictionary.
I'd presumed it was a problem with set object thinking they weren't
equal. However, Cocoa's clever enough to know when two sets are really
identical; i.e. :
NSSet *Set1 = [NSSet setWithObjects:O1, O2, nil];
NSSet *Set2 = [NSSet setWithObjects:O2, O1, nil];
NSLog(@"Check = %i",[Set1 isEqual:Set2]);
Prints "Check = 1" like I'd expect it to.
Best Regards
Tim
On 15 Jan 2009, at 15:14, Benjamin Stiglitz wrote:
I'm trying to create an NSDictionary that uses key based upon the
contents of a NSSet (specifically a set of NSManagedObjectID's).
I'm currently at a bit loss as to how to do it. My various attempts
at a hash based solution (see below) don't appear to be working.
Are you creating a map from the NSSet to something else? An
NSMapTable may be more appropriate.
A note on your pasted code:
NSString *hashFromCharacteristicTypes = [NSString stringWithFormat:
[[NSNumber numberWithInteger:hashInt] stringValue]];
NSDictionary keys can be any object that adheres to NSCopying, so
you don’t need to convert the number to a string before placing it
in the dictionary.
(In fact, you can make the set the key, but I have a feeling you
probably don’t want to copy the set.)
_______________________________________________
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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to arch...@mail-archive.com