Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Aleph::DynSkipList< Key, Compare >::Iterator Class Reference

Forward iterator for DynSkipList. More...

#include <tpl_dynSkipList.H>

Collaboration diagram for Aleph::DynSkipList< Key, Compare >::Iterator:
[legend]

Public Types

using Set_Type = DynSkipList
 

Public Member Functions

 Iterator () noexcept=default
 
 Iterator (const DynSkipList &list) noexcept
 
bool has_curr () const noexcept
 
bool is_last () const noexcept
 
const Key & get_curr () const
 
const Key & get_curr_ne () const noexcept
 
Key & get_curr ()
 
const Key & get_key () const
 
void next ()
 
void next_ne () noexcept
 
void reset_first () noexcept
 
void reset () noexcept
 
Iteratoroperator= (const Iterator &) noexcept=default
 
bool operator== (const Iterator &it) const noexcept
 
bool operator!= (const Iterator &it) const noexcept
 
Iteratoroperator++ () noexcept
 
Iterator operator++ (int) noexcept
 
const Key & operator* () const
 
const Key * operator-> () const
 

Private Attributes

const DynSkipListlist_ptr = nullptr
 
Nodecurr = nullptr
 

Detailed Description

template<typename Key, class Compare = std::less<Key>>
class Aleph::DynSkipList< Key, Compare >::Iterator

Forward iterator for DynSkipList.

Iterates through elements in sorted order.

Definition at line 711 of file tpl_dynSkipList.H.

Member Typedef Documentation

◆ Set_Type

template<typename Key , class Compare = std::less<Key>>
using Aleph::DynSkipList< Key, Compare >::Iterator::Set_Type = DynSkipList

Definition at line 717 of file tpl_dynSkipList.H.

Constructor & Destructor Documentation

◆ Iterator() [1/2]

template<typename Key , class Compare = std::less<Key>>
Aleph::DynSkipList< Key, Compare >::Iterator::Iterator ( )
defaultnoexcept

◆ Iterator() [2/2]

template<typename Key , class Compare = std::less<Key>>
Aleph::DynSkipList< Key, Compare >::Iterator::Iterator ( const DynSkipList list)
inlineexplicitnoexcept

Definition at line 721 of file tpl_dynSkipList.H.

Member Function Documentation

◆ get_curr() [1/2]

template<typename Key , class Compare = std::less<Key>>
Key & Aleph::DynSkipList< Key, Compare >::Iterator::get_curr ( )
inline

◆ get_curr() [2/2]

◆ get_curr_ne()

template<typename Key , class Compare = std::less<Key>>
const Key & Aleph::DynSkipList< Key, Compare >::Iterator::get_curr_ne ( ) const
inlinenoexcept

◆ get_key()

template<typename Key , class Compare = std::less<Key>>
const Key & Aleph::DynSkipList< Key, Compare >::Iterator::get_key ( ) const
inline

◆ has_curr()

template<typename Key , class Compare = std::less<Key>>
bool Aleph::DynSkipList< Key, Compare >::Iterator::has_curr ( ) const
inlinenoexcept

◆ is_last()

template<typename Key , class Compare = std::less<Key>>
bool Aleph::DynSkipList< Key, Compare >::Iterator::is_last ( ) const
inlinenoexcept

◆ next()

template<typename Key , class Compare = std::less<Key>>
void Aleph::DynSkipList< Key, Compare >::Iterator::next ( )
inline

◆ next_ne()

◆ operator!=()

template<typename Key , class Compare = std::less<Key>>
bool Aleph::DynSkipList< Key, Compare >::Iterator::operator!= ( const Iterator it) const
inlinenoexcept

◆ operator*()

template<typename Key , class Compare = std::less<Key>>
const Key & Aleph::DynSkipList< Key, Compare >::Iterator::operator* ( ) const
inline

◆ operator++() [1/2]

template<typename Key , class Compare = std::less<Key>>
Iterator & Aleph::DynSkipList< Key, Compare >::Iterator::operator++ ( )
inlinenoexcept

◆ operator++() [2/2]

template<typename Key , class Compare = std::less<Key>>
Iterator Aleph::DynSkipList< Key, Compare >::Iterator::operator++ ( int  )
inlinenoexcept

◆ operator->()

template<typename Key , class Compare = std::less<Key>>
const Key * Aleph::DynSkipList< Key, Compare >::Iterator::operator-> ( ) const
inline

◆ operator=()

template<typename Key , class Compare = std::less<Key>>
Iterator & Aleph::DynSkipList< Key, Compare >::Iterator::operator= ( const Iterator )
defaultnoexcept

◆ operator==()

template<typename Key , class Compare = std::less<Key>>
bool Aleph::DynSkipList< Key, Compare >::Iterator::operator== ( const Iterator it) const
inlinenoexcept

◆ reset()

template<typename Key , class Compare = std::less<Key>>
void Aleph::DynSkipList< Key, Compare >::Iterator::reset ( )
inlinenoexcept

◆ reset_first()

Member Data Documentation

◆ curr

◆ list_ptr

template<typename Key , class Compare = std::less<Key>>
const DynSkipList* Aleph::DynSkipList< Key, Compare >::Iterator::list_ptr = nullptr
private

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