︙ | | | ︙ | |
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
|
waitUntilDone: (bool)waitUntilDone
{
void *pool = objc_autoreleasePoolPush();
OFTimer *timer = [OFTimer timerWithTimeInterval: 0
target: self
selector: selector
repeats: false];
[[thread runLoop] addTimer: timer];
if (waitUntilDone)
[timer waitUntilDone];
objc_autoreleasePoolPop(pool);
}
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
withObject: (id)object
waitUntilDone: (bool)waitUntilDone
{
void *pool = objc_autoreleasePoolPush();
OFTimer *timer = [OFTimer timerWithTimeInterval: 0
target: self
selector: selector
object: object
repeats: false];
[[thread runLoop] addTimer: timer];
if (waitUntilDone)
[timer waitUntilDone];
objc_autoreleasePoolPop(pool);
}
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
withObject: (id)object1
withObject: (id)object2
waitUntilDone: (bool)waitUntilDone
{
void *pool = objc_autoreleasePoolPush();
OFTimer *timer = [OFTimer timerWithTimeInterval: 0
target: self
selector: selector
object: object1
object: object2
repeats: false];
[[thread runLoop] addTimer: timer];
if (waitUntilDone)
[timer waitUntilDone];
objc_autoreleasePoolPop(pool);
}
|
|
|
|
|
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
|
waitUntilDone: (bool)waitUntilDone
{
void *pool = objc_autoreleasePoolPush();
OFTimer *timer = [OFTimer timerWithTimeInterval: 0
target: self
selector: selector
repeats: false];
[thread.runLoop addTimer: timer];
if (waitUntilDone)
[timer waitUntilDone];
objc_autoreleasePoolPop(pool);
}
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
withObject: (id)object
waitUntilDone: (bool)waitUntilDone
{
void *pool = objc_autoreleasePoolPush();
OFTimer *timer = [OFTimer timerWithTimeInterval: 0
target: self
selector: selector
object: object
repeats: false];
[thread.runLoop addTimer: timer];
if (waitUntilDone)
[timer waitUntilDone];
objc_autoreleasePoolPop(pool);
}
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
withObject: (id)object1
withObject: (id)object2
waitUntilDone: (bool)waitUntilDone
{
void *pool = objc_autoreleasePoolPush();
OFTimer *timer = [OFTimer timerWithTimeInterval: 0
target: self
selector: selector
object: object1
object: object2
repeats: false];
[thread.runLoop addTimer: timer];
if (waitUntilDone)
[timer waitUntilDone];
objc_autoreleasePoolPop(pool);
}
|
︙ | | | ︙ | |
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
|
OFTimer *timer = [OFTimer timerWithTimeInterval: 0
target: self
selector: selector
object: object1
object: object2
object: object3
repeats: false];
[[thread runLoop] addTimer: timer];
if (waitUntilDone)
[timer waitUntilDone];
objc_autoreleasePoolPop(pool);
}
|
|
|
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
|
OFTimer *timer = [OFTimer timerWithTimeInterval: 0
target: self
selector: selector
object: object1
object: object2
object: object3
repeats: false];
[thread.runLoop addTimer: timer];
if (waitUntilDone)
[timer waitUntilDone];
objc_autoreleasePoolPop(pool);
}
|
︙ | | | ︙ | |
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
|
target: self
selector: selector
object: object1
object: object2
object: object3
object: object4
repeats: false];
[[thread runLoop] addTimer: timer];
if (waitUntilDone)
[timer waitUntilDone];
objc_autoreleasePoolPop(pool);
}
|
|
|
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
|
target: self
selector: selector
object: object1
object: object2
object: object3
object: object4
repeats: false];
[thread.runLoop addTimer: timer];
if (waitUntilDone)
[timer waitUntilDone];
objc_autoreleasePoolPop(pool);
}
|
︙ | | | ︙ | |
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
|
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
afterDelay: (of_time_interval_t)delay
{
void *pool = objc_autoreleasePoolPush();
[[thread runLoop] addTimer: [OFTimer timerWithTimeInterval: delay
target: self
selector: selector
repeats: false]];
objc_autoreleasePoolPop(pool);
}
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
withObject: (id)object
afterDelay: (of_time_interval_t)delay
{
void *pool = objc_autoreleasePoolPush();
[[thread runLoop] addTimer: [OFTimer timerWithTimeInterval: delay
target: self
selector: selector
object: object
repeats: false]];
objc_autoreleasePoolPop(pool);
}
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
withObject: (id)object1
withObject: (id)object2
afterDelay: (of_time_interval_t)delay
{
void *pool = objc_autoreleasePoolPush();
[[thread runLoop] addTimer: [OFTimer timerWithTimeInterval: delay
target: self
selector: selector
object: object1
object: object2
repeats: false]];
objc_autoreleasePoolPop(pool);
}
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
withObject: (id)object1
withObject: (id)object2
withObject: (id)object3
afterDelay: (of_time_interval_t)delay
{
void *pool = objc_autoreleasePoolPush();
[[thread runLoop] addTimer: [OFTimer timerWithTimeInterval: delay
target: self
selector: selector
object: object1
object: object2
object: object3
repeats: false]];
objc_autoreleasePoolPop(pool);
}
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
withObject: (id)object1
withObject: (id)object2
withObject: (id)object3
withObject: (id)object4
afterDelay: (of_time_interval_t)delay
{
void *pool = objc_autoreleasePoolPush();
[[thread runLoop] addTimer: [OFTimer timerWithTimeInterval: delay
target: self
selector: selector
object: object1
object: object2
object: object3
object: object4
repeats: false]];
objc_autoreleasePoolPop(pool);
}
#endif
- (OFMethodSignature *)methodSignatureForSelector: (SEL)selector
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
|
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
afterDelay: (of_time_interval_t)delay
{
void *pool = objc_autoreleasePoolPush();
[thread.runLoop addTimer: [OFTimer timerWithTimeInterval: delay
target: self
selector: selector
repeats: false]];
objc_autoreleasePoolPop(pool);
}
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
withObject: (id)object
afterDelay: (of_time_interval_t)delay
{
void *pool = objc_autoreleasePoolPush();
[thread.runLoop addTimer: [OFTimer timerWithTimeInterval: delay
target: self
selector: selector
object: object
repeats: false]];
objc_autoreleasePoolPop(pool);
}
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
withObject: (id)object1
withObject: (id)object2
afterDelay: (of_time_interval_t)delay
{
void *pool = objc_autoreleasePoolPush();
[thread.runLoop addTimer: [OFTimer timerWithTimeInterval: delay
target: self
selector: selector
object: object1
object: object2
repeats: false]];
objc_autoreleasePoolPop(pool);
}
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
withObject: (id)object1
withObject: (id)object2
withObject: (id)object3
afterDelay: (of_time_interval_t)delay
{
void *pool = objc_autoreleasePoolPush();
[thread.runLoop addTimer: [OFTimer timerWithTimeInterval: delay
target: self
selector: selector
object: object1
object: object2
object: object3
repeats: false]];
objc_autoreleasePoolPop(pool);
}
- (void)performSelector: (SEL)selector
onThread: (OFThread *)thread
withObject: (id)object1
withObject: (id)object2
withObject: (id)object3
withObject: (id)object4
afterDelay: (of_time_interval_t)delay
{
void *pool = objc_autoreleasePoolPush();
[thread.runLoop addTimer: [OFTimer timerWithTimeInterval: delay
target: self
selector: selector
object: object1
object: object2
object: object3
object: object4
repeats: false]];
objc_autoreleasePoolPop(pool);
}
#endif
- (OFMethodSignature *)methodSignatureForSelector: (SEL)selector
{
|
︙ | | | ︙ | |
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
|
return hash;
}
- (OFString *)description
{
/* Classes containing data should reimplement this! */
return [OFString stringWithFormat: @"<%@>", [self className]];
}
- (void *)allocMemoryWithSize: (size_t)size
{
void *pointer;
struct pre_mem *preMem;
|
|
|
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
|
return hash;
}
- (OFString *)description
{
/* Classes containing data should reimplement this! */
return [OFString stringWithFormat: @"<%@>", self.className];
}
- (void *)allocMemoryWithSize: (size_t)size
{
void *pointer;
struct pre_mem *preMem;
|
︙ | | | ︙ | |