Provides transactional lists. More...
#include <picotm/compiler.h>
#include <picotm/config/picotm-txlib-config.h>
#include <stdbool.h>
#include <stddef.h>
#include "picotm-txlist-state.h"
Functions | |
PICOTM_NOTHROW struct txlist_entry * | txlist_back_tx (struct txlist *self) |
Returns the back-end entry of a transactional list without removing it. More... | |
PICOTM_NOTHROW struct txlist_entry * | txlist_begin_tx (struct txlist *self) |
Returns the first entry of a transactional list. More... | |
PICOTM_NOTHROW void | txlist_clear_tx (struct txlist *self) |
Removes all entries from a transactional list. More... | |
PICOTM_NOTHROW bool | txlist_empty_tx (struct txlist *self) |
Tests a transactional list for emptiness. More... | |
PICOTM_NOTHROW struct txlist_entry * | txlist_end_tx (struct txlist *self) |
Returns the terminator of a transactional list. More... | |
PICOTM_NOTHROW void | txlist_entry_init_tm (struct txlist_entry *self) |
Initializes an entry of a transactional list from within a transaction. More... | |
PICOTM_NOTHROW void | txlist_entry_uninit_tm (struct txlist_entry *self) |
Cleans up an entry of a transactional list from within a transaction. More... | |
PICOTM_NOTHROW void | txlist_erase_tx (struct txlist *self, struct txlist_entry *entry) |
Removes an entry from a transactional list. More... | |
PICOTM_NOTHROW struct txlist_entry * | txlist_front_tx (struct txlist *self) |
Returns the front-end entry of a transactional list without removing it. More... | |
PICOTM_NOTHROW void | txlist_insert_tx (struct txlist *self, struct txlist_entry *entry, struct txlist_entry *position) |
Inserts an entry into a transactional list. More... | |
PICOTM_NOTHROW struct txlist * | txlist_of_state_tx (struct txlist_state *list_state) |
Creates a transactional list for a list state. More... | |
PICOTM_NOTHROW void | txlist_pop_back_tx (struct txlist *self) |
Removes the last entry of a transactional list. More... | |
PICOTM_NOTHROW void | txlist_pop_front_tx (struct txlist *self) |
Removes the first entry of a transactional list. More... | |
PICOTM_NOTHROW void | txlist_push_back_tx (struct txlist *self, struct txlist_entry *entry) |
Inserts an entry at the end of a transactional list. More... | |
PICOTM_NOTHROW void | txlist_push_front_tx (struct txlist *self, struct txlist_entry *entry) |
Inserts an entry at the beginning of a transactional list. More... | |
PICOTM_NOTHROW size_t | txlist_size_tx (struct txlist *self) |
Returns the number of entries in a transactional list. More... | |
PICOTM_NOTHROW struct txlist_entry* txlist_back_tx | ( | struct txlist * | self | ) |
self | The transactional list. |
PICOTM_NOTHROW struct txlist_entry* txlist_begin_tx | ( | struct txlist * | self | ) |
self | The transactional list. |
PICOTM_NOTHROW void txlist_clear_tx | ( | struct txlist * | self | ) |
self | The transactional list. |
PICOTM_NOTHROW bool txlist_empty_tx | ( | struct txlist * | self | ) |
self | The transactional list. |
PICOTM_NOTHROW struct txlist_entry* txlist_end_tx | ( | struct txlist * | self | ) |
self | The transactional list. |
PICOTM_NOTHROW void txlist_entry_init_tm | ( | struct txlist_entry * | self | ) |
self | The list entry to initialize. |
PICOTM_NOTHROW void txlist_entry_uninit_tm | ( | struct txlist_entry * | self | ) |
self | The list entry to clean up. |
PICOTM_NOTHROW void txlist_erase_tx | ( | struct txlist * | self, |
struct txlist_entry * | entry | ||
) |
self | The transactional list. |
entry | The list entry to remove. |
PICOTM_NOTHROW struct txlist_entry* txlist_front_tx | ( | struct txlist * | self | ) |
self | The transactional list. |
PICOTM_NOTHROW void txlist_insert_tx | ( | struct txlist * | self, |
struct txlist_entry * | entry, | ||
struct txlist_entry * | position | ||
) |
self | The transactional list. |
entry | The list entry to insert. |
position | The list entry before which the new entry is inserted. |
PICOTM_NOTHROW struct txlist* txlist_of_state_tx | ( | struct txlist_state * | list_state | ) |
list_state | The list state. |
PICOTM_NOTHROW void txlist_pop_back_tx | ( | struct txlist * | self | ) |
self | The transactional list. |
PICOTM_NOTHROW void txlist_pop_front_tx | ( | struct txlist * | self | ) |
self | The transactional list. |
PICOTM_NOTHROW void txlist_push_back_tx | ( | struct txlist * | self, |
struct txlist_entry * | entry | ||
) |
self | The transactional list. |
entry | The list entry to insert. |
PICOTM_NOTHROW void txlist_push_front_tx | ( | struct txlist * | self, |
struct txlist_entry * | entry | ||
) |
self | The transactional list. |
entry | The list entry to insert. |
PICOTM_NOTHROW size_t txlist_size_tx | ( | struct txlist * | self | ) |
self | The transactional list. |