@@ -263,17 +263,10 @@ return; } } } -- (void)removeNObjects: (size_t)nObjects -{ - size_t count = [self count]; - - [self removeObjectsInRange: of_range(count - nObjects, nObjects)]; -} - - (void)removeObjectsInRange: (of_range_t)range { size_t i; for (i = 0; i < range.length; i++) @@ -280,16 +273,19 @@ [self removeObjectAtIndex: range.start]; } - (void)removeLastObject { - [self removeNObjects: 1]; + size_t count = [self count]; + + if (count > 0) + [self removeObjectAtIndex: count - 1]; } - (void)removeAllObjects { - [self removeNObjects: [self count]]; + [self removeObjectsInRange: of_range(0, [self count])]; } #ifdef OF_HAVE_BLOCKS - (void)replaceObjectsUsingBlock: (of_array_replace_block_t)block {