Lines Matching defs:__vector_iterator
37 template <typename T, typename Ptr, typename Ref> struct __vector_iterator {
38 typedef __vector_iterator<T, T *, T &> iterator;
39 typedef __vector_iterator<T, const T *, const T &> const_iterator;
47 __vector_iterator(const Ptr p = 0) : ptr(p) {}
48 __vector_iterator(const iterator &rhs): ptr(rhs.base()) {}
49 __vector_iterator<T, Ptr, Ref>& operator++() { ++ ptr; return *this; }
50 __vector_iterator<T, Ptr, Ref> operator++(int) {
55 __vector_iterator<T, Ptr, Ref> operator--() { -- ptr; return *this; }
56 __vector_iterator<T, Ptr, Ref> operator--(int) {
60 __vector_iterator<T, Ptr, Ref> operator+(difference_type n) {
63 friend __vector_iterator<T, Ptr, Ref> operator+(
65 const __vector_iterator<T, Ptr, Ref> &iter) {
68 __vector_iterator<T, Ptr, Ref> operator-(difference_type n) {
71 __vector_iterator<T, Ptr, Ref> operator+=(difference_type n) {
74 __vector_iterator<T, Ptr, Ref> operator-=(difference_type n) {
79 difference_type operator-(const __vector_iterator<U, Ptr2, Ref2> &rhs);
293 typedef __vector_iterator<T, T *, T &> iterator;
294 typedef __vector_iterator<T, const T *, const T &> const_iterator;