A smart pointer template for iterating linked lists.
More...
#include <linked.h>
Public Member Functions |
| T * | getNext (void) const |
| | Get the next member in linked list.
|
| T * | getPrev (void) const |
| | Get the previous member in double linked list.
|
| bool | isNext (void) const |
| | Test for next member in linked list.
|
| bool | isPrev (void) const |
| | Test for previous member in double linked list.
|
| | linked_pointer (T *pointer) |
| | Create a linked pointer and assign to start of a list.
|
| | linked_pointer (const linked_pointer &pointer) |
| | Create a copy of an existing linked pointer.
|
| | linked_pointer (LinkedObject *pointer) |
| | Create a linked pointer assigned from a raw linked object pointer.
|
| | linked_pointer (OrderedIndex *index) |
| | Create a linked pointer to examine an ordered index.
|
|
| linked_pointer () |
| | Create a linked pointer not attached to a list.
|
|
void | next (void) |
| | Move (iterate) pointer to next member in linked list.
|
| | operator bool () const |
| | Test if linked pointer is set/we are not at end of list.
|
| | operator T * () const |
| | Return object we point to by casting.
|
| bool | operator! () const |
| | Test if linked list is empty/we are at end of list.
|
| T * | operator* () const |
| | Return object we currently point to.
|
|
void | operator++ () |
| | Move (iterate) pointer to next member in linked list.
|
|
void | operator-- () |
| | Move (iterate) pointer to previous member in double linked list.
|
| T * | operator-> () const |
| | Return member from typed object our pointer references.
|
| void | operator= (T *pointer) |
| | Assign our typed iterative pointer from a matching typed object.
|
| void | operator= (linked_pointer &pointer) |
| | Assign our pointer from another pointer.
|
| void | operator= (OrderedIndex *index) |
| | Assign our pointer from the start of an ordered index.
|
| void | operator= (LinkedObject *pointer) |
| | Assign our pointer from a generic linked object pointer.
|
|
void | prev (void) |
| | Move (iterate) pointer to previous member in double linked list.
|
| LinkedObject ** | root (void) const |
| | Return pointer to our linked pointer to use as root node of a chain.
|
Detailed Description
A smart pointer template for iterating linked lists.
This class allows one to access a list of single or double linked objects and iterate through each member of a list.
- Author:
- David Sugar <dyfet@gnutelephony.org>
Constructor & Destructor Documentation
| ucommon::linked_pointer::linked_pointer |
( |
T * |
pointer | ) |
[inline] |
Create a linked pointer and assign to start of a list.
- Parameters:
-
| pointer | to first member of a linked list. |
Definition at line 1286 of file linked.h.
| ucommon::linked_pointer::linked_pointer |
( |
const linked_pointer & |
pointer | ) |
[inline] |
Create a copy of an existing linked pointer.
- Parameters:
-
Definition at line 1293 of file linked.h.
| ucommon::linked_pointer::linked_pointer |
( |
LinkedObject * |
pointer | ) |
[inline] |
Create a linked pointer assigned from a raw linked object pointer.
- Parameters:
-
Definition at line 1300 of file linked.h.
| ucommon::linked_pointer::linked_pointer |
( |
OrderedIndex * |
index | ) |
[inline] |
Create a linked pointer to examine an ordered index.
- Parameters:
-
| index | of linked objects to iterate through. |
Definition at line 1307 of file linked.h.
Member Function Documentation
| T* ucommon::linked_pointer::getNext |
( |
void |
| ) |
const [inline] |
Get the next member in linked list.
Do not change who we point to.
- Returns:
- next member in list or NULL if end of list.
Definition at line 1381 of file linked.h.
| T* ucommon::linked_pointer::getPrev |
( |
void |
| ) |
const [inline] |
Get the previous member in double linked list.
Do not change who we point to.
- Returns:
- previous member in list or NULL if start of list.
Definition at line 1389 of file linked.h.
| bool ucommon::linked_pointer::isNext |
( |
void |
| ) |
const [inline] |
Test for next member in linked list.
- Returns:
- true if there is more members after current one.
Definition at line 1408 of file linked.h.
| bool ucommon::linked_pointer::isPrev |
( |
void |
| ) |
const [inline] |
Test for previous member in double linked list.
- Returns:
- true if there is more members before current one.
Definition at line 1415 of file linked.h.
| ucommon::linked_pointer::operator bool |
( |
| ) |
const [inline] |
Test if linked pointer is set/we are not at end of list.
- Returns:
- true if we are not at end of list.
Definition at line 1422 of file linked.h.
| ucommon::linked_pointer::operator T * |
( |
| ) |
const [inline] |
Return object we point to by casting.
- Returns:
- object linked pointer references.
Definition at line 1362 of file linked.h.
| bool ucommon::linked_pointer::operator! |
( |
| ) |
const [inline] |
Test if linked list is empty/we are at end of list.
- Returns:
- true if we are at end of list.
Definition at line 1429 of file linked.h.
| T* ucommon::linked_pointer::operator* |
( |
| ) |
const [inline] |
Return object we currently point to.
- Returns:
- object linked pointer references.
Definition at line 1355 of file linked.h.
| T* ucommon::linked_pointer::operator-> |
( |
| ) |
const [inline] |
Return member from typed object our pointer references.
- Returns:
- evaluated member of object we point to.
Definition at line 1348 of file linked.h.
| void ucommon::linked_pointer::operator= |
( |
T * |
pointer | ) |
[inline] |
Assign our typed iterative pointer from a matching typed object.
- Parameters:
-
Definition at line 1320 of file linked.h.
| void ucommon::linked_pointer::operator= |
( |
linked_pointer & |
pointer | ) |
[inline] |
Assign our pointer from another pointer.
- Parameters:
-
Definition at line 1327 of file linked.h.
| void ucommon::linked_pointer::operator= |
( |
OrderedIndex * |
index | ) |
[inline] |
Assign our pointer from the start of an ordered index.
- Parameters:
-
| index | to assign pointer from. |
Definition at line 1334 of file linked.h.
| void ucommon::linked_pointer::operator= |
( |
LinkedObject * |
pointer | ) |
[inline] |
Assign our pointer from a generic linked object pointer.
- Parameters:
-
Definition at line 1341 of file linked.h.
| LinkedObject** ucommon::linked_pointer::root |
( |
void |
| ) |
const [inline] |
Return pointer to our linked pointer to use as root node of a chain.
- Returns:
- our object pointer as a root index.
Definition at line 1436 of file linked.h.
The documentation for this class was generated from the following file: