32 #ifndef _GLIBCXX_PARALLEL_ITERATOR_H 33 #define _GLIBCXX_PARALLEL_ITERATOR_H 1 43 template<
typename _Iterator1,
typename _Iterator2,
44 typename _IteratorCategory>
51 typedef _IteratorCategory iterator_category;
52 typedef void value_type;
55 typedef typename _TraitsType::difference_type difference_type;
61 _IteratorPair(
const _Iterator1& __first,
const _Iterator2& __second)
62 :
_Base(__first, __second) { }
93 operator _Iterator2()
const 105 operator+(difference_type __delta)
const 118 template<
typename _Iterator1,
typename _Iterator2,
typename _Iterator3,
119 typename _IteratorCategory>
123 typedef _IteratorCategory iterator_category;
124 typedef void value_type;
131 _Iterator2 _M_second;
137 const _Iterator3& __third)
140 _M_second = __second;
175 operator _Iterator3()
const 181 _M_first = __other._M_first;
182 _M_second = __other._M_second;
183 _M_third = __other._M_third;
188 operator+(difference_type __delta)
const 190 _M_third + __delta); }
194 {
return _M_first - __other._M_first; }
Traits class for iterators.
A triple of iterators. The usual iterator operations are applied to all three child iterators...
Struct holding two objects of arbitrary type.
Includes the original header files concerned with iterators except for stream iterators. This file is a GNU parallel extension to the Standard C++ Library.
_Iterator2 second
The second member.
_Iterator1 first
The first member.
A pair of iterators. The usual iterator operations are applied to both child iterators.
GNU parallel code for public use.