@@ -101,21 +101,21 @@ { } - (void)dealloc { - @throw [OFNotImplementedException exceptionWithClass: isa + @throw [OFNotImplementedException exceptionWithClass: [self class] selector: _cmd]; [super dealloc]; /* Get rid of a stupid warning */ } @end @implementation OFArray + (void)initialize { if (self == [OFArray class]) - placeholder.isa = [OFArray_placeholder class]; + object_setClass((id)&placeholder, [OFArray_placeholder class]); } + alloc { if (self == [OFArray class]) @@ -159,12 +159,12 @@ count: count] autorelease]; } - init { - if (isa == [OFArray class]) { - Class c = isa; + if (object_getClass(self) == [OFArray class]) { + Class c = [self class]; [self release]; @throw [OFNotImplementedException exceptionWithClass: c selector: _cmd]; } @@ -190,44 +190,44 @@ } - initWithObject: (id)firstObject arguments: (va_list)arguments { - Class c = isa; + Class c = [self class]; [self release]; @throw [OFNotImplementedException exceptionWithClass: c selector: _cmd]; } - initWithArray: (OFArray*)array { - Class c = isa; + Class c = [self class]; [self release]; @throw [OFNotImplementedException exceptionWithClass: c selector: _cmd]; } - initWithObjects: (id const*)objects count: (size_t)count { - Class c = isa; + Class c = [self class]; [self release]; @throw [OFNotImplementedException exceptionWithClass: c selector: _cmd]; } - initWithSerialization: (OFXMLElement*)element { - Class c = isa; + Class c = [self class]; [self release]; @throw [OFNotImplementedException exceptionWithClass: c selector: _cmd]; } - (size_t)count { - @throw [OFNotImplementedException exceptionWithClass: isa + @throw [OFNotImplementedException exceptionWithClass: [self class] selector: _cmd]; } - (void)getObjects: (id*)buffer inRange: (of_range_t)range @@ -265,11 +265,11 @@ return [[OFMutableArray alloc] initWithArray: self]; } - (id)objectAtIndex: (size_t)index { - @throw [OFNotImplementedException exceptionWithClass: isa + @throw [OFNotImplementedException exceptionWithClass: [self class] selector: _cmd]; } - (id)objectAtIndexedSubscript: (size_t)index { @@ -569,11 +569,11 @@ { /* FIXME: Use -[getObjects:inRange:] on the passed objects */ size_t count = [self count]; if (count > INT_MAX) - @throw [OFOutOfRangeException exceptionWithClass: isa]; + @throw [OFOutOfRangeException exceptionWithClass: [self class]]; if (state->state >= count) return 0; state->state = count; @@ -727,11 +727,11 @@ - (id)nextObject { if (mutationsPtr != NULL && *mutationsPtr != mutations) @throw [OFEnumerationMutationException - exceptionWithClass: isa + exceptionWithClass: [self class] object: array]; if (position < count) return [array objectAtIndex: position++]; @@ -740,11 +740,11 @@ - (void)reset { if (mutationsPtr != NULL && *mutationsPtr != mutations) @throw [OFEnumerationMutationException - exceptionWithClass: isa + exceptionWithClass: [self class] object: array]; position = 0; } @end