META-INF/
META-INF/MANIFEST.MF
com/
com/squareup/
com/squareup/haha/
com/squareup/haha/perflib/
com/squareup/haha/perflib/HahaSpy.classHahaSpy.java
package com.squareup.haha.perflib
public final com.squareup.haha.perflib.HahaSpy extends java.lang.Object {
public static com.squareup.haha.perflib.Instance allocatingThread (com.squareup.haha.perflib.Instance)
int threadSerialNumber
com.squareup.haha.perflib.Instance instance
com.squareup.haha.perflib.Snapshot snapshot
int threadSerialNumber
com.squareup.haha.perflib.ThreadObj thread
private void ()
}
com/squareup/leakcanary/
com/squareup/leakcanary/AnalysisResult.classAnalysisResult.java
package com.squareup.leakcanary
public final com.squareup.leakcanary.AnalysisResult extends java.lang.Object implements java.io.Serializable {
public final boolean leakFound
public final boolean excludedLeak
public final String className
public final com.squareup.leakcanary.LeakTrace leakTrace
public final Throwable failure
public final long retainedHeapSize
public final long analysisDurationMs
public static com.squareup.leakcanary.AnalysisResult noLeak (long)
long analysisDurationMs
public static com.squareup.leakcanary.AnalysisResult leakDetected (boolean, java.lang.String, com.squareup.leakcanary.LeakTrace, long, long)
boolean excludedLeak
String className
com.squareup.leakcanary.LeakTrace leakTrace
long retainedHeapSize
long analysisDurationMs
public static com.squareup.leakcanary.AnalysisResult failure (java.lang.Throwable, long)
Throwable failure
long analysisDurationMs
private void (boolean, boolean, java.lang.String, com.squareup.leakcanary.LeakTrace, java.lang.Throwable, long, long)
boolean leakFound
boolean excludedLeak
String className
com.squareup.leakcanary.LeakTrace leakTrace
Throwable failure
long retainedHeapSize
long analysisDurationMs
}
com/squareup/leakcanary/analyzer/
com/squareup/leakcanary/analyzer/BuildConfig.classBuildConfig.java
package com.squareup.leakcanary.analyzer
public final com.squareup.leakcanary.analyzer.BuildConfig extends java.lang.Object {
public static final boolean DEBUG
public static final String APPLICATION_ID
public static final String BUILD_TYPE
public static final String FLAVOR
public static final int VERSION_CODE
public static final String VERSION_NAME
public void ()
}
com/squareup/leakcanary/HahaHelper.classHahaHelper.java
package com.squareup.leakcanary
public final com.squareup.leakcanary.HahaHelper extends java.lang.Object {
private static final java.util.Set WRAPPER_TYPES
static java.lang.String fieldToString (java.util.Map$Entry)
java.util.Map$Entry entry
static java.lang.String fieldToString (com.squareup.haha.perflib.ClassInstance$FieldValue)
com.squareup.haha.perflib.ClassInstance$FieldValue fieldValue
static java.lang.String fieldToString (com.squareup.haha.perflib.Field, java.lang.Object)
com.squareup.haha.perflib.Field field
Object value
static java.lang.String threadName (com.squareup.haha.perflib.Instance)
com.squareup.haha.perflib.Instance holder
java.util.List values
Object nameField
static boolean extendsThread (com.squareup.haha.perflib.ClassObj)
com.squareup.haha.perflib.ClassObj clazz
boolean extendsThread
com.squareup.haha.perflib.ClassObj parentClass
static java.lang.String asString (java.lang.Object)
Integer offset
com.squareup.haha.perflib.ArrayInstance charArray
Integer offset
com.squareup.haha.perflib.ArrayInstance charArray
com.squareup.haha.perflib.Heap heap
com.squareup.haha.perflib.Instance inlineInstance
Object stringObject
com.squareup.haha.perflib.Instance instance
java.util.List values
Integer count
Object value
Integer offset
com.squareup.haha.perflib.ArrayInstance charArray
char[] chars
public static boolean isPrimitiveWrapper (java.lang.Object)
Object value
public static boolean isPrimitiveOrWrapperArray (java.lang.Object)
Object value
com.squareup.haha.perflib.ArrayInstance arrayInstance
private static boolean isCharArray (java.lang.Object)
Object value
static java.util.List classInstanceValues (com.squareup.haha.perflib.Instance)
com.squareup.haha.perflib.Instance instance
com.squareup.haha.perflib.ClassInstance classInstance
static java.lang.Object fieldValue (java.util.List, java.lang.String)
com.squareup.haha.perflib.ClassInstance$FieldValue fieldValue
java.util.Iterator i$
java.util.List values
String fieldName
static boolean hasField (java.util.List, java.lang.String)
com.squareup.haha.perflib.ClassInstance$FieldValue fieldValue
java.util.Iterator i$
java.util.List values
String fieldName
private void ()
static void ()
}
com/squareup/leakcanary/HeapAnalyzer$1.classHeapAnalyzer.java
package com.squareup.leakcanary
com.squareup.leakcanary.HeapAnalyzer$1 extends java.lang.Object implements com.squareup.haha.trove.TObjectProcedure {
final java.util.List val$gcRoots
final com.squareup.haha.trove.THashMap val$uniqueRootMap
final com.squareup.leakcanary.HeapAnalyzer this$0
void (com.squareup.leakcanary.HeapAnalyzer, java.util.List, com.squareup.haha.trove.THashMap)
public boolean execute (java.lang.String)
String key
public volatile boolean execute (java.lang.Object)
}
com/squareup/leakcanary/HeapAnalyzer.classHeapAnalyzer.java
package com.squareup.leakcanary
public final com.squareup.leakcanary.HeapAnalyzer extends java.lang.Object {
private static final String ANONYMOUS_CLASS_NAME_PATTERN
private final com.squareup.leakcanary.ExcludedRefs excludedRefs
public void (com.squareup.leakcanary.ExcludedRefs)
com.squareup.leakcanary.ExcludedRefs excludedRefs
public com.squareup.leakcanary.AnalysisResult checkForLeak (java.io.File, java.lang.String)
Exception exception
com.squareup.haha.perflib.io.HprofBuffer buffer
com.squareup.haha.perflib.HprofParser parser
com.squareup.haha.perflib.Snapshot snapshot
com.squareup.haha.perflib.Instance leakingRef
Throwable e
java.io.File heapDumpFile
String referenceKey
long analysisStartNanoTime
void deduplicateGcRoots (com.squareup.haha.perflib.Snapshot)
String key
com.squareup.haha.perflib.RootObj root
java.util.Iterator i$
com.squareup.haha.perflib.Snapshot snapshot
com.squareup.haha.trove.THashMap uniqueRootMap
java.util.List gcRoots
private java.lang.String generateRootKey (com.squareup.haha.perflib.RootObj)
com.squareup.haha.perflib.RootObj root
private com.squareup.haha.perflib.Instance findLeakingReference (java.lang.String, com.squareup.haha.perflib.Snapshot)
java.util.List values
String keyCandidate
com.squareup.haha.perflib.Instance instance
java.util.Iterator i$
String key
com.squareup.haha.perflib.Snapshot snapshot
com.squareup.haha.perflib.ClassObj refClass
java.util.List keysFound
private com.squareup.leakcanary.AnalysisResult findLeakTrace (long, com.squareup.haha.perflib.Snapshot, com.squareup.haha.perflib.Instance)
long analysisStartNanoTime
com.squareup.haha.perflib.Snapshot snapshot
com.squareup.haha.perflib.Instance leakingRef
com.squareup.leakcanary.ShortestPathFinder pathFinder
com.squareup.leakcanary.ShortestPathFinder$Result result
com.squareup.leakcanary.LeakTrace leakTrace
String className
com.squareup.haha.perflib.Instance leakingInstance
long retainedSize
private int computeIgnoredBitmapRetainedSize (com.squareup.haha.perflib.Snapshot, com.squareup.haha.perflib.Instance)
com.squareup.haha.perflib.ArrayInstance mBufferInstance
long bufferSize
long bitmapSize
com.squareup.haha.perflib.Instance bitmapInstance
java.util.Iterator i$
com.squareup.haha.perflib.Snapshot snapshot
com.squareup.haha.perflib.Instance leakingInstance
int bitmapRetainedSize
com.squareup.haha.perflib.ClassObj bitmapClass
private boolean isIgnoredDominator (com.squareup.haha.perflib.Instance, com.squareup.haha.perflib.Instance)
com.squareup.haha.perflib.Instance immediateDominator
com.squareup.haha.perflib.Instance dominator
com.squareup.haha.perflib.Instance instance
boolean foundNativeRoot
private com.squareup.leakcanary.LeakTrace buildLeakTrace (com.squareup.leakcanary.LeakNode)
com.squareup.leakcanary.LeakTraceElement element
com.squareup.leakcanary.LeakNode leakingNode
java.util.List elements
com.squareup.leakcanary.LeakNode node
private com.squareup.leakcanary.LeakTraceElement buildLeakElement (com.squareup.leakcanary.LeakNode)
com.squareup.haha.perflib.Field field
Object value
java.util.Map$Entry entry
java.util.Iterator i$
com.squareup.haha.perflib.ClassObj classObj
com.squareup.leakcanary.LeakTraceElement$Holder holderType
String className
int i
Object[] values
com.squareup.haha.perflib.ArrayInstance arrayInstance
com.squareup.leakcanary.LeakTraceElement$Holder holderType
String className
java.util.Map$Entry entry
java.util.Iterator i$
com.squareup.haha.perflib.ClassInstance$FieldValue field
java.util.Iterator i$
String threadName
com.squareup.leakcanary.LeakTraceElement$Holder holderType
Class implementedInterface
Class actualClass
Class[] interfaces
com.squareup.leakcanary.LeakTraceElement$Holder holderType
String parentClassName
com.squareup.leakcanary.LeakTraceElement$Holder holderType
com.squareup.haha.perflib.ClassInstance classInstance
com.squareup.haha.perflib.ClassObj classObj
com.squareup.leakcanary.LeakNode node
com.squareup.haha.perflib.Instance holder
com.squareup.leakcanary.LeakTraceElement$Type type
String referenceName
com.squareup.leakcanary.LeakTraceElement$Holder holderType
String className
String extra
java.util.List fields
private long since (long)
long analysisStartNanoTime
}
com/squareup/leakcanary/LeakNode.classLeakNode.java
package com.squareup.leakcanary
final com.squareup.leakcanary.LeakNode extends java.lang.Object {
final com.squareup.leakcanary.Exclusion exclusion
final com.squareup.haha.perflib.Instance instance
final com.squareup.leakcanary.LeakNode parent
final String referenceName
final com.squareup.leakcanary.LeakTraceElement$Type referenceType
void (com.squareup.leakcanary.Exclusion, com.squareup.haha.perflib.Instance, com.squareup.leakcanary.LeakNode, java.lang.String, com.squareup.leakcanary.LeakTraceElement$Type)
com.squareup.leakcanary.Exclusion exclusion
com.squareup.haha.perflib.Instance instance
com.squareup.leakcanary.LeakNode parent
String referenceName
com.squareup.leakcanary.LeakTraceElement$Type referenceType
}
com/squareup/leakcanary/LeakTrace.classLeakTrace.java
package com.squareup.leakcanary
public final com.squareup.leakcanary.LeakTrace extends java.lang.Object implements java.io.Serializable {
public final java.util.List elements
void (java.util.List)
java.util.List elements
public java.lang.String toString ()
com.squareup.leakcanary.LeakTraceElement element
int i
StringBuilder sb
public java.lang.String toDetailedString ()
com.squareup.leakcanary.LeakTraceElement element
java.util.Iterator i$
String string
}
com/squareup/leakcanary/LeakTraceElement$Holder.classLeakTraceElement.java
package com.squareup.leakcanary
public final com.squareup.leakcanary.LeakTraceElement$Holder extends java.lang.Enum {
public static final com.squareup.leakcanary.LeakTraceElement$Holder OBJECT
public static final com.squareup.leakcanary.LeakTraceElement$Holder CLASS
public static final com.squareup.leakcanary.LeakTraceElement$Holder THREAD
public static final com.squareup.leakcanary.LeakTraceElement$Holder ARRAY
private static final com.squareup.leakcanary.LeakTraceElement$Holder[] $VALUES
public static com.squareup.leakcanary.LeakTraceElement$Holder[] values ()
public static com.squareup.leakcanary.LeakTraceElement$Holder valueOf (java.lang.String)
String name
private void (java.lang.String, int)
static void ()
}
com/squareup/leakcanary/LeakTraceElement$Type.classLeakTraceElement.java
package com.squareup.leakcanary
public final com.squareup.leakcanary.LeakTraceElement$Type extends java.lang.Enum {
public static final com.squareup.leakcanary.LeakTraceElement$Type INSTANCE_FIELD
public static final com.squareup.leakcanary.LeakTraceElement$Type STATIC_FIELD
public static final com.squareup.leakcanary.LeakTraceElement$Type LOCAL
public static final com.squareup.leakcanary.LeakTraceElement$Type ARRAY_ENTRY
private static final com.squareup.leakcanary.LeakTraceElement$Type[] $VALUES
public static com.squareup.leakcanary.LeakTraceElement$Type[] values ()
public static com.squareup.leakcanary.LeakTraceElement$Type valueOf (java.lang.String)
String name
private void (java.lang.String, int)
static void ()
}
com/squareup/leakcanary/LeakTraceElement.classLeakTraceElement.java
package com.squareup.leakcanary
public final com.squareup.leakcanary.LeakTraceElement extends java.lang.Object implements java.io.Serializable {
public final String referenceName
public final com.squareup.leakcanary.LeakTraceElement$Type type
public final com.squareup.leakcanary.LeakTraceElement$Holder holder
public final String className
public final String extra
public final com.squareup.leakcanary.Exclusion exclusion
public final java.util.List fields
void (java.lang.String, com.squareup.leakcanary.LeakTraceElement$Type, com.squareup.leakcanary.LeakTraceElement$Holder, java.lang.String, java.lang.String, com.squareup.leakcanary.Exclusion, java.util.List)
String referenceName
com.squareup.leakcanary.LeakTraceElement$Type type
com.squareup.leakcanary.LeakTraceElement$Holder holder
String className
String extra
com.squareup.leakcanary.Exclusion exclusion
java.util.List fields
public java.lang.String toString ()
String string
public java.lang.String toDetailedString ()
String field
java.util.Iterator i$
String string
}
com/squareup/leakcanary/ShortestPathFinder$1.classShortestPathFinder.java
package com.squareup.leakcanary
com.squareup.leakcanary.ShortestPathFinder$1 extends java.lang.Object {
static final int[] $SwitchMap$com$squareup$haha$perflib$RootType
static void ()
}
com/squareup/leakcanary/ShortestPathFinder$Result.classShortestPathFinder.java
package com.squareup.leakcanary
final com.squareup.leakcanary.ShortestPathFinder$Result extends java.lang.Object {
final com.squareup.leakcanary.LeakNode leakingNode
final boolean excludingKnownLeaks
void (com.squareup.leakcanary.LeakNode, boolean)
com.squareup.leakcanary.LeakNode leakingNode
boolean excludingKnownLeaks
}
com/squareup/leakcanary/ShortestPathFinder.classShortestPathFinder.java
package com.squareup.leakcanary
final com.squareup.leakcanary.ShortestPathFinder extends java.lang.Object {
private final com.squareup.leakcanary.ExcludedRefs excludedRefs
private final java.util.Queue toVisitQueue
private final java.util.Queue toVisitIfNoPathQueue
private final java.util.LinkedHashSet toVisitSet
private final java.util.LinkedHashSet toVisitIfNoPathSet
private final java.util.LinkedHashSet visitedSet
private boolean canIgnoreStrings
void (com.squareup.leakcanary.ExcludedRefs)
com.squareup.leakcanary.ExcludedRefs excludedRefs
com.squareup.leakcanary.ShortestPathFinder$Result findPath (com.squareup.haha.perflib.Snapshot, com.squareup.haha.perflib.Instance)
com.squareup.leakcanary.LeakNode node
com.squareup.leakcanary.LeakNode node
com.squareup.haha.perflib.Snapshot snapshot
com.squareup.haha.perflib.Instance leakingRef
boolean excludingKnownLeaks
com.squareup.leakcanary.LeakNode leakingNode
private void clearState ()
private void enqueueGcRoots (com.squareup.haha.perflib.Snapshot)
com.squareup.haha.perflib.Instance thread
String threadName
com.squareup.leakcanary.Exclusion params
com.squareup.haha.perflib.RootObj rootObj
java.util.Iterator i$
com.squareup.haha.perflib.Snapshot snapshot
private boolean checkSeen (com.squareup.leakcanary.LeakNode)
com.squareup.leakcanary.LeakNode node
private void visitRootObj (com.squareup.leakcanary.LeakNode)
com.squareup.haha.perflib.Instance holder
com.squareup.leakcanary.Exclusion exclusion
com.squareup.leakcanary.LeakNode parent
com.squareup.leakcanary.LeakNode node
com.squareup.haha.perflib.RootObj rootObj
com.squareup.haha.perflib.Instance child
private void visitClassObj (com.squareup.leakcanary.LeakNode)
com.squareup.leakcanary.Exclusion params
com.squareup.haha.perflib.Field field
String fieldName
com.squareup.haha.perflib.Instance child
boolean visit
java.util.Map$Entry entry
java.util.Iterator i$
com.squareup.leakcanary.LeakNode node
com.squareup.haha.perflib.ClassObj classObj
java.util.Map ignoredStaticFields
private void visitClassInstance (com.squareup.leakcanary.LeakNode)
com.squareup.leakcanary.Exclusion params
java.util.Map classIgnoredFields
com.squareup.leakcanary.Exclusion fieldExclusion
com.squareup.haha.perflib.Field field
com.squareup.haha.perflib.Instance child
String fieldName
com.squareup.leakcanary.Exclusion params
com.squareup.haha.perflib.ClassInstance$FieldValue fieldValue
java.util.Iterator i$
com.squareup.leakcanary.LeakNode node
com.squareup.haha.perflib.ClassInstance classInstance
java.util.Map ignoredFields
com.squareup.haha.perflib.ClassObj superClassObj
com.squareup.leakcanary.Exclusion classExclusion
private void visitArrayInstance (com.squareup.leakcanary.LeakNode)
com.squareup.haha.perflib.Instance child
int i
Object[] values
com.squareup.leakcanary.LeakNode node
com.squareup.haha.perflib.ArrayInstance arrayInstance
com.squareup.haha.perflib.Type arrayType
private void enqueue (com.squareup.leakcanary.Exclusion, com.squareup.leakcanary.LeakNode, com.squareup.haha.perflib.Instance, java.lang.String, com.squareup.leakcanary.LeakTraceElement$Type)
com.squareup.leakcanary.Exclusion exclusion
com.squareup.leakcanary.LeakNode parent
com.squareup.haha.perflib.Instance child
String referenceName
com.squareup.leakcanary.LeakTraceElement$Type referenceType
boolean visitNow
com.squareup.leakcanary.LeakNode childNode
private boolean isString (com.squareup.haha.perflib.Instance)
com.squareup.haha.perflib.Instance instance
}