Macros | |
#define | GNUNET_CONTAINER_DLL_insert(head, tail, element) |
Insert an element at the head of a DLL. More... | |
#define | GNUNET_CONTAINER_DLL_insert_tail(head, tail, element) |
Insert an element at the tail of a DLL. More... | |
#define | GNUNET_CONTAINER_DLL_insert_after(head, tail, other, element) |
Insert an element into a DLL after the given other element. More... | |
#define | GNUNET_CONTAINER_DLL_insert_before(head, tail, other, element) |
Insert an element into a DLL before the given other element. More... | |
#define | GNUNET_CONTAINER_DLL_remove(head, tail, element) |
Remove an element from a DLL. More... | |
#define | GNUNET_CONTAINER_MDLL_insert(mdll, head, tail, element) |
Insert an element at the head of a MDLL. More... | |
#define | GNUNET_CONTAINER_MDLL_insert_tail(mdll, head, tail, element) |
Insert an element at the tail of a MDLL. More... | |
#define | GNUNET_CONTAINER_MDLL_insert_after(mdll, head, tail, other, element) |
Insert an element into a MDLL after the given other element. More... | |
#define | GNUNET_CONTAINER_MDLL_insert_before(mdll, head, tail, other, element) |
Insert an element into a MDLL before the given other element. More... | |
#define | GNUNET_CONTAINER_MDLL_remove(mdll, head, tail, element) |
Remove an element from a MDLL. More... | |
#define GNUNET_CONTAINER_DLL_insert | ( | head, | |
tail, | |||
element | |||
) |
Insert an element at the head of a DLL.
Assumes that head, tail and element are structs with prev and next fields.
head | pointer to the head of the DLL |
tail | pointer to the tail of the DLL |
element | element to insert |
Definition at line 1797 of file gnunet_container_lib.h.
#define GNUNET_CONTAINER_DLL_insert_tail | ( | head, | |
tail, | |||
element | |||
) |
Insert an element at the tail of a DLL.
Assumes that head, tail and element are structs with prev and next fields.
head | pointer to the head of the DLL |
tail | pointer to the tail of the DLL |
element | element to insert |
Definition at line 1822 of file gnunet_container_lib.h.
#define GNUNET_CONTAINER_DLL_insert_after | ( | head, | |
tail, | |||
other, | |||
element | |||
) |
Insert an element into a DLL after the given other element.
Insert at the head if the other element is NULL.
head | pointer to the head of the DLL |
tail | pointer to the tail of the DLL |
other | prior element, NULL for insertion at head of DLL |
element | element to insert |
Definition at line 1848 of file gnunet_container_lib.h.
#define GNUNET_CONTAINER_DLL_insert_before | ( | head, | |
tail, | |||
other, | |||
element | |||
) |
Insert an element into a DLL before the given other element.
Insert at the tail if the other element is NULL.
head | pointer to the head of the DLL |
tail | pointer to the tail of the DLL |
other | prior element, NULL for insertion at head of DLL |
element | element to insert |
Definition at line 1882 of file gnunet_container_lib.h.
#define GNUNET_CONTAINER_DLL_remove | ( | head, | |
tail, | |||
element | |||
) |
Remove an element from a DLL.
Assumes that head, tail and element point to structs with prev and next fields.
Using the head or tail pointer as the element argument does NOT work with this macro. Make sure to store head/tail in another pointer and use it to remove the head or tail of the list.
head | pointer to the head of the DLL |
tail | pointer to the tail of the DLL |
element | element to remove |
Definition at line 1920 of file gnunet_container_lib.h.
#define GNUNET_CONTAINER_MDLL_insert | ( | mdll, | |
head, | |||
tail, | |||
element | |||
) |
Insert an element at the head of a MDLL.
Assumes that head, tail and element are structs with prev and next fields.
mdll | suffix name for the next and prev pointers in the element |
head | pointer to the head of the MDLL |
tail | pointer to the tail of the MDLL |
element | element to insert |
Definition at line 1951 of file gnunet_container_lib.h.
#define GNUNET_CONTAINER_MDLL_insert_tail | ( | mdll, | |
head, | |||
tail, | |||
element | |||
) |
Insert an element at the tail of a MDLL.
Assumes that head, tail and element are structs with prev and next fields.
mdll | suffix name for the next and prev pointers in the element |
head | pointer to the head of the MDLL |
tail | pointer to the tail of the MDLL |
element | element to insert |
Definition at line 1977 of file gnunet_container_lib.h.
#define GNUNET_CONTAINER_MDLL_insert_after | ( | mdll, | |
head, | |||
tail, | |||
other, | |||
element | |||
) |
Insert an element into a MDLL after the given other element.
Insert at the head if the other element is NULL.
mdll | suffix name for the next and prev pointers in the element |
head | pointer to the head of the MDLL |
tail | pointer to the tail of the MDLL |
other | prior element, NULL for insertion at head of MDLL |
element | element to insert |
Definition at line 2004 of file gnunet_container_lib.h.
#define GNUNET_CONTAINER_MDLL_insert_before | ( | mdll, | |
head, | |||
tail, | |||
other, | |||
element | |||
) |
Insert an element into a MDLL before the given other element.
Insert at the tail if the other element is NULL.
mdll | suffix name for the next and prev pointers in the element |
head | pointer to the head of the MDLL |
tail | pointer to the tail of the MDLL |
other | prior element, NULL for insertion at head of MDLL |
element | element to insert |
Definition at line 2039 of file gnunet_container_lib.h.
#define GNUNET_CONTAINER_MDLL_remove | ( | mdll, | |
head, | |||
tail, | |||
element | |||
) |
Remove an element from a MDLL.
Assumes that head, tail and element are structs with prev and next fields.
mdll | suffix name for the next and prev pointers in the element |
head | pointer to the head of the MDLL |
tail | pointer to the tail of the MDLL |
element | element to remove |
Definition at line 2074 of file gnunet_container_lib.h.