@@ -42,45 +42,45 @@ @interface OFDictionary_placeholder: OFDictionary @end @implementation OFDictionary_placeholder -- init +- (instancetype)init { return (id)[[OFDictionary_hashtable alloc] init]; } -- initWithDictionary: (OFDictionary *)dictionary +- (instancetype)initWithDictionary: (OFDictionary *)dictionary { return (id)[[OFDictionary_hashtable alloc] initWithDictionary: dictionary]; } -- initWithObject: (id)object - forKey: (id)key +- (instancetype)initWithObject: (id)object + forKey: (id)key { return (id)[[OFDictionary_hashtable alloc] initWithObject: object forKey: key]; } -- initWithObjects: (OFArray *)objects - forKeys: (OFArray *)keys +- (instancetype)initWithObjects: (OFArray *)objects + forKeys: (OFArray *)keys { return (id)[[OFDictionary_hashtable alloc] initWithObjects: objects forKeys: keys]; } -- initWithObjects: (id const *)objects - forKeys: (id const *)keys - count: (size_t)count +- (instancetype)initWithObjects: (id const *)objects + forKeys: (id const *)keys + count: (size_t)count { return (id)[[OFDictionary_hashtable alloc] initWithObjects: objects forKeys: keys count: count]; } -- initWithKeysAndObjects: (id )firstKey, ... +- (instancetype)initWithKeysAndObjects: (id )firstKey, ... { id ret; va_list arguments; va_start(arguments, firstKey); @@ -89,29 +89,29 @@ va_end(arguments); return ret; } -- initWithKey: (id )firstKey - arguments: (va_list)arguments +- (instancetype)initWithKey: (id )firstKey + arguments: (va_list)arguments { return (id)[[OFDictionary_hashtable alloc] initWithKey: firstKey arguments: arguments]; } -- initWithSerialization: (OFXMLElement *)element +- (instancetype)initWithSerialization: (OFXMLElement *)element { return (id)[[OFDictionary_hashtable alloc] initWithSerialization: element]; } -- retain +- (instancetype)retain { return self; } -- autorelease +- (instancetype)autorelease { return self; } - (void)release @@ -129,11 +129,11 @@ { if (self == [OFDictionary class]) placeholder.isa = [OFDictionary_placeholder class]; } -+ alloc ++ (instancetype)alloc { if (self == [OFDictionary class]) return (id)&placeholder; return [super alloc]; @@ -183,11 +183,11 @@ va_end(arguments); return ret; } -- init +- (instancetype)init { if (object_getClass(self) == [OFDictionary class]) { @try { [self doesNotRecognizeSelector: _cmd]; } @catch (id e) { @@ -199,26 +199,26 @@ } return [super init]; } -- initWithDictionary: (OFDictionary *)dictionary +- (instancetype)initWithDictionary: (OFDictionary *)dictionary { OF_INVALID_INIT_METHOD } -- initWithObject: (id)object - forKey: (id)key +- (instancetype)initWithObject: (id)object + forKey: (id)key { if (key == nil || object == nil) @throw [OFInvalidArgumentException exception]; return [self initWithKeysAndObjects: key, object, nil]; } -- initWithObjects: (OFArray *)objects_ - forKeys: (OFArray *)keys_ +- (instancetype)initWithObjects: (OFArray *)objects_ + forKeys: (OFArray *)keys_ { id const *objects, *keys; size_t count; @try { @@ -237,18 +237,18 @@ return [self initWithObjects: objects forKeys: keys count: count]; } -- initWithObjects: (id const *)objects - forKeys: (id const *)keys - count: (size_t)count +- (instancetype)initWithObjects: (id const *)objects + forKeys: (id const *)keys + count: (size_t)count { OF_INVALID_INIT_METHOD } -- initWithKeysAndObjects: (id)firstKey, ... +- (instancetype)initWithKeysAndObjects: (id)firstKey, ... { id ret; va_list arguments; va_start(arguments, firstKey); @@ -257,17 +257,17 @@ va_end(arguments); return ret; } -- initWithKey: (id)firstKey - arguments: (va_list)arguments +- (instancetype)initWithKey: (id)firstKey + arguments: (va_list)arguments { OF_INVALID_INIT_METHOD } -- initWithSerialization: (OFXMLElement *)element +- (instancetype)initWithSerialization: (OFXMLElement *)element { OF_INVALID_INIT_METHOD } - (id)objectForKey: (id)key @@ -323,16 +323,16 @@ - (size_t)count { OF_UNRECOGNIZED_SELECTOR } -- copy +- (id)copy { return [self retain]; } -- mutableCopy +- (id)mutableCopy { return [[OFMutableDictionary alloc] initWithDictionary: self]; } - (bool)isEqual: (id)object