diff options
Diffstat (limited to 'runtime/mirror/object_array.h')
-rw-r--r-- | runtime/mirror/object_array.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/runtime/mirror/object_array.h b/runtime/mirror/object_array.h index 9a53708018..c6b1e01793 100644 --- a/runtime/mirror/object_array.h +++ b/runtime/mirror/object_array.h @@ -162,11 +162,17 @@ class MANAGED ObjectArray: public Array { // Everything is NO_THREAD_SAFETY_ANALYSIS to work-around STL incompat with thread-annotations. // Everything should have REQUIRES_SHARED(Locks::mutator_lock_). template <typename T, typename Container> -class ArrayIter : public std::iterator<std::forward_iterator_tag, ObjPtr<T>> { +class ArrayIter { private: using Iter = ArrayIter<T, Container>; public: + using iterator_category = std::forward_iterator_tag; + using value_type = ObjPtr<T>; + using difference_type = ptrdiff_t; + using pointer = value_type*; + using reference = value_type&; + ArrayIter(Container array, int32_t idx) NO_THREAD_SAFETY_ANALYSIS : array_(array), idx_(idx) { CheckIdx(); } |