MySQL 9.1.0
Source Code Documentation
Denested_map_view< Nested_map_t, outer_is_map, inner_is_map > Class Template Reference

View over a nested map structure, which provides iterators over the elements of the second-level map. More...

#include <rpl_msr.h>

Public Member Functions

 Denested_map_view (Nested_map_t &map)
 
auto begin ()
 
auto end ()
 
auto begin () const
 
auto end () const
 

Private Types

using Iterator_t = Denested_map_iterator< Iterator_for< Nested_map_t >, outer_is_map, inner_is_map >
 

Private Attributes

Nested_map_t * m_map
 

Detailed Description

template<class Nested_map_t, bool outer_is_map, bool inner_is_map>
class Denested_map_view< Nested_map_t, outer_is_map, inner_is_map >

View over a nested map structure, which provides iterators over the elements of the second-level map.

For example, a view over std::map<int, std::map<std::string, T>> provides iterators over the T objects.

Template Parameters
Nested_map_tThe nested map type.
outer_is_mapIf true, the outer map is assumed to be a map, i.e., its iterators yield pairs that hold inner maps in their second components. Otherwise, it is assumed that iterators of the outer map provide inner maps directly.
inner_is_mapIf true, the inner maps are assumed to be maps, i.e., their iterators yield pairs and the view's iterator provides the second components. Otherwise, the view's iterator provides the values of the iterators of the inner maps directly.

Member Typedef Documentation

◆ Iterator_t

template<class Nested_map_t , bool outer_is_map, bool inner_is_map>
using Denested_map_view< Nested_map_t, outer_is_map, inner_is_map >::Iterator_t = Denested_map_iterator<Iterator_for<Nested_map_t>, outer_is_map, inner_is_map>
private

Constructor & Destructor Documentation

◆ Denested_map_view()

template<class Nested_map_t , bool outer_is_map, bool inner_is_map>
Denested_map_view< Nested_map_t, outer_is_map, inner_is_map >::Denested_map_view ( Nested_map_t &  map)
inline

Member Function Documentation

◆ begin() [1/2]

template<class Nested_map_t , bool outer_is_map, bool inner_is_map>
auto Denested_map_view< Nested_map_t, outer_is_map, inner_is_map >::begin ( void  )
inline

◆ begin() [2/2]

template<class Nested_map_t , bool outer_is_map, bool inner_is_map>
auto Denested_map_view< Nested_map_t, outer_is_map, inner_is_map >::begin ( void  ) const
inline

◆ end() [1/2]

template<class Nested_map_t , bool outer_is_map, bool inner_is_map>
auto Denested_map_view< Nested_map_t, outer_is_map, inner_is_map >::end ( void  )
inline

◆ end() [2/2]

template<class Nested_map_t , bool outer_is_map, bool inner_is_map>
auto Denested_map_view< Nested_map_t, outer_is_map, inner_is_map >::end ( void  ) const
inline

Member Data Documentation

◆ m_map

template<class Nested_map_t , bool outer_is_map, bool inner_is_map>
Nested_map_t* Denested_map_view< Nested_map_t, outer_is_map, inner_is_map >::m_map
private

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