5 #ifndef VCCC_ITERATOR_ITER_DIFFERENCE_T_HPP_
6 #define VCCC_ITERATOR_ITER_DIFFERENCE_T_HPP_
18 bool = is_primary_iterator_traits< cxx20_iterator_traits< remove_cvref_t<T> > >
::value,
19 bool = has_typename_difference_type<incrementable_traits<remove_cvref_t<T>>>
::value
21 struct iter_difference_impl {};
23 template<
typename T,
bool v>
24 struct iter_difference_impl<T, false, v> {
25 using type =
typename cxx20_iterator_traits<remove_cvref_t<T>>::difference_type;
29 struct iter_difference_impl<T, true, true> {
30 using type =
typename incrementable_traits<remove_cvref_t<T>>::difference_type;
typename iter_difference< T >::type iter_difference_t
Computes the difference type of T
Definition: iter_difference_t.hpp:49
Definition: directory.h:12
constexpr VCCC_INLINE_OR_STATIC detail::element_niebloid< 1 > value
Definition: key_value.hpp:35
Definition: iter_difference_t.hpp:39