|
using | difference_type = typename std::iterator_traits<Iter>::difference_type |
|
using | iterator_category = typename std::iterator_traits<Iter>::iterator_category |
|
using | base_iterator = Iter |
|
using | base_value = typename std::iterator_traits<Iter>::value_type |
|
using | base_reference = typename std::iterator_traits<Iter>::reference |
|
using | base_pointer = typename std::iterator_traits<Iter>::pointer |
|
using | reference = std::invoke_result_t<Transform, base_reference> |
|
using | value_type = std::remove_reference_t<reference> |
|
using | pointer = std::add_pointer_t<value_type> |
|
|
| TransformIterator (Iter iterator) |
|
| TransformIterator (Transform transform, Iter iterator) |
|
| TransformIterator (const TransformIterator &rhs)=default |
|
| TransformIterator (TransformIterator &&rhs)=default |
|
TransformIterator & | operator= (const TransformIterator &that) |
|
TransformIterator & | operator= (TransformIterator &&that) |
|
template<typename Other>
requires (!std::is_same_v<TransformIterator, Other>) && std::default_initializable<Transform> && std::constructible_from<Iter, typename Other::base_iterator> |
| TransformIterator (const Other &other) |
|
TransformIterator & | operator++ () |
|
TransformIterator | operator++ (int) |
|
template<typename I = Iter, typename = detail::require_t<std::bidirectional_iterator_tag, I>> |
TransformIterator & | operator-- () |
|
template<typename I = Iter, typename = detail::require_t<std::bidirectional_iterator_tag, I>> |
TransformIterator | operator-- (int) |
|
template<typename I = Iter, typename = detail::require_t<std::random_access_iterator_tag, I>> |
TransformIterator & | operator+= (difference_type rhs) |
|
template<typename I = Iter, typename = detail::require_t<std::random_access_iterator_tag, I>> |
TransformIterator & | operator-= (difference_type rhs) |
|
template<typename I = Iter, typename = detail::require_t<std::random_access_iterator_tag, I>> |
difference_type | operator- (const TransformIterator &rhs) const |
|
template<typename I = Iter, typename = detail::require_t<std::random_access_iterator_tag, I>> |
TransformIterator | operator+ (difference_type i) const |
|
template<typename I = Iter, typename = detail::require_t<std::random_access_iterator_tag, I>> |
TransformIterator | operator- (difference_type i) const |
|
template<typename I = Iter, typename = detail::require_t<std::random_access_iterator_tag, I>> |
reference | operator[] (difference_type i) const |
|
reference | operator* () const |
|
pointer | operator-> () const |
|
reference | operator* () |
|
pointer | operator-> () |
|
const Iter & | base () const |
|
Iter & | base () |
|
bool | operator== (const TransformIterator &rhs) const |
|
bool | operator!= (const TransformIterator &rhs) const |
|
template<typename I = Iter, typename = detail::require_t<std::random_access_iterator_tag, I>> |
bool | operator> (const TransformIterator &rhs) const |
|
template<typename I = Iter, typename = detail::require_t<std::random_access_iterator_tag, I>> |
bool | operator< (const TransformIterator &rhs) const |
|
template<typename I = Iter, typename = detail::require_t<std::random_access_iterator_tag, I>> |
bool | operator>= (const TransformIterator &rhs) const |
|
template<typename I = Iter, typename = detail::require_t<std::random_access_iterator_tag, I>> |
bool | operator<= (const TransformIterator &rhs) const |
|