UCommon
|
Template value class to embed data structure into a linked list. More...
#include <linked.h>
Public Member Functions | |
linked_value () | |
Create embedded value object unlinked. | |
linked_value (LinkedObject **root) | |
Construct embedded object on a linked list. | |
linked_value (LinkedObject **root, const T &typed_value) | |
Assign embedded value from related type and link to list. | |
linked_value (OrderedIndex *index) | |
Construct embedded object on an ordered list. | |
linked_value (OrderedIndex *index, const T &typed_value) | |
Assign embedded value from related type and add to list. | |
operator T& () | |
void | operator() (const T data) |
T & | operator* () |
linked_value & | operator= (const T &typed_value) |
Assign embedded value from related type. | |
void | set (const T &typed_value) |
![]() | |
void | delist (LinkedObject **root) |
Locate and remove ourselves from a list of objects. | |
void | enlist (LinkedObject **root) |
Add our object to an existing linked list through a pointer. | |
LinkedObject * | getNext (void) const |
Get next effective object when iterating. | |
bool | is_member (LinkedObject *list) const |
Search to see if we are a member of a specific list. | |
virtual void | release (void) |
Release list, mark as no longer linked. | |
virtual void | retain (void) |
Retain by marking as self referenced list. | |
![]() | |
ObjectProtocol * | copy (void) |
Retain (increase retention of) object when copying. | |
void | operator++ (void) |
Increase retention operator. | |
void | operator-- (void) |
Decrease retention operator. | |
virtual | ~ObjectProtocol () |
Required virtual destructor. | |
Data Fields | |
T | value |
Protected Member Functions | |
linked_value (const linked_value &) | |
linked_value & | operator= (const linked_value &) |
![]() | |
LinkedObject () | |
Construct base class unattached to anyone. | |
LinkedObject (const LinkedObject &from) | |
LinkedObject (LinkedObject **root) | |
Construct base class attached to a chain of objects. | |
Additional Inherited Members | |
![]() | |
static unsigned | count (const LinkedObject *root) |
Count the number of linked objects in a list. | |
static LinkedObject * | getIndexed (LinkedObject *root, unsigned index) |
Get member by index. | |
static void | purge (LinkedObject *root) |
Release all objects from a list. | |
![]() | |
LinkedObject * | Next |
Template value class to embed data structure into a linked list.
This is used to form a class which can be linked together using either an ordered index or simple linked pointer chain and that contains a member value object. Most of the core logic for this template is found in and derived from the object_value template.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
T ucommon::linked_value< T, O >::value |