diff options
Diffstat (limited to 'runtime/mirror/object_array.h')
| -rw-r--r-- | runtime/mirror/object_array.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/runtime/mirror/object_array.h b/runtime/mirror/object_array.h index 607b000488..b45cafd2a3 100644 --- a/runtime/mirror/object_array.h +++ b/runtime/mirror/object_array.h @@ -83,14 +83,15 @@ class MANAGED ObjectArray: public Array { ObjectArray<T>* CopyOf(Thread* self, int32_t new_length) SHARED_REQUIRES(Locks::mutator_lock_) REQUIRES(!Roles::uninterruptible_); + static MemberOffset OffsetOfElement(int32_t i); + + private: // TODO fix thread safety analysis broken by the use of template. This should be // SHARED_REQUIRES(Locks::mutator_lock_). - template<const bool kVisitClass, typename Visitor> + template<typename Visitor> void VisitReferences(const Visitor& visitor) NO_THREAD_SAFETY_ANALYSIS; - static MemberOffset OffsetOfElement(int32_t i); - - private: + friend class Object; // For VisitReferences DISALLOW_IMPLICIT_CONSTRUCTORS(ObjectArray); }; |