Vcsn  2.0
Be Rational
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
vcsn::zipped_maps< Dereference, Maps > Struct Template Reference

#include <zip-maps.hh>

Collaboration diagram for vcsn::zipped_maps< Dereference, Maps >:

Classes

struct  iterator
 Composite iterator. More...
 

Public Types

using maps_t = std::tuple< Maps...>
 Type of the tuple of all the maps. More...
 
template<std::size_t... I>
using seq = vcsn::detail::index_sequence< I...>
 Type of index sequences. More...
 
using indices_t = vcsn::detail::make_index_sequence< sizeof...(Maps)>
 Index sequence for our maps. More...
 

Public Member Functions

 zipped_maps (Maps...maps)
 
 zipped_maps (const maps_t &maps)
 
iterator begin ()
 
iterator end ()
 

Private Member Functions

template<std::size_t... I>
iterator begin_ (seq< I...>)
 
template<std::size_t... I>
iterator end_ (seq< I...>)
 

Private Attributes

maps_t maps_
 

Detailed Description

template<typename Dereference = as_tuple, typename... Maps>
struct vcsn::zipped_maps< Dereference, Maps >

Definition at line 17 of file zip-maps.hh.

Member Typedef Documentation

template<typename Dereference = as_tuple, typename... Maps>
using vcsn::zipped_maps< Dereference, Maps >::indices_t = vcsn::detail::make_index_sequence<sizeof...(Maps)>

Index sequence for our maps.

Definition at line 27 of file zip-maps.hh.

template<typename Dereference = as_tuple, typename... Maps>
using vcsn::zipped_maps< Dereference, Maps >::maps_t = std::tuple<Maps...>

Type of the tuple of all the maps.

Definition at line 20 of file zip-maps.hh.

template<typename Dereference = as_tuple, typename... Maps>
template<std::size_t... I>
using vcsn::zipped_maps< Dereference, Maps >::seq = vcsn::detail::index_sequence<I...>

Type of index sequences.

Definition at line 24 of file zip-maps.hh.

Constructor & Destructor Documentation

template<typename Dereference = as_tuple, typename... Maps>
vcsn::zipped_maps< Dereference, Maps >::zipped_maps ( Maps...  maps)
inline

Definition at line 29 of file zip-maps.hh.

template<typename Dereference = as_tuple, typename... Maps>
vcsn::zipped_maps< Dereference, Maps >::zipped_maps ( const maps_t maps)
inline

Definition at line 33 of file zip-maps.hh.

Member Function Documentation

template<typename Dereference = as_tuple, typename... Maps>
iterator vcsn::zipped_maps< Dereference, Maps >::begin ( )
inline

Definition at line 224 of file zip-maps.hh.

References vcsn::zipped_maps< Dereference, Maps >::begin_().

Referenced by vcsn::zipped_maps< Dereference, Maps >::begin_().

Here is the call graph for this function:

template<typename Dereference = as_tuple, typename... Maps>
template<std::size_t... I>
iterator vcsn::zipped_maps< Dereference, Maps >::begin_ ( seq< I...>  )
inlineprivate

Definition at line 237 of file zip-maps.hh.

References vcsn::zipped_maps< Dereference, Maps >::begin(), vcsn::zipped_maps< Dereference, Maps >::end(), vcsn::zipped_maps< Dereference, Maps >::iterator::iterator(), and vcsn::zipped_maps< Dereference, Maps >::maps_.

Referenced by vcsn::zipped_maps< Dereference, Maps >::begin().

Here is the call graph for this function:

template<typename Dereference = as_tuple, typename... Maps>
iterator vcsn::zipped_maps< Dereference, Maps >::end ( )
inline

Definition at line 230 of file zip-maps.hh.

References vcsn::zipped_maps< Dereference, Maps >::end_().

Referenced by vcsn::zipped_maps< Dereference, Maps >::begin_(), and vcsn::zipped_maps< Dereference, Maps >::end_().

Here is the call graph for this function:

template<typename Dereference = as_tuple, typename... Maps>
template<std::size_t... I>
iterator vcsn::zipped_maps< Dereference, Maps >::end_ ( seq< I...>  )
inlineprivate

Definition at line 245 of file zip-maps.hh.

References vcsn::zipped_maps< Dereference, Maps >::end(), vcsn::zipped_maps< Dereference, Maps >::iterator::iterator(), and vcsn::zipped_maps< Dereference, Maps >::maps_.

Referenced by vcsn::zipped_maps< Dereference, Maps >::end().

Here is the call graph for this function:

Member Data Documentation

template<typename Dereference = as_tuple, typename... Maps>
maps_t vcsn::zipped_maps< Dereference, Maps >::maps_
private

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