173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
|
OFFreeMemory(objects);
[self release];
@throw e;
}
@try {
return [self initWithObjects: objects count: count];
} @finally {
OFFreeMemory(objects);
}
}
- (instancetype)initWithArray: (OFArray *)array
{
void *pool = objc_autoreleasePoolPush();
size_t count;
const id *objects;
|
|
>
>
|
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
|
OFFreeMemory(objects);
[self release];
@throw e;
}
@try {
self = [self initWithObjects: objects count: count];
} @finally {
OFFreeMemory(objects);
}
return self;
}
- (instancetype)initWithArray: (OFArray *)array
{
void *pool = objc_autoreleasePoolPush();
size_t count;
const id *objects;
|
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
|
objects[0] = firstObject;
for (size_t i = 1; i < count; i++) {
objects[i] = va_arg(arguments, id);
OFEnsure(objects[i] != nil);
}
return [self initWithObjects: objects count: count];
} @finally {
OFFreeMemory(objects);
}
}
- (size_t)count
{
OF_UNRECOGNIZED_SELECTOR
}
|
|
>
>
|
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
|
objects[0] = firstObject;
for (size_t i = 1; i < count; i++) {
objects[i] = va_arg(arguments, id);
OFEnsure(objects[i] != nil);
}
self = [self initWithObjects: objects count: count];
} @finally {
OFFreeMemory(objects);
}
return self;
}
- (size_t)count
{
OF_UNRECOGNIZED_SELECTOR
}
|