Linux kenrel 에서 가져온 List 관리 함수들의 구현체
더 자세히 ...
|
| #define | LIST_HEAD_INIT(list) { &(list), &(list) } |
| | List 를 초기화 한다. 더 자세히 ...
|
| |
| #define | LIST_HEAD(list) struct list_head list = LIST_HEAD_INIT(list) |
| | 초기화된 리스트를 선언한다. 더 자세히 ...
|
| |
| #define | LIST_NEXT(name) ((name)->next) |
| | 리스트의 다음 엔트리를 가리킨다. 더 자세히 ...
|
| |
| #define | LIST_PREV(name) ((name)->prev) |
| | 리스트의 이전 엔트리를 가리킨다. 더 자세히 ...
|
| |
| #define | list_entry(ptr, type, member) container_of(ptr, type, member) |
| | list 객체에서 지정된 타입에 해당하는 캑체를 얻어온다. 더 자세히 ...
|
| |
| #define | list_first_entry(ptr, type, member) |
| | 리스트의 첫번째 엔트리를 반환한다. 더 자세히 ...
|
| |
| #define | list_for_each(pos, head) |
| | loop 를 돌면서 리스트의 각 엔트리들을 참조한다. 더 자세히 ...
|
| |
| #define | list_for_each_prev(pos, head) |
| | loop 를 거꾸로 돌면서 리스트의 각 엔트리를 참조한다. 더 자세히 ...
|
| |
| #define | list_for_each_safe(pos, n, head) |
| | loop 를 돌면서 리스트의 각 엔트리를 참조한다. 더 자세히 ...
|
| |
| #define | list_for_each_prev_safe(pos, n, head) |
| | loop 를 거꾸로 돌면서 리스트의 각 엔트리를 참조한다. 더 자세히 ...
|
| |
| #define | list_for_each_entry(pos, head, member) |
| | loop 를 돌면서 리스트의 각 엔트리의 원형을 반환한다. 더 자세히 ...
|
| |
Linux kenrel 에서 가져온 List 관리 함수들의 구현체
- 작성자
- Sung-jae Park nices.nosp@m.j@ni.nosp@m.cesj..nosp@m.com
- 날짜
- 2011-7-20 Linux kernel 에서 사용되고 있는 리스트 관리 코드를 그대로 차용하였으며, 필요한 경우 일부 수정 또는 추가하였다.
list 객체에서 지정된 타입에 해당하는 캑체를 얻어온다.
- 매개변수
-
| [in] | ptr | 리스트 객체 |
| [in] | type | 얻어올 객체의 종류 |
| [in] | member | 얻어올 객체에서 리스트 객체의 이름 |
| #define list_first_entry |
( |
|
ptr, |
|
|
|
type, |
|
|
|
member |
|
) |
| |
| #define list_for_each |
( |
|
pos, |
|
|
|
head |
|
) |
| |
값:for (pos = (head)->
next; \
prefetch(pos->next), pos != (head); pos = pos->
next)
loop 를 돌면서 리스트의 각 엔트리들을 참조한다.
| #define list_for_each_entry |
( |
|
pos, |
|
|
|
head, |
|
|
|
member |
|
) |
| |
값:
prefetch(pos->member.next), &pos->member != (head); \
pos =
list_entry(pos->member.next, typeof(*pos), member))
loop 를 돌면서 리스트의 각 엔트리의 원형을 반환한다.
| #define list_for_each_prev |
( |
|
pos, |
|
|
|
head |
|
) |
| |
값:for (pos = (head)->
prev; \
prefetch(pos->prev), pos != (head); pos = pos->
prev)
loop 를 거꾸로 돌면서 리스트의 각 엔트리를 참조한다.
| #define list_for_each_prev_safe |
( |
|
pos, |
|
|
|
n, |
|
|
|
head |
|
) |
| |
값:for (pos = (head)->
prev, n = pos->
prev; \
prefetch(pos->prev), pos != (head); pos = n, n = pos->prev)
loop 를 거꾸로 돌면서 리스트의 각 엔트리를 참조한다.
| #define list_for_each_safe |
( |
|
pos, |
|
|
|
n, |
|
|
|
head |
|
) |
| |
값:for (pos = (head)->
next, n = pos->
next; \
pos != (head); pos = n, n = pos->
next)
loop 를 돌면서 리스트의 각 엔트리를 참조한다.
| #define LIST_NEXT |
( |
|
name) | |
((name)->next) |
| #define LIST_PREV |
( |
|
name) | |
((name)->prev) |