Jlm
Public Types | Public Member Functions | Private Attributes | List of all members
jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator Class Reference

#include <intrusive-list.hpp>

Collaboration diagram for jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator:
Collaboration graph
[legend]

Public Types

typedef const ElementType value_type
 
typedef const ElementType * pointer
 
typedef const ElementType & reference
 
typedef std::bidirectional_iterator_tag iterator_category
 
typedef size_t size_type
 
typedef ssize_t difference_type
 

Public Member Functions

constexpr ConstIterator (const ConstIterator &other) noexcept=default
 
constexpr ConstIterator (const Iterator &other) noexcept
 
constexpr ConstIterator () noexcept
 
constexpr ConstIterator (const IntrusiveList *list, const ElementType *object)
 
const ConstIteratoroperator++ () noexcept
 
ConstIterator operator++ (int) noexcept
 
const ConstIteratoroperator-- () noexcept
 
ConstIterator operator-- (int) noexcept
 
const ElementType & operator* () const noexcept
 
const ElementType * operator-> () const noexcept
 
bool operator== (const ConstIterator &other) const noexcept
 
bool operator!= (const ConstIterator &other) const noexcept
 
const ElementType * ptr () const noexcept
 

Private Attributes

const IntrusiveListlist_
 
const ElementType * element_
 

Detailed Description

template<typename ElementType, typename Accessor>
class jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator

Definition at line 191 of file intrusive-list.hpp.

Member Typedef Documentation

◆ difference_type

template<typename ElementType , typename Accessor >
typedef ssize_t jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::difference_type

Definition at line 199 of file intrusive-list.hpp.

◆ iterator_category

template<typename ElementType , typename Accessor >
typedef std::bidirectional_iterator_tag jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::iterator_category

Definition at line 197 of file intrusive-list.hpp.

◆ pointer

template<typename ElementType , typename Accessor >
typedef const ElementType* jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::pointer

Definition at line 195 of file intrusive-list.hpp.

◆ reference

template<typename ElementType , typename Accessor >
typedef const ElementType& jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::reference

Definition at line 196 of file intrusive-list.hpp.

◆ size_type

template<typename ElementType , typename Accessor >
typedef size_t jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::size_type

Definition at line 198 of file intrusive-list.hpp.

◆ value_type

template<typename ElementType , typename Accessor >
typedef const ElementType jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::value_type

Definition at line 194 of file intrusive-list.hpp.

Constructor & Destructor Documentation

◆ ConstIterator() [1/4]

template<typename ElementType , typename Accessor >
constexpr jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::ConstIterator ( const ConstIterator other)
constexprdefaultnoexcept

◆ ConstIterator() [2/4]

template<typename ElementType , typename Accessor >
constexpr jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::ConstIterator ( const Iterator other)
inlineexplicitconstexprnoexcept

Definition at line 203 of file intrusive-list.hpp.

◆ ConstIterator() [3/4]

template<typename ElementType , typename Accessor >
constexpr jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::ConstIterator ( )
inlineconstexprnoexcept

Definition at line 208 of file intrusive-list.hpp.

◆ ConstIterator() [4/4]

template<typename ElementType , typename Accessor >
constexpr jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::ConstIterator ( const IntrusiveList list,
const ElementType *  object 
)
inlineconstexpr

Definition at line 213 of file intrusive-list.hpp.

Member Function Documentation

◆ operator!=()

template<typename ElementType , typename Accessor >
bool jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::operator!= ( const ConstIterator other) const
inlinenoexcept

Definition at line 274 of file intrusive-list.hpp.

◆ operator*()

template<typename ElementType , typename Accessor >
const ElementType& jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::operator* ( ) const
inlinenoexcept

Definition at line 256 of file intrusive-list.hpp.

◆ operator++() [1/2]

template<typename ElementType , typename Accessor >
const ConstIterator& jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::operator++ ( )
inlinenoexcept

Definition at line 219 of file intrusive-list.hpp.

◆ operator++() [2/2]

template<typename ElementType , typename Accessor >
ConstIterator jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::operator++ ( int  )
inlinenoexcept

Definition at line 226 of file intrusive-list.hpp.

◆ operator--() [1/2]

template<typename ElementType , typename Accessor >
const ConstIterator& jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::operator-- ( )
inlinenoexcept

Definition at line 234 of file intrusive-list.hpp.

◆ operator--() [2/2]

template<typename ElementType , typename Accessor >
ConstIterator jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::operator-- ( int  )
inlinenoexcept

Definition at line 248 of file intrusive-list.hpp.

◆ operator->()

template<typename ElementType , typename Accessor >
const ElementType* jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::operator-> ( ) const
inlinenoexcept

Definition at line 262 of file intrusive-list.hpp.

◆ operator==()

template<typename ElementType , typename Accessor >
bool jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::operator== ( const ConstIterator other) const
inlinenoexcept

Definition at line 268 of file intrusive-list.hpp.

◆ ptr()

template<typename ElementType , typename Accessor >
const ElementType* jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::ptr ( ) const
inlinenoexcept

Definition at line 280 of file intrusive-list.hpp.

Member Data Documentation

◆ element_

template<typename ElementType , typename Accessor >
const ElementType* jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::element_
private

Definition at line 287 of file intrusive-list.hpp.

◆ list_

template<typename ElementType , typename Accessor >
const IntrusiveList* jlm::util::IntrusiveList< ElementType, Accessor >::ConstIterator::list_
private

Definition at line 286 of file intrusive-list.hpp.


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