ucommon
Public Member Functions
ucommon::linked_value< T, O > Class Template Reference

Template value class to embed data structure into a linked list. More...

#include <linked.h>

Inheritance diagram for ucommon::linked_value< T, O >:
Inheritance graph
[legend]
Collaboration diagram for ucommon::linked_value< T, O >:
Collaboration graph
[legend]

Public Member Functions

 linked_value ()
 Create embedded value object unlinked.
 linked_value (LinkedObject **root)
 Construct embedded object on a linked list.
 linked_value (OrderedIndex *index)
 Construct embedded object on an ordered list.
 linked_value (LinkedObject **root, T &typed_value)
 Assign embedded value from related type and link to list.
 linked_value (OrderedIndex *index, T &typed_value)
 Assign embedded value from related type and add to list.
void operator= (T &typed_value)
 Assign embedded value from related type.
- Public Member Functions inherited from ucommon::object_value< T, O >
 object_value ()
 Construct composite value object.
 object_value (T &existing)
 Construct composite value object and assign from existing data value.
 operator T & ()
 Retrieve data value by casting reference.
T & operator() ()
void operator() (T &data)
 Set data value by expression reference.
T & operator* ()
 Pointer reference to embedded data value.

Additional Inherited Members

- Data Fields inherited from ucommon::object_value< T, O >
value
 Embedded data value.
- Protected Member Functions inherited from ucommon::object_value< T, O >
void set (T &object)
 Assign our value from a typed data object.

Detailed Description

template<typename T, class O = OrderedObject>
class ucommon::linked_value< T, O >

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.

Author
David Sugar dyfet.nosp@m.@gnu.nosp@m.telep.nosp@m.hony.nosp@m..org

Definition at line 1088 of file linked.h.

Constructor & Destructor Documentation

template<typename T , class O = OrderedObject>
ucommon::linked_value< T, O >::linked_value ( LinkedObject **  root)
inline

Construct embedded object on a linked list.

Parameters
rootnode or pointer for list.

Definition at line 1100 of file linked.h.

template<typename T , class O = OrderedObject>
ucommon::linked_value< T, O >::linked_value ( OrderedIndex index)
inline

Construct embedded object on an ordered list.

Parameters
indexpointer for the ordered list.

Definition at line 1107 of file linked.h.

template<typename T , class O = OrderedObject>
ucommon::linked_value< T, O >::linked_value ( LinkedObject **  root,
T &  typed_value 
)
inline

Assign embedded value from related type and link to list.

Parameters
rootnode or pointer for list.
typed_valueto assign.

Definition at line 1115 of file linked.h.

template<typename T , class O = OrderedObject>
ucommon::linked_value< T, O >::linked_value ( OrderedIndex index,
T &  typed_value 
)
inline

Assign embedded value from related type and add to list.

Parameters
indexto list our object on.
typed_valueto assign.

Definition at line 1123 of file linked.h.

Member Function Documentation

template<typename T , class O = OrderedObject>
void ucommon::linked_value< T, O >::operator= ( T &  typed_value)
inline

Assign embedded value from related type.

Parameters
typed_valueto assign.

Reimplemented from ucommon::object_value< T, O >.

Definition at line 1130 of file linked.h.


The documentation for this class was generated from the following file: