43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
Class isa;
Class superclass;
const char *name;
unsigned long version;
unsigned long info;
unsigned long instance_size;
void *ivars;
struct objc_abi_method_list *methodlist;
struct objc_sparsearray *dtable;
Class *subclass_list;
void *sibling_class;
struct objc_abi_protocol_list *protocols;
void *gc_object_type;
unsigned long abi_version;
void *ivar_offsets;
void *properties;
};
struct objc_object {
Class isa;
};
struct objc_selector {
uintptr_t uid;
const char *types;
};
enum objc_abi_class_info {
OBJC_CLASS_INFO_CLASS = 0x01,
OBJC_CLASS_INFO_METACLASS = 0x02,
OBJC_CLASS_INFO_INITIALIZED = 0x04
};
#define Nil (Class)0
#define nil (id)0
#define YES (BOOL)1
#define NO (BOOL)0
|
|
|
|
>
>
>
|
>
>
>
>
>
|
>
>
>
>
>
>
>
|
>
>
>
>
|
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
Class isa;
Class superclass;
const char *name;
unsigned long version;
unsigned long info;
unsigned long instance_size;
void *ivars;
struct objc_method_list *methodlist;
struct objc_sparsearray *dtable;
Class *subclass_list;
void *sibling_class;
struct objc_protocol_list *protocols;
void *gc_object_type;
unsigned long abi_version;
void *ivar_offsets;
void *properties;
};
struct objc_object {
Class isa;
};
struct objc_selector {
uintptr_t uid;
const char *types;
};
struct objc_method {
struct objc_selector sel;
IMP imp;
};
struct objc_method_list {
struct objc_method_list *next;
unsigned int count;
struct objc_method methods[1];
};
struct objc_category {
const char *category_name;
const char *class_name;
struct objc_method_list *instance_methods;
struct objc_method_list *class_methods;
struct objc_protocol_list *protocols;
};
struct objc_protocol_list {
struct objc_protocol_list *next;
long count;
Protocol *list[1];
};
#define Nil (Class)0
#define nil (id)0
#define YES (BOOL)1
#define NO (BOOL)0
|