summaryrefslogtreecommitdiff
path: root/runtime/mirror/object_array.h
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/mirror/object_array.h')
-rw-r--r--runtime/mirror/object_array.h8
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();
}