ATLAS Offline Software
Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
CxxUtils::pointer_list< NELT >::iterator Class Reference

Forward iterator over the list. More...

#include <pointer_list.h>

Inheritance diagram for CxxUtils::pointer_list< NELT >::iterator:
Collaboration diagram for CxxUtils::pointer_list< NELT >::iterator:

Public Types

using iterator_category = std::forward_iterator_tag
 
using value_type = pointer_list::value_type
 
using difference_type = std::ptrdiff_t
 
using pointer = value_type *
 
using reference = value_type &
 

Public Member Functions

bool operator== (const iterator &other) const
 Equality comparison. More...
 
bool operator!= (const iterator &other) const
 Inequality comparison. More...
 
reference operator* ()
 Dereference. More...
 
iteratoroperator++ ()
 Advance (pre-increment). More...
 
iterator operator++ (int)
 Advance (post-increment). More...
 

Private Member Functions

 iterator (value_type *p)
 Constructor, from a pointer into a pointer_list. More...
 

Private Attributes

value_typem_p
 Current iteration position. More...
 

Friends

class pointer_list
 

Detailed Description

template<size_t NELT = 15>
class CxxUtils::pointer_list< NELT >::iterator

Forward iterator over the list.

Definition at line 280 of file pointer_list.h.

Member Typedef Documentation

◆ difference_type

template<size_t NELT = 15>
using CxxUtils::pointer_list< NELT >::iterator::difference_type = std::ptrdiff_t

Definition at line 285 of file pointer_list.h.

◆ iterator_category

template<size_t NELT = 15>
using CxxUtils::pointer_list< NELT >::iterator::iterator_category = std::forward_iterator_tag

Definition at line 283 of file pointer_list.h.

◆ pointer

template<size_t NELT = 15>
using CxxUtils::pointer_list< NELT >::iterator::pointer = value_type*

Definition at line 286 of file pointer_list.h.

◆ reference

template<size_t NELT = 15>
using CxxUtils::pointer_list< NELT >::iterator::reference = value_type&

Definition at line 287 of file pointer_list.h.

◆ value_type

template<size_t NELT = 15>
using CxxUtils::pointer_list< NELT >::iterator::value_type = pointer_list::value_type

Definition at line 284 of file pointer_list.h.

Constructor & Destructor Documentation

◆ iterator()

template<size_t NELT = 15>
CxxUtils::pointer_list< NELT >::iterator::iterator ( value_type p)
private

Constructor, from a pointer into a pointer_list.

Member Function Documentation

◆ operator!=()

template<size_t NELT = 15>
bool CxxUtils::pointer_list< NELT >::iterator::operator!= ( const iterator other) const

Inequality comparison.

◆ operator*()

template<size_t NELT = 15>
reference CxxUtils::pointer_list< NELT >::iterator::operator* ( )

Dereference.

◆ operator++() [1/2]

template<size_t NELT = 15>
iterator& CxxUtils::pointer_list< NELT >::iterator::operator++ ( )

Advance (pre-increment).

◆ operator++() [2/2]

template<size_t NELT = 15>
iterator CxxUtils::pointer_list< NELT >::iterator::operator++ ( int  )

Advance (post-increment).

◆ operator==()

template<size_t NELT = 15>
bool CxxUtils::pointer_list< NELT >::iterator::operator== ( const iterator other) const

Equality comparison.

Friends And Related Function Documentation

◆ pointer_list

template<size_t NELT = 15>
friend class pointer_list
friend

Definition at line 312 of file pointer_list.h.

Member Data Documentation

◆ m_p

template<size_t NELT = 15>
value_type* CxxUtils::pointer_list< NELT >::iterator::m_p
private

Current iteration position.

Definition at line 310 of file pointer_list.h.


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