@@ -107,21 +107,22 @@ { } - (void)dealloc { - @throw [OFNotImplementedException exceptionWithClass: isa + @throw [OFNotImplementedException exceptionWithClass: [self class] selector: _cmd]; [super dealloc]; /* Get rid of a stupid warning */ } @end @implementation OFMutableDictionary + (void)initialize { if (self == [OFMutableDictionary class]) - placeholder.isa = [OFMutableDictionary_placeholder class]; + object_setClass((id)&placeholder, + [OFMutableDictionary_placeholder class]); } + alloc { if (self == [OFMutableDictionary class]) @@ -130,12 +131,12 @@ return [super alloc]; } - init { - if (isa == [OFMutableDictionary class]) { - Class c = isa; + if (object_getClass(self) == [OFMutableDictionary class]) { + Class c = [self class]; [self release]; @throw [OFNotImplementedException exceptionWithClass: c selector: _cmd]; } @@ -143,11 +144,11 @@ } - (void)setObject: (id)object forKey: (id)key { - @throw [OFNotImplementedException exceptionWithClass: isa + @throw [OFNotImplementedException exceptionWithClass: [self class] selector: _cmd]; } - (void)setObject: (id)object forKeyedSubscript: (id)key @@ -156,11 +157,11 @@ forKey: key]; } - (void)removeObjectForKey: (id)key { - @throw [OFNotImplementedException exceptionWithClass: isa + @throw [OFNotImplementedException exceptionWithClass: [self class] selector: _cmd]; } - copy {