acl
3.5.3.0
|
类 | |
struct | ACL_RING |
struct | ACL_RING_ITER |
宏定义 | |
#define | ACL_RING_SUCC(c) ((c)->succ) |
#define | acl_ring_succ ACL_RING_SUCC |
#define | ACL_RING_PRED(c) ((c)->pred) |
#define | acl_ring_pred ACL_RING_PRED |
#define | ACL_RING_TO_APPL(ring_ptr, app_type, ring_member) ((app_type *) (((char *) (ring_ptr)) - offsetof(app_type,ring_member))) |
#define | acl_ring_to_appl ACL_RING_TO_APPL |
#define | ACL_RING_FOREACH(iter, head_ptr) |
#define | acl_ring_foreach ACL_RING_FOREACH |
#define | ACL_RING_FOREACH_REVERSE(iter, head_ptr) |
#define | acl_ring_foreach_reverse ACL_RING_FOREACH_REVERSE |
#define | ACL_RING_FIRST(head) (acl_ring_succ(head) != (head) ? acl_ring_succ(head) : 0) |
#define | acl_ring_first ACL_RING_FIRST |
#define | ACL_RING_FIRST_APPL(head, app_type, ring_member) |
#define | acl_ring_first_appl ACL_RING_FIRST_APPL |
#define | ACL_RING_LAST(head) (acl_ring_pred(head) != (head) ? acl_ring_pred(head) : 0) |
#define | acl_ring_last ACL_RING_LAST |
#define | ACL_RING_LAST_APPL(head, app_type, ring_member) |
#define | acl_ring_last_appl ACL_RING_LAST_APPL |
#define | ACL_RING_APPEND(ring_in, entry_in) |
#define | ACL_RING_PREPEND(ring_in, entry_in) |
#define | ACL_RING_DETACH(entry_in) |
类型定义 | |
typedef struct ACL_RING | ACL_RING |
typedef struct ACL_RING_ITER | ACL_RING_ITER |
函数 | |
ACL_API void | acl_ring_init (ACL_RING *ring) |
ACL_API int | acl_ring_size (const ACL_RING *ring) |
ACL_API void | acl_ring_prepend (ACL_RING *ring, ACL_RING *entry) |
ACL_API void | acl_ring_append (ACL_RING *ring, ACL_RING *entry) |
ACL_API void | acl_ring_detach (ACL_RING *entry) |
ACL_API ACL_RING * | acl_ring_pop_head (ACL_RING *ring) |
ACL_API ACL_RING * | acl_ring_pop_tail (ACL_RING *ring) |
#define ACL_RING_APPEND | ( | ring_in, | |
entry_in | |||
) |
将一个新元素添加进环的尾部
ring | {ACL_RING*} 数据环 |
entry | {ACL_RING*} 新的元素 |
在文件 acl_ring.h 第 208 行定义.
#define ACL_RING_DETACH | ( | entry_in | ) |
将一个环元素从数据环中删除
entry | {ACL_RING*} 环元素 |
在文件 acl_ring.h 第 237 行定义.
#define ACL_RING_FIRST | ( | head | ) | (acl_ring_succ(head) != (head) ? acl_ring_succ(head) : 0) |
#define acl_ring_first ACL_RING_FIRST |
在文件 acl_ring.h 第 165 行定义.
#define ACL_RING_FIRST_APPL | ( | head, | |
app_type, | |||
ring_member | |||
) |
返回数据环中头第一个环元素指针同时将其转换应用自定义结构类型的对象地址
head | {ACL_RING*} 环头指针 |
app_type | 应用自定义结构类型 |
ring_member | {ACL_RING*} 环元素在应用自定义结构中的成员名称 |
在文件 acl_ring.h 第 174 行定义.
#define acl_ring_first_appl ACL_RING_FIRST_APPL |
在文件 acl_ring.h 第 178 行定义.
#define ACL_RING_FOREACH | ( | iter, | |
head_ptr | |||
) |
在文件 acl_ring.h 第 140 行定义.
#define acl_ring_foreach ACL_RING_FOREACH |
在文件 acl_ring.h 第 144 行定义.
#define ACL_RING_FOREACH_REVERSE | ( | iter, | |
head_ptr | |||
) |
从尾部至头部遍历数据环中的所有环元素
iter | {ACL_RING_ITER} |
head_ptr | {ACL_RING*} 数据环的头指针 |
在文件 acl_ring.h 第 151 行定义.
#define acl_ring_foreach_reverse ACL_RING_FOREACH_REVERSE |
在文件 acl_ring.h 第 155 行定义.
#define ACL_RING_LAST | ( | head | ) | (acl_ring_pred(head) != (head) ? acl_ring_pred(head) : 0) |
#define acl_ring_last ACL_RING_LAST |
在文件 acl_ring.h 第 188 行定义.
#define ACL_RING_LAST_APPL | ( | head, | |
app_type, | |||
ring_member | |||
) |
返回数据环中最后一个环元素指针同时将其转换应用自定义结构类型的对象地址
head | {ACL_RING*} 环头指针 |
app_type | 应用自定义结构类型 |
ring_member | {ACL_RING*} 环元素在应用自定义结构中的成员名称 |
在文件 acl_ring.h 第 197 行定义.
#define acl_ring_last_appl ACL_RING_LAST_APPL |
在文件 acl_ring.h 第 201 行定义.
#define ACL_RING_PRED | ( | c | ) | ((c)->pred) |
返回当前环元素的前一个环元素
在文件 acl_ring.h 第 86 行定义.
#define acl_ring_pred ACL_RING_PRED |
在文件 acl_ring.h 第 87 行定义.
#define ACL_RING_PREPEND | ( | ring_in, | |
entry_in | |||
) |
将一个新元素添加进环的头部
ring | {ACL_RING*} 数据环 |
entry | {ACL_RING*} 新的元素 |
在文件 acl_ring.h 第 223 行定义.
#define ACL_RING_SUCC | ( | c | ) | ((c)->succ) |
返回当前环元素的下一个环元素
在文件 acl_ring.h 第 80 行定义.
#define acl_ring_succ ACL_RING_SUCC |
在文件 acl_ring.h 第 81 行定义.
#define ACL_RING_TO_APPL | ( | ring_ptr, | |
app_type, | |||
ring_member | |||
) | ((app_type *) (((char *) (ring_ptr)) - offsetof(app_type,ring_member))) |
将环元素指针转换成应用的自定义类型的指针地址
ring_ptr | {ACL_RING*} 环元素指针 |
app_type | 应用自定义类型 |
ring_member | {ACL_RING*} 环元素在应用自定义结构中的成员名称 |
在文件 acl_ring.h 第 96 行定义.
#define acl_ring_to_appl ACL_RING_TO_APPL |
在文件 acl_ring.h 第 99 行定义.
在文件 acl_ring.h 第 11 行定义.
typedef struct ACL_RING_ITER ACL_RING_ITER |
将一个新元素添加进环的尾部
ring | {ACL_RING*} 数据环 |
entry | {ACL_RING*} 新的元素 |
ACL_API void acl_ring_detach | ( | ACL_RING * | entry | ) |
ACL_API void acl_ring_init | ( | ACL_RING * | ring | ) |
从环中弹出头部环元素
ring | {ACL_RING*} 数据环 |
从环中弹出尾部环元素
ring | {ACL_RING*} 数据环 |
将一个新元素添加进环的头部
ring | {ACL_RING*} 数据环 |
entry | {ACL_RING*} 新的元素 |
ACL_API int acl_ring_size | ( | const ACL_RING * | ring | ) |
获得当前数据环内元素个数
ring | {ACL_RING*} 数据环 |