ObjFW  Diff

Differences From Artifact [d9547cea8c]:

To Artifact [a7a21a8f36]:


265
266
267
268
269
270
271
272

273
274
275
276
277
278

279
280
281
282
283
284

285
286
287

288
289
290
291
292
293
294

295
296

297
298
299
300
301
302
303
265
266
267
268
269
270
271

272
273
274
275
276
277

278
279
280
281
282
283

284
285
286

287
288
289
290
291
292
293

294
295

296
297
298
299
300
301
302
303







-
+





-
+





-
+


-
+






-
+

-
+







- (void)addObjectsFromArray: (OFArray *)array
{
	[self insertObjectsFromArray: array
			     atIndex: [self count]];
}

- (void)insertObject: (id)object
	     atIndex: (size_t)index
	     atIndex: (size_t)idx
{
	OF_UNRECOGNIZED_SELECTOR
}

- (void)insertObjectsFromArray: (OFArray *)array
		       atIndex: (size_t)index
		       atIndex: (size_t)idx
{
	size_t i = 0;

	for (id object in array)
		[self insertObject: object
			   atIndex: index + i++];
			   atIndex: idx + i++];
}

- (void)replaceObjectAtIndex: (size_t)index
- (void)replaceObjectAtIndex: (size_t)idx
		  withObject: (id)object
{
	OF_UNRECOGNIZED_SELECTOR
}

-    (void)setObject: (id)object
  atIndexedSubscript: (size_t)index
  atIndexedSubscript: (size_t)idx
{
	[self replaceObjectAtIndex: index
	[self replaceObjectAtIndex: idx
			withObject: object];
}

- (void)replaceObject: (id)oldObject
	   withObject: (id)newObject
{
	size_t count;
332
333
334
335
336
337
338
339

340
341
342
343
344
345
346
332
333
334
335
336
337
338

339
340
341
342
343
344
345
346







-
+







					withObject: newObject];

			return;
		}
	}
}

- (void)removeObjectAtIndex: (size_t)index
- (void)removeObjectAtIndex: (size_t)idx
{
	OF_UNRECOGNIZED_SELECTOR
}

- (void)removeObject: (id)object
{
	size_t count;
397
398
399
400
401
402
403
404

405
406

407
408
409

410
411
412
413
414
415
416


417
418
419


420
421
422
423

424
425

426
427
428
429
430
431
432
397
398
399
400
401
402
403

404
405

406
407
408

409
410
411
412
413
414


415
416
417


418
419
420
421
422

423
424

425
426
427
428
429
430
431
432







-
+

-
+


-
+





-
-
+
+

-
-
+
+



-
+

-
+







{
	[self removeObjectsInRange: of_range(0, [self count])];
}

#ifdef OF_HAVE_BLOCKS
- (void)replaceObjectsUsingBlock: (of_array_replace_block_t)block
{
	[self enumerateObjectsUsingBlock: ^ (id object, size_t index,
	[self enumerateObjectsUsingBlock: ^ (id object, size_t idx,
	    bool *stop) {
		id new = block(object, index);
		id new = block(object, idx);

		if (new != object)
			[self replaceObjectAtIndex: index
			[self replaceObjectAtIndex: idx
					withObject: new];
	}];
}
#endif

- (void)exchangeObjectAtIndex: (size_t)index1
	    withObjectAtIndex: (size_t)index2
- (void)exchangeObjectAtIndex: (size_t)idx1
	    withObjectAtIndex: (size_t)idx2
{
	id object1 = [self objectAtIndex: index1];
	id object2 = [self objectAtIndex: index2];
	id object1 = [self objectAtIndex: idx1];
	id object2 = [self objectAtIndex: idx2];

	[object1 retain];
	@try {
		[self replaceObjectAtIndex: index1
		[self replaceObjectAtIndex: idx1
				withObject: object2];
		[self replaceObjectAtIndex: index2
		[self replaceObjectAtIndex: idx2
				withObject: object1];
	} @finally {
		[object1 release];
	}
}

- (void)sort