Public Types | Public Member Functions | Private Attributes

YIterator1< X, container_type > Class Template Reference

Bidirectional const_iterator for XMultiSkipList. More...

#include <CSCompositeSkipList.h>

List of all members.

Public Types

typedef std::iterator
< std::bidirectional_iterator_tag,
typename
container_type::value_type,
typename
container_type::difference_type,
const typename
container_type::pointer,
typename
container_type::const_reference > 
baseclass
typedef
baseclass::iterator_category 
iterator_category
typedef baseclass::value_type value_type
typedef baseclass::difference_type difference_type
typedef baseclass::pointer pointer
typedef baseclass::reference reference
typedef container_type::data_type data_type
typedef container_type::node_type node_type
typedef container_type::size_type size_type
typedef container_type::mapped_type mapped_type
typedef
container_type::const_mapped_type 
const_mapped_type
typedef
container_type::mapped_type_reference 
mapped_type_reference
typedef
container_type::const_mapped_type_reference 
const_mapped_type_reference
typedef container_type::T0 T0
typedef container_type::T1 T1

Public Member Functions

 YIterator1 ()
 Default constructor. O(1) (Trivial Iterator)
 YIterator1 (const T1 &t1)
 Copy constructor. O(1) (Output Iterator)
 YIterator1 (const T0 &t0)
 Copy constructor. O(1) (Output Iterator)
 YIterator1 (const data_type *data, node_type *p)
 Custom constructor. O(1)
template<int nX, class ncontainer_type >
 YIterator1 (const XIterator0< nX, ncontainer_type > &t0)
 Conversion constructor. O(logn)
template<int nX, class ncontainer_type >
 YIterator1 (const XIterator1< nX, ncontainer_type > &t1)
 Conversion constructor. O(logn)
template<int nX, class ncontainer_type >
 YIterator1 (const YIterator0< nX, ncontainer_type > &t0)
 Conversion constructor. O(logn)
template<int nX, class ncontainer_type >
 YIterator1 (const YIterator1< nX, ncontainer_type > &t1)
 Conversion constructor. O(logn)
template<int nX, class ncontainer_type >
T1 & operator= (const XIterator0< nX, ncontainer_type > &t0)
 Conversion constructor. O(logn)
template<int nX, class ncontainer_type >
T1 & operator= (const XIterator1< nX, ncontainer_type > &t1)
 Conversion constructor. O(logn)
template<int nX, class ncontainer_type >
T1 & operator= (const YIterator0< nX, ncontainer_type > &t0)
 Conversion constructor. O(logn)
template<int nX, class ncontainer_type >
T1 & operator= (const YIterator1< nX, ncontainer_type > &t1)
 Conversion constructor. O(logn)
node_type * getNode () const
 Returns internal node. Only use for converting iterators. O(1)
void setNode (node_type *n)
 Set internal node. Internal use only. O(1)
container_type * getContainer () const
 Get current container for this iterator. O(1)
bool operator== (const T0 &other) const
 Equality Operator. O(1) (Trivial Iterator)
bool operator!= (const T0 &other) const
 Not Equal Operator. O(1) (Trivial Iterator)
bool operator== (const T1 &other) const
 Equality Operator. O(1) (Trivial Iterator)
bool operator!= (const T1 &other) const
 Not Equal Operator. O(1) (Trivial Iterator)
T1 & operator++ ()
 Pre Increment Operator. O(1) (Forward Iterator)
T1 operator++ (int)
 Post Increment Operator. O(1) (Forward Iterator)
T1 & operator-- ()
 Pre Decrement Operator. O(1) (Bidirectional Iterator)
T1 operator-- (int)
 Post Decrement Operator. O(1) (Bidirectional Iterator)
reference operator* () const
 Dereference Operator. O(1) (Trivial Iterator)
pointer operator-> () const
 Pointer Operator. O(1) (Trivial Iterator)
bool operator< (const T0 &other) const
 LessThan Operator. O(1) (LessThan Comparable)
bool operator<= (const T0 &other) const
 LessThanOrEqual Operator. O(1) (LessThan Comparable)
bool operator> (const T0 &other) const
 GreaterThan Operator. O(1) (LessThan Comparable)
bool operator>= (const T0 &other) const
 GreaterThanOrEqual Operator. O(1) (LessThan Comparable)
bool operator< (const T1 &other) const
 LessThan Operator. O(1) (LessThan Comparable)
bool operator<= (const T1 &other) const
 LessThanOrEqual Operator. O(1) (LessThan Comparable)
bool operator> (const T1 &other) const
 GreaterThan Operator. O(1) (LessThan Comparable)
bool operator>= (const T1 &other) const
 GreaterThanOrEqual Operator. O(1) (LessThan Comparable)

Private Attributes

data_type * data
 Shared data where list is stored.
node_type * FNode
 Node pointed to by this iterator.

Detailed Description

template<unsigned int X, class container_type>
class YIterator1< X, container_type >

Bidirectional const_iterator for XMultiSkipList.

Template Parameters:
XIndex of the internal container within data_type for this iterator.
container_typeType that represents the internal container for this iterator.

Constructor & Destructor Documentation

template<unsigned int X, class container_type>
YIterator1< X, container_type >::YIterator1 ( const T1 &  t1) [inline]

Copy constructor. O(1) (Output Iterator)

Parameters:
t1const_iterator to copy.
template<unsigned int X, class container_type>
YIterator1< X, container_type >::YIterator1 ( const T0 &  t0) [inline]

Copy constructor. O(1) (Output Iterator)

Parameters:
t0iterator to copy.
template<unsigned int X, class container_type>
YIterator1< X, container_type >::YIterator1 ( const data_type *  data,
node_type *  p 
) [inline]

Custom constructor. O(1)

Parameters:
dataShared data that contains all the elements.
pNode pointed to by this iterator.
template<unsigned int X, class container_type>
template<int nX, class ncontainer_type >
YIterator1< X, container_type >::YIterator1 ( const XIterator0< nX, ncontainer_type > &  t0) [inline]

Conversion constructor. O(logn)

Converts an iterator from another delegate container within the same composite container.

Template Parameters:
nXIndex of the other delegate container for t0.
ncontainer_typeType that represents the other delegate container for t0.
Parameters:
t0Iterator to convert.
template<unsigned int X, class container_type>
template<int nX, class ncontainer_type >
YIterator1< X, container_type >::YIterator1 ( const XIterator1< nX, ncontainer_type > &  t1) [inline]

Conversion constructor. O(logn)

Converts a const_iterator from another delegate container within the same composite container.

Template Parameters:
nXIndex of the other delegate container for t0.
ncontainer_typeType that represents the other delegate container for t0.
Parameters:
t1Const_iterator to convert.
template<unsigned int X, class container_type>
template<int nX, class ncontainer_type >
YIterator1< X, container_type >::YIterator1 ( const YIterator0< nX, ncontainer_type > &  t0) [inline]

Conversion constructor. O(logn)

Converts an iterator from another delegate container within the same composite container.

Template Parameters:
nXIndex of the other delegate container for t0.
ncontainer_typeType that represents the other delegate container for t0.
Parameters:
t0Iterator to convert.
template<unsigned int X, class container_type>
template<int nX, class ncontainer_type >
YIterator1< X, container_type >::YIterator1 ( const YIterator1< nX, ncontainer_type > &  t1) [inline]

Conversion constructor. O(logn)

Converts a const_iterator from another delegate container within the same composite container.

Template Parameters:
nXIndex of the other delegate container for t0.
ncontainer_typeType that represents the other delegate container for t0.
Parameters:
t1Const_iterator to convert.

Member Function Documentation

template<unsigned int X, class container_type>
template<int nX, class ncontainer_type >
T1& YIterator1< X, container_type >::operator= ( const XIterator0< nX, ncontainer_type > &  t0) [inline]

Conversion constructor. O(logn)

Converts an iterator from another delegate container within the same composite container.

Template Parameters:
nXIndex of the other delegate container for t0.
ncontainer_typeType that represents the other delegate container for t0.
Parameters:
t0Iterator to convert.
Returns:
self reference.
template<unsigned int X, class container_type>
template<int nX, class ncontainer_type >
T1& YIterator1< X, container_type >::operator= ( const XIterator1< nX, ncontainer_type > &  t1) [inline]

Conversion constructor. O(logn)

Converts a const_iterator from another delegate container within the same composite container.

Template Parameters:
nXIndex of the other delegate container for t0.
ncontainer_typeType that represents the other delegate container for t0.
Parameters:
t1Const_iterator to convert.
Returns:
self reference.
template<unsigned int X, class container_type>
template<int nX, class ncontainer_type >
T1& YIterator1< X, container_type >::operator= ( const YIterator0< nX, ncontainer_type > &  t0) [inline]

Conversion constructor. O(logn)

Converts an iterator from another delegate container within the same composite container.

Template Parameters:
nXIndex of the other delegate container for t0.
ncontainer_typeType that represents the other delegate container for t0.
Parameters:
t0Iterator to convert.
Returns:
self reference.
template<unsigned int X, class container_type>
template<int nX, class ncontainer_type >
T1& YIterator1< X, container_type >::operator= ( const YIterator1< nX, ncontainer_type > &  t1) [inline]

Conversion constructor. O(logn)

Converts a const_iterator from another delegate container within the same composite container.

Template Parameters:
nXIndex of the other delegate container for t0.
ncontainer_typeType that represents the other delegate container for t0.
Parameters:
t1Const_iterator to convert.
Returns:
self reference.
template<unsigned int X, class container_type>
bool YIterator1< X, container_type >::operator== ( const T0 &  other) const [inline]

Equality Operator. O(1) (Trivial Iterator)

Parameters:
otheriterator to compare against.
template<unsigned int X, class container_type>
bool YIterator1< X, container_type >::operator!= ( const T0 &  other) const [inline]

Not Equal Operator. O(1) (Trivial Iterator)

Parameters:
otheriterator to compare against.
template<unsigned int X, class container_type>
bool YIterator1< X, container_type >::operator== ( const T1 &  other) const [inline]

Equality Operator. O(1) (Trivial Iterator)

Parameters:
otherconst_iterator to compare against.
template<unsigned int X, class container_type>
bool YIterator1< X, container_type >::operator!= ( const T1 &  other) const [inline]

Not Equal Operator. O(1) (Trivial Iterator)

Parameters:
otherconst_iterator to compare against.
template<unsigned int X, class container_type>
T1& YIterator1< X, container_type >::operator++ ( ) [inline]

Pre Increment Operator. O(1) (Forward Iterator)

const_iterator points to next node in the list.

Returns:
self reference to const_iterator after being incremented.
template<unsigned int X, class container_type>
T1 YIterator1< X, container_type >::operator++ ( int  ) [inline]

Post Increment Operator. O(1) (Forward Iterator)

const_iterator points to next node in the list.

Returns:
incremented copy of const_iterator.
template<unsigned int X, class container_type>
T1& YIterator1< X, container_type >::operator-- ( ) [inline]

Pre Decrement Operator. O(1) (Bidirectional Iterator)

const_iterator points to previous node in the list.

Returns:
self reference to const_iterator after being decremented.
template<unsigned int X, class container_type>
T1 YIterator1< X, container_type >::operator-- ( int  ) [inline]

Post Decrement Operator. O(1) (Bidirectional Iterator)

const_iterator points to previous node in the list.

Returns:
decremented copy of const_iterator.
template<unsigned int X, class container_type>
reference YIterator1< X, container_type >::operator* ( ) const [inline]

Dereference Operator. O(1) (Trivial Iterator)

Gain access to value that the const_iterator points to.

Returns:
Value reference pointed to by this const_iterator.
template<unsigned int X, class container_type>
pointer YIterator1< X, container_type >::operator-> ( ) const [inline]

Pointer Operator. O(1) (Trivial Iterator)

Gain access to members of of the value pointed to by this const_iterator.

Returns:
Value pointer pointed to by this const_iterator.
template<unsigned int X, class container_type>
bool YIterator1< X, container_type >::operator< ( const T0 &  other) const [inline]

LessThan Operator. O(1) (LessThan Comparable)

Parameters:
otheriterator to compare against.
template<unsigned int X, class container_type>
bool YIterator1< X, container_type >::operator<= ( const T0 &  other) const [inline]

LessThanOrEqual Operator. O(1) (LessThan Comparable)

Parameters:
otheriterator to compare against.
template<unsigned int X, class container_type>
bool YIterator1< X, container_type >::operator> ( const T0 &  other) const [inline]

GreaterThan Operator. O(1) (LessThan Comparable)

Parameters:
otheriterator to compare against.
template<unsigned int X, class container_type>
bool YIterator1< X, container_type >::operator>= ( const T0 &  other) const [inline]

GreaterThanOrEqual Operator. O(1) (LessThan Comparable)

Parameters:
otheriterator to compare against.
template<unsigned int X, class container_type>
bool YIterator1< X, container_type >::operator< ( const T1 &  other) const [inline]

LessThan Operator. O(1) (LessThan Comparable)

Parameters:
otherconst_iterator to compare against.
template<unsigned int X, class container_type>
bool YIterator1< X, container_type >::operator<= ( const T1 &  other) const [inline]

LessThanOrEqual Operator. O(1) (LessThan Comparable)

Parameters:
otherconst_iterator to compare against.
template<unsigned int X, class container_type>
bool YIterator1< X, container_type >::operator> ( const T1 &  other) const [inline]

GreaterThan Operator. O(1) (LessThan Comparable)

Parameters:
otherconst_iterator to compare against.
template<unsigned int X, class container_type>
bool YIterator1< X, container_type >::operator>= ( const T1 &  other) const [inline]

GreaterThanOrEqual Operator. O(1) (LessThan Comparable)

Parameters:
otherconst_iterator to compare against.

The documentation for this class was generated from the following file:
 All Classes Files Functions Variables Typedefs