L4Re Operating System Framework
Interface and Usage Documentation
|
General double-linked list of unspecified cxx::H_list_item elements. More...
#include <hlist>
Public Member Functions | |
void | add (T *e) |
Add element to the front of the list. | |
void | push_front (T *e) |
Add element to the front of the list. | |
T * | pop_front () |
Remove and return the head element of the list. | |
Iterator | insert (T *e, Iterator const &pred) |
Insert an element at the iterator position. | |
Public Member Functions inherited from cxx::Bits::Basic_list< POLICY > | |
bool | empty () const |
Check if the list is empty. | |
Value_type | front () const |
Return the first element in the list. | |
void | clear () |
Remove all elements from the list. | |
Iterator | begin () |
Return an iterator to the beginning of the list. | |
Const_iterator | begin () const |
Return a const iterator to the beginning of the list. | |
Const_iterator | end () const |
Return a const iterator to the end of the list. | |
Iterator | end () |
Return an iterator to the end of the list. | |
Static Public Member Functions | |
static Iterator | iter (T *c) |
Return an iterator for an arbitrary list element. | |
static bool | in_list (T const *e) |
Check if the given element is currently part of a list. | |
static Iterator | insert_after (T *e, Iterator const &pred) |
Insert an element after the iterator position. | |
static void | insert_before (T *e, Iterator const &succ) |
Insert an element before the iterator position. | |
static void | replace (T *p, T *e) |
Replace an element in a list with a new element. | |
static void | remove (T *e) |
Remove the given element from its list. | |
static Iterator | erase (Iterator const &e) |
Remove the element at the given iterator position. | |
Static Public Member Functions inherited from cxx::Bits::Basic_list< POLICY > | |
static Const_iterator | iter (Const_value_type c) |
Return a const iterator that begins at the given element. | |
Additional Inherited Members | |
Protected Attributes inherited from cxx::Bits::Basic_list< POLICY > | |
POLICY::Head_type | _f |
Pointer to front of the list. | |
General double-linked list of unspecified cxx::H_list_item elements.
Most of the time, you want to use H_list_t.
|
inlinestatic |
Remove the element at the given iterator position.
e | Iterator pointing to the element to be removed. Must not point to end(). |
e
parameter. Definition at line 247 of file hlist.
Referenced by L4::Ipc_svr::Timeout_queue::handle_expired_timeouts().
|
inline |
Insert an element at the iterator position.
e | New Element to be inserted |
pred | Iterator pointing to the element after which the element will be inserted. If end() is given, the element will be inserted at the beginning of the queue. |
Definition at line 144 of file hlist.
References cxx::Bits::Basic_list< POLICY >::_f, cxx::Bits::Basic_list< POLICY >::end(), and cxx::H_list< T, POLICY >::iter().
|
inlinestatic |
Insert an element after the iterator position.
e | New element to be inserted. |
pred | Iterator pointing to the element after which the element will be inserted. Must not be end(). |
Definition at line 171 of file hlist.
References cxx::H_list< T, POLICY >::iter().
|
inlinestatic |
Insert an element before the iterator position.
e | New element to be inserted. |
succ | Iterator pointing to the element before which the element will be inserted. Must not be end(). |
Definition at line 191 of file hlist.
Referenced by L4::Ipc_svr::Timeout_queue::add().
|
inlinestatic |
Return an iterator for an arbitrary list element.
c | List element to start the iteration. |
Definition at line 104 of file hlist.
Referenced by cxx::H_list< T, POLICY >::insert(), and cxx::H_list< T, POLICY >::insert_after().
|
inline |
Remove and return the head element of the list.
Definition at line 127 of file hlist.
References cxx::Bits::Basic_list< POLICY >::front(), and cxx::H_list< T, POLICY >::remove().
|
inlinestatic |
Remove the given element from its list.
e | Element to be removed. Must be in a list. |
Definition at line 231 of file hlist.
Referenced by cxx::Base_slab< Obj_size, Slab_size, Max_free, Alloc >::alloc(), cxx::Base_slab< Obj_size, Slab_size, Max_free, Alloc >::free(), cxx::H_list< T, POLICY >::pop_front(), and L4::Ipc_svr::Timeout_queue::remove().
|
inlinestatic |