Structural Bioinformatics Library
Template C++ / Python API for developping structural bioinformatics applications.
T_Container_of_containers_iterator< OuterContainerIterator > Class Template Reference

Iterator iterator over nested mutable containers. More...

#include <Container_of_containers_iterator.hpp>

Constructors

 T_Container_of_containers_iterator (const Self &It)
 Constructs by copy. More...
 
 T_Container_of_containers_iterator (const OuterContainerIterator &it, const OuterContainerIterator &it_end)
 Constructs by initializing the start and the end of the outer container. More...
 

Operators

InnerContainerIterator::reference operator* (void)
 Access to the data pointed by the iterator over the inner container. More...
 
const InnerContainerIterator::reference operator* (void) const
 Const access to the data pointed by the iterator over the inner container. More...
 
Selfoperator++ (void)
 Increment the iterator over the inner container. More...
 
Self operator++ (int)
 Post increment the iterator. More...
 
bool operator== (const Self &it) const
 Check that two iterators are equal by comparing the outer and inner iterators. More...
 
bool operator!= (const Self &it) const
 Check that two iterators are different by comparing the outer and inner iterators. More...
 

Detailed Description

template<class OuterContainerIterator>
class SBL::CADS::T_Container_of_containers_iterator< OuterContainerIterator >

Iterator iterator over nested mutable containers.

...

Template Parameters
OuterContainerIteratorIterator type over the outer container.

Constructor & Destructor Documentation

◆ T_Container_of_containers_iterator() [1/2]

T_Container_of_containers_iterator ( const Self It)
inline

Constructs by copy.

◆ T_Container_of_containers_iterator() [2/2]

T_Container_of_containers_iterator ( const OuterContainerIterator &  it,
const OuterContainerIterator &  it_end 
)
inline

Constructs by initializing the start and the end of the outer container.

Member Function Documentation

◆ operator!=()

bool operator!= ( const Self it) const
inlineinherited

Check that two iterators are different by comparing the outer and inner iterators.

◆ operator*() [1/2]

InnerContainerIterator::reference operator* ( void  )
inlineinherited

Access to the data pointed by the iterator over the inner container.

◆ operator*() [2/2]

const InnerContainerIterator::reference operator* ( void  ) const
inlineinherited

Const access to the data pointed by the iterator over the inner container.

◆ operator++() [1/2]

T_Container_of_containers_iterator_base< OuterContainerIterator, OuterContainerIterator::value_type::iterator >::Self operator++ ( int  )
inlineinherited

Post increment the iterator.

◆ operator++() [2/2]

T_Container_of_containers_iterator_base< OuterContainerIterator, OuterContainerIterator::value_type::iterator >::Self & operator++ ( void  )
inlineinherited

Increment the iterator over the inner container.

If the end of the inner container is reached, the iterator over the outer container is incremented, and the iterator over the inner container is updated.

◆ operator==()

bool operator== ( const Self it) const
inlineinherited

Check that two iterators are equal by comparing the outer and inner iterators.