-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathlist_types.h
More file actions
56 lines (47 loc) · 1.55 KB
/
list_types.h
File metadata and controls
56 lines (47 loc) · 1.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#ifndef OBJC_LIST_TYPES_H
#define OBJC_LIST_TYPES_H
/*
* This file includes the list.h file multiple times,
* each time with different options, hence creating
* all the necessary list structures throughout the
* runtime, such as objc_method_list, etc.
*/
/* Method list. */
#define OBJC_LIST_MALLOC_TYPE M_METHOD_LIST_TYPE
#define OBJC_LIST_TYPE_NAME method
#define OBJC_LIST_TYPE struct objc_method
#define OBJC_LIST_CHAINABLE 1
#define OBJC_LIST_HAS_ALLOCATION_FIELD 1
#include "list.h"
/* Ivar list. */
#define OBJC_LIST_MALLOC_TYPE M_IVAR_LIST_TYPE
#define OBJC_LIST_TYPE_NAME ivar
#define OBJC_LIST_TYPE struct objc_ivar
#define OBJC_LIST_CHAINABLE 0
#include "list.h"
/* Categories. */
#define OBJC_LIST_MALLOC_TYPE M_CATEGORY_LIST_TYPE
#define OBJC_LIST_TYPE_NAME category
#define OBJC_LIST_TYPE struct objc_category
#define OBJC_LIST_CHAINABLE 0
#include "list.h"
/* Method description list */
#define OBJC_LIST_MALLOC_TYPE M_METHOD_DESC_LIST_TYPE
#define OBJC_LIST_TYPE_NAME method_description
#define OBJC_LIST_TYPE struct objc_method_description
#define OBJC_LIST_CHAINABLE 0
#include "list.h"
/* Protocols. */
#define OBJC_LIST_MALLOC_TYPE M_PROTOCOL_LIST_TYPE
#define OBJC_LIST_TYPE_NAME protocol
#define OBJC_LIST_TYPE struct objc_protocol *
#define OBJC_LIST_VALUES_ARE_POINTERS 1
#define OBJC_LIST_CHAINABLE 1
#include "list.h"
/* Properties. */
#define OBJC_LIST_MALLOC_TYPE M_PROPERTY_LIST_TYPE
#define OBJC_LIST_TYPE_NAME property
#define OBJC_LIST_TYPE struct objc_property
#define OBJC_LIST_CHAINABLE 1
#include "list.h"
#endif /* !OBJC_LIST_TYPES_H */