#include <itertools/product.hpp>
template<typename... Rs>
struct itertools::multiplied< Rs >
Represents a cartesian product of ranges.
See itertools::product(Rs &&...rgs) for more details.
- Template Parameters
-
Definition at line 140 of file product.hpp.
|
|
using | const_iterator = prod_iter<std::tuple<decltype(std::cend(std::declval<Rs &>()))...>, decltype(std::cbegin(std::declval<Rs &>()))...> |
| | Const iterator type the product range.
|
|
using | iterator = prod_iter<std::tuple<decltype(std::end(std::declval<Rs &>()))...>, decltype(std::begin(std::declval<Rs &>()))...> |
| | Iterator type of the product range.
|
|
| template<typename... Us> |
| | multiplied (Us &&...rgs) |
| | Constructs a cartesian product (multiplied) range from the given ranges.
|
|
const_iterator | begin () const noexcept |
| | Const overload of begin().
|
| iterator | begin () noexcept |
| | Beginning of the product range.
|
|
const_iterator | cbegin () const noexcept |
| | Const version of begin().
|
|
auto | cend () const noexcept |
| | Const version of end().
|
|
auto | end () const noexcept |
| | Const overload of end().
|
| auto | end () noexcept |
| | End of the product range.
|
|
bool | operator== (multiplied const &) const =default |
| | Default equal-to operator.
|
|
|
std::tuple< Rs... > | tu |
| | Tuple containing the original ranges.
|
◆ multiplied()
template<typename... Rs>
template<typename... Us>
Constructs a cartesian product (multiplied) range from the given ranges.
- Template Parameters
-
- Parameters
-
| rgs | Ranges to be multiplied. |
Definition at line 156 of file product.hpp.
◆ begin()
◆ end()
End of the product range.
- Returns
- itertools::sentinel_t containing the end iterator of the first original range, i.e. std::end(std::get<0>(tu)).
Definition at line 189 of file product.hpp.
The documentation for this struct was generated from the following file: