5 #ifndef VCCC_ITERATOR_BIDIRECTIONAL_ITERATOR_HPP_
6 #define VCCC_ITERATOR_BIDIRECTIONAL_ITERATOR_HPP_
19 template<
typename T,
typename =
void>
20 struct is_post_decrementable_bidi_iter : std::false_type {};
23 struct is_post_decrementable_bidi_iter<T,
void_t<decltype(
std::declval<T&>()-- )>>
24 : same_as<decltype( std::declval<T&>()-- ), T> {};
27 struct bidirectional_iterator_impl : std::false_type {};
30 struct bidirectional_iterator_impl<I, true>
32 derived_from<ITER_CONCEPT<I>, bidirectional_iterator_tag>,
33 is_pre_decrementable<I>,
34 is_post_decrementable_bidi_iter<I>
Definition: matrix.hpp:495
Definition: directory.h:12
constexpr VCCC_INLINE_OR_STATIC detail::element_niebloid< 1 > value
Definition: key_value.hpp:35
specifies that a forward_iterator is a bidirectional iterator, supporting movement backwards
Definition: bidirectional_iterator.hpp:58