summaryrefslogtreecommitdiff
path: root/runtime/mirror/object.h
diff options
context:
space:
mode:
author Vladimir Marko <vmarko@google.com> 2019-05-28 16:39:29 +0100
committer Vladimir Marko <vmarko@google.com> 2019-05-31 14:15:59 +0000
commit3068d582eff4552ff260d7966fcbdc93e17d0207 (patch)
treebc894a414070a06ea2a231fb98607b57b8c3b0cb /runtime/mirror/object.h
parent991cd5cc16267b74e390f640eb441102062babb6 (diff)
Clean up creating handles from `this`.
Make these member functions static and take an additional parameter `Handle<.> h_this`. Callers mostly already have a Handle<> to pass, so we avoid an extra StackHandleScope. This pattern was already used for some functions. Test: m test-art-host-gtest Test: testrunner.py --host --optimizing --interpreter Change-Id: I4f4478b0526bcb2f3c23305d3b3cc4a65fff9ff5
Diffstat (limited to 'runtime/mirror/object.h')
-rw-r--r--runtime/mirror/object.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/runtime/mirror/object.h b/runtime/mirror/object.h
index e6e91601d9..2eff560442 100644
--- a/runtime/mirror/object.h
+++ b/runtime/mirror/object.h
@@ -33,6 +33,7 @@ namespace art {
class ArtField;
class ArtMethod;
+template <class T> class Handle;
class LockWord;
class Monitor;
struct ObjectOffsets;
@@ -130,7 +131,8 @@ class MANAGED LOCKABLE Object {
template<VerifyObjectFlags kVerifyFlags = kDefaultVerifyFlags>
size_t SizeOf() REQUIRES_SHARED(Locks::mutator_lock_);
- ObjPtr<Object> Clone(Thread* self) REQUIRES_SHARED(Locks::mutator_lock_)
+ static ObjPtr<Object> Clone(Handle<Object> h_this, Thread* self)
+ REQUIRES_SHARED(Locks::mutator_lock_)
REQUIRES(!Roles::uninterruptible_);
int32_t IdentityHashCode()