cartesian_product.hpp File Reference

## Classes

struct | ranges::cartesian_product_view< Views >
struct | ranges::views::cartesian_product_fn

## Variables

template<typename IsConst , typename... Views>
concept | ranges::cartesian_produce_view_can_bidi
template<typename IsConst , typename... Views>
concept | ranges::cartesian_produce_view_can_bidi_ = and_v<common_range<meta::const_if<IsConst, Views>>..., bidirectional_iterator<iterator_t<meta::const_if<IsConst, Views>>>...>
template<typename... Views>
concept | ranges::cartesian_produce_view_can_const
template<typename IsConst , typename... Views>
concept | ranges::cartesian_produce_view_can_distance
template<typename IsConst , typename... Views>
concept | ranges::cartesian_produce_view_can_distance_ = and_v<sized_sentinel_for< iterator_t<meta::const_if<IsConst, Views>>, iterator_t<meta::const_if<IsConst, Views>>>...>
template<typename IsConst , typename... Views>
concept | ranges::cartesian_produce_view_can_random
template<typename IsConst , typename... Views>
concept | ranges::cartesian_produce_view_can_random_ = and_v<random_access_iterator<iterator_t<meta::const_if<IsConst, Views>>>...>
template<typename IsConst , typename... Views>
concept | ranges::cartesian_produce_view_can_size
template<typename IsConst , typename... Views>
concept | ranges::cartesian_produce_view_can_size_ = and_v<common_with<std::uintmax_t, range_size_t<meta::const_if<IsConst, Views>>>...>
constexpr cartesian_product_fn | ranges::views::cartesian_product {}