//leakcanary/shark/ObjectReporter
ObjectReporter¶
class ObjectReporter(val 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 | fun ObjectReporter(heapObject: HeapObject) |
Functions¶
Name | Summary |
---|---|
whenInstanceOf | fun whenInstanceOf(expectedClassName: String, block: ObjectReporter.(HeapObject.HeapInstance) -> Unit) Runs block if ObjectReporter.heapObject is an instance of expectedClassName. fun whenInstanceOf(expectedClass: KClass<out Any>, block: ObjectReporter.(HeapObject.HeapInstance) -> Unit) Runs block if ObjectReporter.heapObject is an instance of expectedClass. |
Properties¶
Name | Summary |
---|---|
heapObject | val heapObject: HeapObject |
labels | val labels: LinkedHashSet<String> Labels that will be visible on the corresponding heapObject in the leak trace. |
leakingReasons | val leakingReasons: MutableSet<String> Reasons for which this object is expected to be unreachable (ie it’s leaking). |
notLeakingReasons | val notLeakingReasons: MutableSet<String> Reasons for which this object is expected to be reachable (ie it’s not leaking). |