Range-v3
Range algorithms, views, and actions for the Standard Library
ranges::v3::view::cartesian_product_fn Struct Reference

Public Types

template<typename... Rngs>
using Constraint = meta::strict_and< ForwardRange< Rngs >... >
 

Public Member Functions

template<typename... Rngs, requires = (sizeof...(Rngs) != 0 && Constraint<Rngs...>())>
constexpr cartesian_product_view< all_t< Rngs >... > operator() (Rngs &&... rngs) const
 
constexpr empty_view< std::tuple<> > operator() () const noexcept
 
template<typename... Rngs, requires = (!Constraint<Rngs...>())>
void operator() (Rngs &&...) const
 

Member Function Documentation

◆ operator()()

constexpr empty_view<std::tuple<> > ranges::v3::view::cartesian_product_fn::operator() ( ) const
noexcept
Precondition
Constraint<>()