35 lines
982 B
Markdown
35 lines
982 B
Markdown
This chapter describes the NSPR API for managing linked lists. The API
|
|
is a set of macros for initializing a circular (doubly linked) list,
|
|
inserting and removing elements from the list. The macros are not thread
|
|
safe. The caller must provide for mutually-exclusive access to the list,
|
|
and for the nodes being added and removed from the list.
|
|
|
|
- [Linked List Types](#Linked_List_Types)
|
|
- [Linked List Macros](#Linked_List_Macros)
|
|
|
|
(linked-list-types)=
|
|
|
|
# Linked List Types
|
|
|
|
The {ref}`PRCList` type represents a circular linked list.
|
|
|
|
(linked-list-macros)=
|
|
|
|
# Linked List Macros
|
|
|
|
Macros that create and operate on linked lists are:
|
|
|
|
> - {ref}`PR_INIT_CLIST`
|
|
> - {ref}`PR_INIT_STATIC_CLIST`
|
|
> - {ref}`PR_APPEND_LINK`
|
|
> - {ref}`PR_INSERT_LINK`
|
|
> - {ref}`PR_NEXT_LINK`
|
|
> - {ref}`PR_PREV_LINK`
|
|
> - {ref}`PR_REMOVE_LINK`
|
|
> - {ref}`PR_REMOVE_AND_INIT_LINK`
|
|
> - {ref}`PR_INSERT_BEFORE`
|
|
> - {ref}`PR_INSERT_AFTER`
|
|
> - {ref}`PR_CLIST_IS_EMPTY`
|
|
> - {ref}`PR_LIST_HEAD`
|
|
> - {ref}`PR_LIST_TAIL`
|