summaryrefslogtreecommitdiff
path: root/runtime/art_field.h
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/art_field.h')
-rw-r--r--runtime/art_field.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/runtime/art_field.h b/runtime/art_field.h
index 4e77e7f0a5..c205920833 100644
--- a/runtime/art_field.h
+++ b/runtime/art_field.h
@@ -27,6 +27,7 @@
namespace art {
class DexFile;
+template<typename T> class LengthPrefixedArray;
class ScopedObjectAccessAlreadyRunnable;
namespace mirror {
@@ -39,6 +40,15 @@ class String;
class ArtField final {
public:
+ // Visit declaring classes of all the art-fields in 'array' that reside
+ // in [start_boundary, end_boundary).
+ template<typename RootVisitorType>
+ static void VisitArrayRoots(RootVisitorType& visitor,
+ uint8_t* start_boundary,
+ uint8_t* end_boundary,
+ LengthPrefixedArray<ArtField>* array)
+ REQUIRES_SHARED(Locks::mutator_lock_);
+
template<ReadBarrierOption kReadBarrierOption = kWithReadBarrier>
ObjPtr<mirror::Class> GetDeclaringClass() REQUIRES_SHARED(Locks::mutator_lock_);