diff --git a/libc/src/__support/CPP/iterator.h b/libc/src/__support/CPP/iterator.h index 4d06e181bcf06..c5bfb1912c7b7 100644 --- a/libc/src/__support/CPP/iterator.h +++ b/libc/src/__support/CPP/iterator.h @@ -20,7 +20,6 @@ namespace cpp { template struct iterator_traits; template struct iterator_traits { using reference = T &; - using value_type = T; }; template class reverse_iterator { @@ -28,8 +27,6 @@ template class reverse_iterator { public: using reference = typename iterator_traits::reference; - using value_type = typename iterator_traits::value_type; - using iterator_type = Iter; LIBC_INLINE reverse_iterator() : current() {} LIBC_INLINE constexpr explicit reverse_iterator(Iter it) : current(it) {} @@ -41,38 +38,6 @@ template class reverse_iterator { LIBC_INLINE constexpr explicit reverse_iterator(const Other &it) : current(it) {} - LIBC_INLINE friend constexpr bool operator==(const reverse_iterator &lhs, - const reverse_iterator &rhs) { - return lhs.base() == rhs.base(); - } - - LIBC_INLINE friend constexpr bool operator!=(const reverse_iterator &lhs, - const reverse_iterator &rhs) { - return lhs.base() != rhs.base(); - } - - LIBC_INLINE friend constexpr bool operator<(const reverse_iterator &lhs, - const reverse_iterator &rhs) { - return lhs.base() > rhs.base(); - } - - LIBC_INLINE friend constexpr bool operator<=(const reverse_iterator &lhs, - const reverse_iterator &rhs) { - return lhs.base() >= rhs.base(); - } - - LIBC_INLINE friend constexpr bool operator>(const reverse_iterator &lhs, - const reverse_iterator &rhs) { - return lhs.base() < rhs.base(); - } - - LIBC_INLINE friend constexpr bool operator>=(const reverse_iterator &lhs, - const reverse_iterator &rhs) { - return lhs.base() <= rhs.base(); - } - - LIBC_INLINE constexpr iterator_type base() const { current; } - LIBC_INLINE constexpr reference operator*() const { Iter tmp = current; return *--tmp;