di 0.1.0
Loading...
Searching...
No Matches
di::container::CartesianProductView< First, Rest > Class Template Reference

#include <di/container/view/cartesian_product_view.h>

Inheritance diagram for di::container::CartesianProductView< First, Rest >:
di::container::ViewInterface< CartesianProductView< First, Rest... > > di::meta::EnableView< CartesianProductView< First, Rest... > >

Public Member Functions

 CartesianProductView ()=default
constexpr CartesianProductView (First first, Rest... bases)
constexpr auto begin ()
constexpr auto begin () const -> Iterator< true > requires(concepts::Container< First > &&(concepts::Container< Rest > &&...))
constexpr auto end ()
constexpr auto end () const
constexpr auto end () const
constexpr auto size ()
constexpr auto size () const
Public Member Functions inherited from di::container::ViewInterface< CartesianProductView< First, Rest... > >
constexpr auto empty () -> bool requires(concepts::SizedContainer< CartesianProductView< First, Rest... > >||concepts::ForwardContainer< CartesianProductView< First, Rest... > >)
constexpr operator bool ()
constexpr auto cbegin ()
constexpr auto cend ()
constexpr auto data ()
constexpr auto size ()
constexpr auto front ()
constexpr auto back ()
constexpr auto operator[] (meta::ContainerSSizeType< Cont > n) -> decltype(auto)
constexpr auto at (meta::ContainerSSizeType< Cont > n) -> Optional< meta::ContainerReference< Cont > >

Constructor & Destructor Documentation

◆ CartesianProductView() [1/2]

template<concepts::InputContainer First, concepts::ForwardContainer... Rest>
di::container::CartesianProductView< First, Rest >::CartesianProductView ( )
default

◆ CartesianProductView() [2/2]

template<concepts::InputContainer First, concepts::ForwardContainer... Rest>
di::container::CartesianProductView< First, Rest >::CartesianProductView ( First first,
Rest... bases )
inlineexplicitconstexpr

Member Function Documentation

◆ begin() [1/2]

template<concepts::InputContainer First, concepts::ForwardContainer... Rest>
auto di::container::CartesianProductView< First, Rest >::begin ( )
inlineconstexpr

◆ begin() [2/2]

template<concepts::InputContainer First, concepts::ForwardContainer... Rest>
auto di::container::CartesianProductView< First, Rest >::begin ( ) const->Iterator< true >requires(concepts::Container< First > &&(concepts::Container< Rest > &&...))
inlineconstexpr

◆ end() [1/3]

template<concepts::InputContainer First, concepts::ForwardContainer... Rest>
auto di::container::CartesianProductView< First, Rest >::end ( )
inlineconstexpr

◆ end() [2/3]

template<concepts::InputContainer First, concepts::ForwardContainer... Rest>
auto di::container::CartesianProductView< First, Rest >::end ( ) const
inlineconstexpr

◆ end() [3/3]

template<concepts::InputContainer First, concepts::ForwardContainer... Rest>
auto di::container::CartesianProductView< First, Rest >::end ( ) const
inlineconstexpr

◆ size() [1/2]

template<concepts::InputContainer First, concepts::ForwardContainer... Rest>
auto di::container::CartesianProductView< First, Rest >::size ( )
inlineconstexpr

◆ size() [2/2]

template<concepts::InputContainer First, concepts::ForwardContainer... Rest>
auto di::container::CartesianProductView< First, Rest >::size ( ) const
inlineconstexpr

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