|
constexpr | iter_transform2_view (Rng1 rng1, Rng2 rng2, Fun fun) |
|
| template (bool True=true)(AND sized_range< Rng1 const > AND sized_range< Rng2 const > AND common_with< range_size_t< R1< True > > |
|
range_size_t< R2< True > > constexpr auto | size () const |
|
| template (bool True=true)(AND sized_range< Rng1 > AND sized_range< Rng2 > AND common_with< range_size_t< R1< True > > |
|
range_size_t< R2< True > > constexpr auto | size () |
|
| template (typename D=iter_transform2_view< Rng1, Rng2, Fun >)() const expr auto begin() -> detail::facade_iterator_t< D > |
| Let d be static_cast<Derived &>(*this) .
|
|
| template (typename D=iter_transform2_view< Rng1, Rng2, Fun >)() const expr auto begin() const -> detail::facade_iterator_t< D const > |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
|
| template (typename D=iter_transform2_view< Rng1, Rng2, Fun >)() const expr auto end() -> detail::facade_sentinel_t< D > |
| Let d be static_cast<Derived &>(*this) .
|
|
| template (typename D=iter_transform2_view< Rng1, Rng2, Fun >)() const expr auto end() const -> detail::facade_sentinel_t< D const > |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
|
| view_interface (view_interface &&)=default |
|
| view_interface (view_interface const &)=default |
|
view_interface & | operator= (view_interface &&)=default |
|
view_interface & | operator= (view_interface const &)=default |
|
CPP_member constexpr auto | empty () const noexcept -> CPP_ret(bool)() |
| Test whether a range can be empty:
|
|