Public Types | Public Member Functions | Public Attributes | Private Attributes

SSkipList< T, Pr, R >::T0 Class Reference

iterator More...

#include <CSSSkipList.h>

List of all members.

Public Types

typedef std::iterator
< std::bidirectional_iterator_tag,
value_type > 
baseclass
typedef
std::random_acces_iterator_tag 
iterator_category
typedef baseclass::value_type value_type
typedef baseclass::value_type * pointer
typedef baseclass::value_type & reference
typedef ptrdiff_t difference_type

Public Member Functions

 T0 ()
 Default constructor. O(1) (Trivial Iterator)
 T0 (const T0 &t0)
 Copy constructor. O(1) (Output Iterator)
 T0 (const T1 &t1)
 Copy constructor. O(1) (Output Iterator)
 T0 (container_type *container, node_type *p)
 Custom constructor. 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)
T0operator++ ()
 Pre Increment Operator. O(1) (Forward Iterator)
T0 operator++ (int)
 Post Increment Operator. O(1) (Forward Iterator)
T0operator-- ()
 Pre Decrement Operator. O(logn) (Bidirectional Iterator LOGN)
T0 operator-- (int)
 Post Decrement Operator. O(logn) (Bidirectional Iterator LOGN)
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)

Public Attributes

friend T1
friend container_type

Private Attributes

container_typecontainer
 SkipList container.
node_typenode
 Node pointed to by this iterator.

Detailed Description

template<class T, class Pr = std::less<T>, class R = RNG>
class SSkipList< T, Pr, R >::T0

iterator

iterator for SSkipList


Constructor & Destructor Documentation

template<class T, class Pr = std::less<T>, class R = RNG>
SSkipList< T, Pr, R >::T0::T0 ( const T0 t0) [inline]

Copy constructor. O(1) (Output Iterator)

Parameters:
t0iterator to copy.
template<class T, class Pr = std::less<T>, class R = RNG>
SSkipList< T, Pr, R >::T0::T0 ( const T1 t1) [inline]

Copy constructor. O(1) (Output Iterator)

Parameters:
t1const_iterator to copy.
template<class T, class Pr = std::less<T>, class R = RNG>
SSkipList< T, Pr, R >::T0::T0 ( container_type container,
node_type p 
) [inline]

Custom constructor. O(1)

Parameters:
containerSkipList that contains the current node.
pNode pointed to by this iterator.

Member Function Documentation

template<class T, class Pr = std::less<T>, class R = RNG>
bool SSkipList< T, Pr, R >::T0::operator== ( const T0 other) const [inline]

Equality Operator. O(1) (Trivial Iterator)

Parameters:
otheriterator to compare against.
template<class T, class Pr = std::less<T>, class R = RNG>
bool SSkipList< T, Pr, R >::T0::operator!= ( const T0 other) const [inline]

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

Parameters:
otheriterator to compare against.
template<class T, class Pr = std::less<T>, class R = RNG>
bool SSkipList< T, Pr, R >::T0::operator== ( const T1 other) const [inline]

Equality Operator. O(1) (Trivial Iterator)

Parameters:
otherconst_iterator to compare against.
template<class T, class Pr = std::less<T>, class R = RNG>
bool SSkipList< T, Pr, R >::T0::operator!= ( const T1 other) const [inline]

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

Parameters:
otherconst_iterator to compare against.
template<class T, class Pr = std::less<T>, class R = RNG>
T0& SSkipList< T, Pr, R >::T0::operator++ ( ) [inline]

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

iterator points to next node in the list.

Returns:
self reference to iterator after being incremented.
template<class T, class Pr = std::less<T>, class R = RNG>
T0 SSkipList< T, Pr, R >::T0::operator++ ( int  ) [inline]

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

iterator points to next node in the list.

Returns:
incremented copy of iterator.
template<class T, class Pr = std::less<T>, class R = RNG>
T0& SSkipList< T, Pr, R >::T0::operator-- ( ) [inline]

Pre Decrement Operator. O(logn) (Bidirectional Iterator LOGN)

iterator points to previous node in the list.

Returns:
self reference to iterator after being decremented.
template<class T, class Pr = std::less<T>, class R = RNG>
T0 SSkipList< T, Pr, R >::T0::operator-- ( int  ) [inline]

Post Decrement Operator. O(logn) (Bidirectional Iterator LOGN)

iterator points to previous node in the list.

Returns:
decremented copy of iterator.
template<class T, class Pr = std::less<T>, class R = RNG>
reference SSkipList< T, Pr, R >::T0::operator* ( ) const [inline]

Dereference Operator. O(1) (Trivial Iterator)

Gain access to value that the iterator points to.

Returns:
Value reference pointed to by this iterator.
template<class T, class Pr = std::less<T>, class R = RNG>
pointer SSkipList< T, Pr, R >::T0::operator-> ( ) const [inline]

Pointer Operator. O(1) (Trivial Iterator)

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

Returns:
Value pointer pointed to by this iterator.
template<class T, class Pr = std::less<T>, class R = RNG>
bool SSkipList< T, Pr, R >::T0::operator< ( const T0 other) const [inline]

LessThan Operator. O(1) (LessThan Comparable)

Parameters:
otheriterator to compare against.
template<class T, class Pr = std::less<T>, class R = RNG>
bool SSkipList< T, Pr, R >::T0::operator<= ( const T0 other) const [inline]

LessThanOrEqual Operator. O(1) (LessThan Comparable)

Parameters:
otheriterator to compare against.
template<class T, class Pr = std::less<T>, class R = RNG>
bool SSkipList< T, Pr, R >::T0::operator> ( const T0 other) const [inline]

GreaterThan Operator. O(1) (LessThan Comparable)

Parameters:
otheriterator to compare against.
template<class T, class Pr = std::less<T>, class R = RNG>
bool SSkipList< T, Pr, R >::T0::operator>= ( const T0 other) const [inline]

GreaterThanOrEqual Operator. O(1) (LessThan Comparable)

Parameters:
otheriterator to compare against.
template<class T, class Pr = std::less<T>, class R = RNG>
bool SSkipList< T, Pr, R >::T0::operator< ( const T1 other) const [inline]

LessThan Operator. O(1) (LessThan Comparable)

Parameters:
otherconst_iterator to compare against.
template<class T, class Pr = std::less<T>, class R = RNG>
bool SSkipList< T, Pr, R >::T0::operator<= ( const T1 other) const [inline]

LessThanOrEqual Operator. O(1) (LessThan Comparable)

Parameters:
otherconst_iterator to compare against.
template<class T, class Pr = std::less<T>, class R = RNG>
bool SSkipList< T, Pr, R >::T0::operator> ( const T1 other) const [inline]

GreaterThan Operator. O(1) (LessThan Comparable)

Parameters:
otherconst_iterator to compare against.
template<class T, class Pr = std::less<T>, class R = RNG>
bool SSkipList< T, Pr, R >::T0::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