ucommon
7.0.0
About: GNU uCommon C++ is a portable and optimized class framework for writing C++ applications that need to use threads and support concurrent synchronization, and that use sockets, XML parsing, object serialization, thread-optimized string and data structure classes, etc..
![]() ![]() |
#include <linked.h>
Public Member Functions | |
linked_pointer (T *pointer) | |
linked_pointer (const linked_pointer &pointer) | |
linked_pointer (LinkedObject *pointer) | |
linked_pointer (const LinkedObject *pointer) | |
linked_pointer (OrderedIndex *index) | |
linked_pointer () | |
void | operator= (T *pointer) |
void | operator= (linked_pointer &pointer) |
void | operator= (OrderedIndex *index) |
void | operator= (LinkedObject *pointer) |
T * | operator-> () const |
T * | operator* () const |
operator T* () const | |
void | prev (void) |
void | next (void) |
T * | getNext (void) const |
T * | getPrev (void) const |
void | operator++ () |
void | operator-- () |
bool | is_next (void) const |
bool | is_prev (void) const |
operator bool () const | |
bool | operator! () const |
bool | is () const |
LinkedObject ** | root (void) const |
Private Attributes | |
T * | ptr |
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.
|
inline |
Create a linked pointer and assign to start of a list.
pointer | to first member of a linked list. |
Definition at line 1001 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Create a copy of an existing linked pointer.
pointer | to copy from. |
Definition at line 1009 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Create a linked pointer assigned from a raw linked object pointer.
pointer | to linked object. |
Definition at line 1017 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Definition at line 1021 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Create a linked pointer to examine an ordered index.
index | of linked objects to iterate through. |
Definition at line 1029 of file linked.h.
References ucommon::OrderedIndex::begin(), and ucommon::linked_pointer< T >::ptr.
|
inline |
Create a linked pointer not attached to a list.
Definition at line 1036 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Get the next member in linked list. Do not change who we point to.
Definition at line 1114 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Get the previous member in double linked list. Do not change who we point to.
Definition at line 1123 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Definition at line 1173 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Test for next member in linked list.
Definition at line 1145 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Test for previous member in double linked list.
Definition at line 1153 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Move (iterate) pointer to next member in linked list.
Definition at line 1106 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
Referenced by ucommon::mapref< K, V >::at(), ucommon::listref< T >::at(), ucommon::keydata::clear(), ucommon::shell::collapse(), ucommon::cidr::container(), ucommon::MapRef::Map::dealloc(), ucommon::mapref< K, V >::erase(), ucommon::listref< T >::erase(), ucommon::TimerQueue::expire(), ucommon::cidr::find(), ucommon::NamedTree::find(), ucommon::keydata::get(), ucommon::keyfile::get(), ucommon::mapped_pointer< K, V >::get(), ucommon::shell::getargv(), ucommon::NamedTree::getChild(), ucommon::ConditionalLock::getContext(), ucommon::NamedTree::getLeaf(), ucommon::StringPager::join(), ucommon::NamedTree::leaf(), ucommon::ObjectPager::list(), ucommon::StringPager::list(), ucommon::keyfile::load(), main(), ucommon::ObjectPager::pop(), ucommon::StringPager::pop(), ucommon::_stream_operators::print(), ucommon::Thread::release(), ucommon::mapped_pointer< K, V >::remove(), ucommon::keyfile::save(), ucommon::keydata::set(), ucommon::StringPager::sort(), ucommon::mapref< K, V >::take(), ucommon::listref< T >::take(), and ucommon::mapref< K, V >::value().
|
inline |
Test if linked pointer is set/we are not at end of list.
Definition at line 1161 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Return object we point to by casting.
Definition at line 1092 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Test if linked list is empty/we are at end of list.
Definition at line 1169 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Return object we currently point to.
Definition at line 1084 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Move (iterate) pointer to next member in linked list.
Definition at line 1130 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Move (iterate) pointer to previous member in double linked list.
Definition at line 1137 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Return member from typed object our pointer references.
Definition at line 1076 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Assign our pointer from another pointer.
pointer | to assign from. |
Definition at line 1052 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Assign our pointer from a generic linked object pointer.
pointer | of linked list. |
Definition at line 1068 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Assign our pointer from the start of an ordered index.
index | to assign pointer from. |
Definition at line 1060 of file linked.h.
References ucommon::OrderedIndex::begin(), and ucommon::linked_pointer< T >::ptr.
|
inline |
Assign our typed iterative pointer from a matching typed object.
pointer | to typed object. |
Definition at line 1044 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Move (iterate) pointer to previous member in double linked list.
Definition at line 1099 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
inline |
Return pointer to our linked pointer to use as root node of a chain.
Definition at line 1181 of file linked.h.
References ucommon::linked_pointer< T >::ptr.
|
private |
Definition at line 994 of file linked.h.
Referenced by ucommon::linked_pointer< T >::getNext(), ucommon::linked_pointer< T >::getPrev(), ucommon::linked_pointer< sockaddr_struct >::in(), ucommon::linked_pointer< T >::is(), ucommon::linked_pointer< T >::is_next(), ucommon::linked_pointer< T >::is_prev(), ucommon::linked_pointer< T >::linked_pointer(), ucommon::linked_pointer< sockaddr_struct >::linked_pointer(), ucommon::linked_pointer< T >::next(), ucommon::linked_pointer< sockaddr_struct >::next(), ucommon::linked_pointer< T >::operator bool(), ucommon::linked_pointer< sockaddr_struct >::operator bool(), ucommon::linked_pointer< sockaddr_struct >::operator const struct sockaddr *(), ucommon::linked_pointer< sockaddr_struct >::operator const struct sockaddr_in *(), ucommon::linked_pointer< T >::operator T*(), ucommon::linked_pointer< T >::operator!(), ucommon::linked_pointer< sockaddr_struct >::operator!(), ucommon::linked_pointer< sockaddr_struct >::operator()(), ucommon::linked_pointer< T >::operator*(), ucommon::linked_pointer< sockaddr_struct >::operator*(), ucommon::linked_pointer< T >::operator++(), ucommon::linked_pointer< T >::operator--(), ucommon::linked_pointer< T >::operator->(), ucommon::linked_pointer< sockaddr_struct >::operator->(), ucommon::linked_pointer< T >::operator=(), ucommon::linked_pointer< sockaddr_struct >::operator=(), ucommon::linked_pointer< T >::prev(), ucommon::linked_pointer< T >::root(), and ucommon::linked_pointer< sockaddr_struct >::set().