︙ | | |
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
-
+
|
# import "OFCondition.h"
#endif
#import "OFInvalidArgumentException.h"
@implementation OFTimer
@synthesize timeInterval = _interval, repeating = _repeats, valid = _valid;
@synthesize OF_inRunLoop = _inRunLoop;
@synthesize of_inRunLoop = _inRunLoop;
+ (instancetype)scheduledTimerWithTimeInterval: (of_time_interval_t)timeInterval
target: (id)target
selector: (SEL)selector
repeats: (bool)repeats
{
void *pool = objc_autoreleasePoolPush();
|
︙ | | |
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
|
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
|
-
+
-
+
|
#endif
- init
{
OF_INVALID_INIT_METHOD
}
- (instancetype)OF_initWithFireDate: (OFDate *)fireDate
- (instancetype)of_initWithFireDate: (OFDate *)fireDate
interval: (of_time_interval_t)interval
target: (id)target
selector: (SEL)selector
object: (id)object1
object: (id)object2
arguments: (uint8_t)arguments
repeats: (bool)repeats
repeats: (bool)repeats OF_METHOD_FAMILY(init)
{
self = [super init];
@try {
_fireDate = [fireDate retain];
_interval = interval;
_target = [target retain];
|
︙ | | |
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
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
|
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
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
|
-
+
-
+
-
+
|
- initWithFireDate: (OFDate *)fireDate
interval: (of_time_interval_t)interval
target: (id)target
selector: (SEL)selector
repeats: (bool)repeats
{
return [self OF_initWithFireDate: fireDate
return [self of_initWithFireDate: fireDate
interval: interval
target: target
selector: selector
object: nil
object: nil
arguments: 0
repeats: repeats];
}
- initWithFireDate: (OFDate *)fireDate
interval: (of_time_interval_t)interval
target: (id)target
selector: (SEL)selector
object: (id)object
repeats: (bool)repeats
{
return [self OF_initWithFireDate: fireDate
return [self of_initWithFireDate: fireDate
interval: interval
target: target
selector: selector
object: object
object: nil
arguments: 1
repeats: repeats];
}
- initWithFireDate: (OFDate *)fireDate
interval: (of_time_interval_t)interval
target: (id)target
selector: (SEL)selector
object: (id)object1
object: (id)object2
repeats: (bool)repeats
{
return [self OF_initWithFireDate: fireDate
return [self of_initWithFireDate: fireDate
interval: interval
target: target
selector: selector
object: object1
object: object2
arguments: 2
repeats: repeats];
|
︙ | | |
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
|
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
|
-
+
|
- (void)setFireDate: (OFDate *)fireDate
{
[self retain];
@try {
@synchronized (self) {
OFDate *old;
[_inRunLoop OF_removeTimer: self];
[_inRunLoop of_removeTimer: self];
old = _fireDate;
_fireDate = [fireDate copy];
[old release];
[_inRunLoop addTimer: self];
}
|
︙ | | |