// // NSDictionaryCaseInsensitive.m // // Created by John R Chang on 2005-12-24. // This code is Creative Commons Public Domain. You may use it for any purpose whatsoever. // http://creativecommons.org/licenses/publicdomain/ // #import "NSDictionaryCaseInsensitive.h" @implementation NSDictionary (CaseInsensitive) - (id) objectForCaseInsensitiveKey:(id)aKey { id object = [self objectForKey:aKey]; if (object) return object; NSArray * keys = [self allKeys]; NSEnumerator * keyEnumerator = [keys objectEnumerator]; NSString * key; while ((key = [keyEnumerator nextObject])) { if ([key caseInsensitiveCompare:aKey] == NSOrderedSame) return [self objectForKey:key]; } return nil; } @end