ObjectReporter

class ObjectReporter(heapObject: HeapObject)

Enables ObjectInspector implementations to provide insights on heapObject, which is an object (class, instance or array) found in the heap.

A given ObjectReporter only maps to one object in the heap, but is shared to many ObjectInspector implementations and accumulates insights.

Constructors

ObjectReporter
Link copied to clipboard
fun ObjectReporter(heapObject: HeapObject)

Functions

whenInstanceOf
Link copied to clipboard
fun whenInstanceOf(expectedClassName: String, block: ObjectReporter.(HeapObject.HeapInstance) -> Unit)
fun whenInstanceOf(expectedClass: KClass<out Any>, block: ObjectReporter.(HeapObject.HeapInstance) -> Unit)

Runs block if ObjectReporter.heapObject is an instance of expectedClass.

Properties

heapObject
Link copied to clipboard
val heapObject: HeapObject
labels
Link copied to clipboard
val labels: LinkedHashSet<String>

Labels that will be visible on the corresponding heapObject in the leak trace.

leakingReasons
Link copied to clipboard
val leakingReasons: MutableSet<String>

Reasons for which this object is expected to be unreachable (ie it's leaking).

likelyLeakingReasons
Link copied to clipboard
val likelyLeakingReasons: MutableSet<String>

Deprecated, use leakingReasons instead.

notLeakingReasons
Link copied to clipboard
val notLeakingReasons: MutableSet<String>

Reasons for which this object is expected to be reachable (ie it's not leaking).