xentara-utils v2.0.3
The Xentara Utility Library
Loading...
Searching...
No Matches
xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser Class Referencefinal

#include <xentara/utils/lockFree/LockFreeTraversableMap.hpp>

+ Inheritance diagram for xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser:

Classes

class  Iterator
 

Public Types

using Allocator = std::allocator< Element >
 
using value_type = Element
 The element type.
 
using allocator_type = Allocator
 The Allocator type.
 
using size_type = typename std::allocator_traits< Allocator >::size_type
 The type used for sizes.
 
using difference_type = typename std::allocator_traits< Allocator >::difference_type
 The type used for distances.
 
using reference = value_type &
 A reference to an element.
 
using const_reference = const value_type &
 A const reference to an element.
 
using pointer = typename std::allocator_traits< Allocator >::pointer
 A pointer to an element.
 
using const_pointer = typename std::allocator_traits< Allocator >::const_pointer
 A const pointer to an element.
 
using iterator = Iterator
 An iterator.
 
using const_iterator = Iterator
 A const iterator.
 

Public Member Functions

 ~Traverser ()
 Destructor that unlocks the map for traversal.
 
constexpr auto begin () const noexcept -> const_iterator
 Creates a begin iterator.
 
constexpr auto cbegin () const noexcept -> const_iterator
 Creates a begin iterator.
 
constexpr auto end () const noexcept -> std::default_sentinel_t
 Creates an end iterator.
 
constexpr auto cend () const noexcept -> std::default_sentinel_t
 Creates an end iterator.
 

Member Typedef Documentation

◆ Allocator

template<typename Element >
using xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::Allocator = std::allocator<Element>

◆ allocator_type

template<typename Element >
using xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::allocator_type = Allocator

The Allocator type.

◆ const_iterator

template<typename Element >
using xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::const_iterator = Iterator

A const iterator.

◆ const_pointer

template<typename Element >
using xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::const_pointer = typename std::allocator_traits<Allocator>::const_pointer

A const pointer to an element.

◆ const_reference

template<typename Element >
using xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::const_reference = const value_type &

A const reference to an element.

◆ difference_type

template<typename Element >
using xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::difference_type = typename std::allocator_traits<Allocator>::difference_type

The type used for distances.

◆ iterator

template<typename Element >
using xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::iterator = Iterator

An iterator.

◆ pointer

template<typename Element >
using xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::pointer = typename std::allocator_traits<Allocator>::pointer

A pointer to an element.

◆ reference

template<typename Element >
using xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::reference = value_type &

A reference to an element.

◆ size_type

template<typename Element >
using xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::size_type = typename std::allocator_traits<Allocator>::size_type

The type used for sizes.

◆ value_type

template<typename Element >
using xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::value_type = Element

The element type.

Constructor & Destructor Documentation

◆ ~Traverser()

template<typename Element >
xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::~Traverser ( )

Destructor that unlocks the map for traversal.

Member Function Documentation

◆ begin()

template<typename Element >
constexpr auto xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::begin ( ) const -> const_iterator
constexprnoexcept

Creates a begin iterator.

Returns
An iterator pointing at the first element, or end(), if the data is empty

◆ cbegin()

template<typename Element >
constexpr auto xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::cbegin ( ) const -> const_iterator
constexprnoexcept

Creates a begin iterator.

Returns
An iterator pointing at the first element, or end(), if the data is empty

◆ cend()

template<typename Element >
constexpr auto xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::cend ( ) const -> std::default_sentinel_t
constexprnoexcept

Creates an end iterator.

Returns
An iterator pointing at the position past the last element

◆ end()

template<typename Element >
constexpr auto xentara::utils::lockFree::LockFreeTraversableMap< Element >::Traverser::end ( ) const -> std::default_sentinel_t
constexprnoexcept

Creates an end iterator.

Returns
An iterator pointing at the position past the last element