|
constexpr | cartesian_product_view ()=default |
|
constexpr | cartesian_product_view (First first, Vs... bases) |
|
template<typename First2 = First, std::enable_if_t< disjunction< negation< simple_view< First2 > >, negation< simple_view< Vs > >... >::value, int > = 0> |
constexpr iterator< false > | begin () |
|
template<typename First2 = First, std::enable_if_t< conjunction< range< const First2 >, range< const Vs >... >::value, int > = 0> |
constexpr iterator< true > | begin () const |
|
template<typename First2 = First, std::enable_if_t< conjunction< disjunction< negation< simple_view< First2 > >, negation< simple_view< Vs > >... >, detail::cartesian_product_is_common< First, Vs... > >::value, int > = 0> |
constexpr iterator< false > | end () |
|
template<typename First2 = First, std::enable_if_t< detail::cartesian_product_is_common< const First2, const Vs... >::value, int > = 0> |
constexpr iterator< true > | end () const |
|
template<typename First2 = First, std::enable_if_t< detail::cartesian_product_is_common< const First2, const Vs... >::value==false, int > = 0> |
constexpr default_sentinel_t | end () const |
|
template<typename First2 = First, std::enable_if_t< detail::cartesian_product_is_sized< First2, Vs... >::value, int > = 0> |
constexpr std::size_t | size () |
|
template<typename First2 = First, std::enable_if_t< detail::cartesian_product_is_sized< const First2, const Vs... >::value, int > = 0> |
constexpr std::size_t | size () const |
|
constexpr bool | empty () |
|
constexpr bool | empty () |
|
constexpr bool | empty () const |
|
constexpr bool | empty () const |
|
constexpr auto | cbegin () |
|
constexpr auto | cbegin () const |
|
constexpr auto | cend () |
|
constexpr auto | cend () const |
|
constexpr | operator bool () |
|
constexpr | operator bool () const |
|
constexpr auto | data () |
|
constexpr auto | data () const |
|
constexpr auto | size () |
|
constexpr auto | size () const |
|
constexpr decltype(auto) | front () |
|
constexpr decltype(auto) | front () const |
|
constexpr decltype(auto) | back () |
|
constexpr decltype(auto) | back () const |
|
constexpr decltype(auto) | operator[] (range_difference_t< R > n) |
|
constexpr decltype(auto) | operator[] (range_difference_t< R > n) const |
|