On Wednesday, February 27, 2002, at 11:19 AM, Manuel Guesdon wrote: >> | PS. Also implemented MacOS-X compatible KVC behavior in >> NSDictionary.m > > It makes troubles for me. Please see the code I've sent and WO > specifications at > http://developer.apple.com/techpubs/webobjects/Reference/Javadoc/com/webobjects/ > foundation/NSDictionary.html > "allValues", "allKeys", and "count" are special cases. > > Could you make some tests on MacOSX to see if your code is right or if > mine is right (just adding an object for key > count and see what valueForKey:@"count" give you) ? > > My code is: > @implementation NSDictionary (EOKeyValueCoding) > > - (id)valueForKey:(NSString *)key > { > //OK > id value; > value = [self objectForKey:key]; > if (!value) > { > if ([key isEqualToString:@"allValues"]) > value=[self allValues]; > else if ([key isEqualToString:@"allKeys"]) > value=[self allKeys]; > else if ([key isEqualToString:@"count"]) > value=[NSNumber numberWithInt:[self count]]; > }; > return value; > } > > > If your code is right, we have a big problem: how could we have same > foundation but 2 differents way of processing > depending on what we use (GNUstepWeb/EOF or not)
My code is correct ... but this should not be a problem. Your category implementation should 'trump' the implementation in NSDictionary itsself. So, if you build with just GNUstep-base, you get the Apple Foundation behavior, and if you build with GNUstepWeb/EOF you get the Apple webobjects behavior. Of course, we should test this - but methods in categories *should* override the methods in the original class. _______________________________________________ Bug-gnustep mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-gnustep
