1 #ifndef DASH__ITERATOR_TRAITS_H__INCLUDED 2 #define DASH__ITERATOR_TRAITS_H__INCLUDED 9 #include <dash/iterator/GlobIter.h> 10 #include <dash/iterator/GlobViewIter.h> 16 template <
typename Iterator>
17 struct is_global_iterator : std::false_type {
26 struct is_global_iterator<GlobViewIter<
31 ReferenceType>> : std::true_type {
40 struct is_global_iterator<GlobIter<
45 ReferenceType>> : std::true_type {
50 DASH__META__DEFINE_TRAIT__HAS_TYPE(index_type)
52 template <class _Iter, bool = has_type_index_type<_Iter>::value>
53 struct iterator_traits_index_type {
54 typedef typename _Iter::index_type type;
57 template <
class _Iter>
58 struct iterator_traits_index_type<_Iter, false> {
64 template <
typename Iterator>
66 using is_global_iterator =
typename detail::is_global_iterator<Iterator>;
68 typename detail::iterator_traits_index_type<Iterator>::type;
69 using value_type =
typename std::iterator_traits<Iterator>::value_type;
This class is a simple memory pool which holds allocates elements of size ValueType.
internal::default_signed_index default_index_t
Signed integer type used as default for index values.