23 #ifndef NDARRAY_DETAIL_NestedIterator_h_INCLUDED
24 #define NDARRAY_DETAIL_NestedIterator_h_INCLUDED
32 #include <boost/iterator/iterator_facade.hpp>
51 template <
typename T,
int N,
int C>
53 NestedIterator<T,N,C>,
54 typename ArrayTraits<T,N,C>::Value,
55 boost::random_access_traversal_tag,
56 typename ArrayTraits<T,N,C>::Reference
79 template <
typename T_,
int C_>
91 template <
typename T_,
int C_>
111 template <
typename T_,
int C_>
116 template <
typename T_,
int C_>
128 #endif // !NDARRAY_DETAIL_NestedIterator_h_INCLUDED
A proxy class for Array with deep assignment operators.
bool equal(NestedIterator< T_, N, C_ > const &other) const
Reference operator[](int n) const
int distance_to(NestedIterator< T_, N, C_ > const &other) const
Reference const & operator*() const
Forward declarations and default template parameters for ndarray.
NestedIterator & operator=(NestedIterator< T_, N, C_ > const &other)
ArrayTraits< T, N, C >::Reference Reference
NestedIterator & operator=(NestedIterator const &other)
ArrayTraits< T, N, C >::Value Value
NestedIterator(NestedIterator< T_, N, C_ > const &other)
A multidimensional strided array.
friend class boost::iterator_core_access
NestedIterator(Reference const &ref, int stride)
Reference const * operator->()
Reference const & dereference() const
NestedIterator(NestedIterator const &other)