1package com.android.ahat { 2 3 public class Main { 4 method public static void main(java.lang.String[]); 5 } 6 7} 8 9package com.android.ahat.dominators { 10 11 public class DominatorsComputation { 12 method public static void computeDominators(com.android.ahat.dominators.DominatorsComputation.Node); 13 } 14 15 public static abstract interface DominatorsComputation.Node { 16 method public abstract java.lang.Object getDominatorsComputationState(); 17 method public abstract java.lang.Iterable<? extends com.android.ahat.dominators.DominatorsComputation.Node> getReferencesForDominators(); 18 method public abstract void setDominator(com.android.ahat.dominators.DominatorsComputation.Node); 19 method public abstract void setDominatorsComputationState(java.lang.Object); 20 } 21 22} 23 24package com.android.ahat.heapdump { 25 26 public class AhatArrayInstance extends com.android.ahat.heapdump.AhatInstance { 27 method public int getLength(); 28 method public com.android.ahat.heapdump.Value getValue(int); 29 method public java.util.List<com.android.ahat.heapdump.Value> getValues(); 30 method public java.lang.String toString(); 31 } 32 33 public class AhatClassInstance extends com.android.ahat.heapdump.AhatInstance { 34 method public java.lang.Iterable<com.android.ahat.heapdump.FieldValue> getInstanceFields(); 35 method public java.lang.String toString(); 36 } 37 38 public class AhatClassObj extends com.android.ahat.heapdump.AhatInstance { 39 method public com.android.ahat.heapdump.AhatInstance getClassLoader(); 40 method public com.android.ahat.heapdump.Field[] getInstanceFields(); 41 method public long getInstanceSize(); 42 method public java.lang.String getName(); 43 method public java.util.List<com.android.ahat.heapdump.FieldValue> getStaticFieldValues(); 44 method public com.android.ahat.heapdump.AhatClassObj getSuperClassObj(); 45 method public java.lang.String toString(); 46 } 47 48 public class AhatHeap implements com.android.ahat.heapdump.Diffable { 49 method public com.android.ahat.heapdump.AhatHeap getBaseline(); 50 method public java.lang.String getName(); 51 method public com.android.ahat.heapdump.Size getSize(); 52 method public boolean isPlaceHolder(); 53 } 54 55 public abstract class AhatInstance implements com.android.ahat.heapdump.Diffable com.android.ahat.dominators.DominatorsComputation.Node { 56 method public com.android.ahat.heapdump.AhatArrayInstance asArrayInstance(); 57 method public java.awt.image.BufferedImage asBitmap(); 58 method public com.android.ahat.heapdump.AhatClassInstance asClassInstance(); 59 method public com.android.ahat.heapdump.AhatClassObj asClassObj(); 60 method public java.lang.String asString(int); 61 method public java.lang.String asString(); 62 method public com.android.ahat.heapdump.AhatInstance getAssociatedBitmapInstance(); 63 method public com.android.ahat.heapdump.AhatInstance getBaseline(); 64 method public java.lang.String getClassName(); 65 method public com.android.ahat.heapdump.AhatClassObj getClassObj(); 66 method public java.lang.String getDexCacheLocation(int); 67 method public java.util.List<com.android.ahat.heapdump.AhatInstance> getDominated(); 68 method public java.lang.Object getDominatorsComputationState(); 69 method public com.android.ahat.heapdump.Value getField(java.lang.String); 70 method public java.util.List<com.android.ahat.heapdump.AhatInstance> getHardReverseReferences(); 71 method public com.android.ahat.heapdump.AhatHeap getHeap(); 72 method public long getId(); 73 method public com.android.ahat.heapdump.AhatInstance getImmediateDominator(); 74 method public java.util.List<com.android.ahat.heapdump.PathElement> getPathFromGcRoot(); 75 method public com.android.ahat.heapdump.AhatInstance getRefField(java.lang.String); 76 method public java.lang.Iterable<? extends com.android.ahat.dominators.DominatorsComputation.Node> getReferencesForDominators(); 77 method public com.android.ahat.heapdump.AhatInstance getReferent(); 78 method public com.android.ahat.heapdump.Size getRetainedSize(com.android.ahat.heapdump.AhatHeap); 79 method public java.util.Collection<com.android.ahat.heapdump.RootType> getRootTypes(); 80 method public com.android.ahat.heapdump.Site getSite(); 81 method public com.android.ahat.heapdump.Size getSize(); 82 method public java.util.List<com.android.ahat.heapdump.AhatInstance> getSoftReverseReferences(); 83 method public com.android.ahat.heapdump.Size getTotalRetainedSize(); 84 method public boolean isArrayInstance(); 85 method public boolean isClassInstance(); 86 method public boolean isClassObj(); 87 method public boolean isPlaceHolder(); 88 method public boolean isRoot(); 89 method public boolean isStronglyReachable(); 90 method public boolean isUnreachable(); 91 method public boolean isWeaklyReachable(); 92 method public void setDominator(com.android.ahat.dominators.DominatorsComputation.Node); 93 method public void setDominatorsComputationState(java.lang.Object); 94 method public abstract java.lang.String toString(); 95 } 96 97 public class AhatSnapshot implements com.android.ahat.heapdump.Diffable { 98 method public com.android.ahat.heapdump.AhatClassObj findClassObj(long); 99 method public com.android.ahat.heapdump.AhatInstance findInstance(long); 100 method public com.android.ahat.heapdump.AhatSnapshot getBaseline(); 101 method public com.android.ahat.heapdump.AhatHeap getHeap(java.lang.String); 102 method public java.util.List<com.android.ahat.heapdump.AhatHeap> getHeaps(); 103 method public com.android.ahat.heapdump.Site getRootSite(); 104 method public java.util.List<com.android.ahat.heapdump.AhatInstance> getRooted(); 105 method public com.android.ahat.heapdump.Site getSite(long); 106 method public boolean isDiffed(); 107 method public boolean isPlaceHolder(); 108 } 109 110 public class Diff { 111 method public static void snapshots(com.android.ahat.heapdump.AhatSnapshot, com.android.ahat.heapdump.AhatSnapshot); 112 } 113 114 public class DiffFields { 115 ctor public DiffFields(); 116 method public static java.util.List<com.android.ahat.heapdump.DiffedFieldValue> diff(java.lang.Iterable<com.android.ahat.heapdump.FieldValue>, java.lang.Iterable<com.android.ahat.heapdump.FieldValue>); 117 } 118 119 public abstract interface Diffable<T> { 120 method public abstract T getBaseline(); 121 method public abstract boolean isPlaceHolder(); 122 } 123 124 public class DiffedFieldValue { 125 method public static com.android.ahat.heapdump.DiffedFieldValue added(com.android.ahat.heapdump.FieldValue); 126 method public static com.android.ahat.heapdump.DiffedFieldValue deleted(com.android.ahat.heapdump.FieldValue); 127 method public static com.android.ahat.heapdump.DiffedFieldValue matched(com.android.ahat.heapdump.FieldValue, com.android.ahat.heapdump.FieldValue); 128 field public final com.android.ahat.heapdump.Value baseline; 129 field public final com.android.ahat.heapdump.Value current; 130 field public final java.lang.String name; 131 field public final com.android.ahat.heapdump.DiffedFieldValue.Status status; 132 field public final com.android.ahat.heapdump.Type type; 133 } 134 135 public static final class DiffedFieldValue.Status extends java.lang.Enum { 136 method public static com.android.ahat.heapdump.DiffedFieldValue.Status valueOf(java.lang.String); 137 method public static final com.android.ahat.heapdump.DiffedFieldValue.Status[] values(); 138 enum_constant public static final com.android.ahat.heapdump.DiffedFieldValue.Status ADDED; 139 enum_constant public static final com.android.ahat.heapdump.DiffedFieldValue.Status DELETED; 140 enum_constant public static final com.android.ahat.heapdump.DiffedFieldValue.Status MATCHED; 141 } 142 143 public class Field { 144 ctor public Field(java.lang.String, com.android.ahat.heapdump.Type); 145 field public final java.lang.String name; 146 field public final com.android.ahat.heapdump.Type type; 147 } 148 149 public class FieldValue { 150 ctor public FieldValue(java.lang.String, com.android.ahat.heapdump.Type, com.android.ahat.heapdump.Value); 151 field public final java.lang.String name; 152 field public final com.android.ahat.heapdump.Type type; 153 field public final com.android.ahat.heapdump.Value value; 154 } 155 156 public class HprofFormatException extends java.lang.Exception { 157 } 158 159 public class Parser { 160 method public static com.android.ahat.heapdump.AhatSnapshot parseHeapDump(java.io.File, com.android.ahat.proguard.ProguardMap) throws com.android.ahat.heapdump.HprofFormatException, java.io.IOException; 161 method public static com.android.ahat.heapdump.AhatSnapshot parseHeapDump(java.nio.ByteBuffer, com.android.ahat.proguard.ProguardMap) throws com.android.ahat.heapdump.HprofFormatException, java.io.IOException; 162 } 163 164 public class PathElement implements com.android.ahat.heapdump.Diffable { 165 ctor public PathElement(com.android.ahat.heapdump.AhatInstance, java.lang.String); 166 method public com.android.ahat.heapdump.PathElement getBaseline(); 167 method public boolean isPlaceHolder(); 168 field public final java.lang.String field; 169 field public final com.android.ahat.heapdump.AhatInstance instance; 170 field public boolean isDominator; 171 } 172 173 public final class RootType extends java.lang.Enum { 174 method public static com.android.ahat.heapdump.RootType valueOf(java.lang.String); 175 method public static final com.android.ahat.heapdump.RootType[] values(); 176 enum_constant public static final com.android.ahat.heapdump.RootType DEBUGGER; 177 enum_constant public static final com.android.ahat.heapdump.RootType FINALIZING; 178 enum_constant public static final com.android.ahat.heapdump.RootType INTERNED_STRING; 179 enum_constant public static final com.android.ahat.heapdump.RootType JAVA_FRAME; 180 enum_constant public static final com.android.ahat.heapdump.RootType JNI_GLOBAL; 181 enum_constant public static final com.android.ahat.heapdump.RootType JNI_LOCAL; 182 enum_constant public static final com.android.ahat.heapdump.RootType JNI_MONITOR; 183 enum_constant public static final com.android.ahat.heapdump.RootType MONITOR; 184 enum_constant public static final com.android.ahat.heapdump.RootType NATIVE_STACK; 185 enum_constant public static final com.android.ahat.heapdump.RootType STICKY_CLASS; 186 enum_constant public static final com.android.ahat.heapdump.RootType THREAD; 187 enum_constant public static final com.android.ahat.heapdump.RootType THREAD_BLOCK; 188 enum_constant public static final com.android.ahat.heapdump.RootType UNKNOWN; 189 enum_constant public static final com.android.ahat.heapdump.RootType VM_INTERNAL; 190 } 191 192 public class Site implements com.android.ahat.heapdump.Diffable { 193 method public com.android.ahat.heapdump.Site findSite(long); 194 method public com.android.ahat.heapdump.Site getBaseline(); 195 method public java.util.List<com.android.ahat.heapdump.Site> getChildren(); 196 method public java.lang.String getFilename(); 197 method public long getId(); 198 method public int getLineNumber(); 199 method public java.lang.String getMethodName(); 200 method public void getObjects(java.lang.String, java.lang.String, java.util.Collection<com.android.ahat.heapdump.AhatInstance>); 201 method public java.util.List<com.android.ahat.heapdump.Site.ObjectsInfo> getObjectsInfos(); 202 method public com.android.ahat.heapdump.Site getParent(); 203 method public java.lang.String getSignature(); 204 method public com.android.ahat.heapdump.Size getSize(com.android.ahat.heapdump.AhatHeap); 205 method public com.android.ahat.heapdump.Size getTotalSize(); 206 method public boolean isPlaceHolder(); 207 } 208 209 public static class Site.ObjectsInfo implements com.android.ahat.heapdump.Diffable { 210 method public com.android.ahat.heapdump.Site.ObjectsInfo getBaseline(); 211 method public java.lang.String getClassName(); 212 method public boolean isPlaceHolder(); 213 field public com.android.ahat.heapdump.AhatClassObj classObj; 214 field public com.android.ahat.heapdump.AhatHeap heap; 215 field public com.android.ahat.heapdump.Size numBytes; 216 field public long numInstances; 217 } 218 219 public class Size { 220 ctor public Size(long, long); 221 method public long getJavaSize(); 222 method public long getRegisteredNativeSize(); 223 method public long getSize(); 224 method public boolean isZero(); 225 method public com.android.ahat.heapdump.Size plus(com.android.ahat.heapdump.Size); 226 method public com.android.ahat.heapdump.Size plusRegisteredNativeSize(long); 227 field public static com.android.ahat.heapdump.Size ZERO; 228 } 229 230 public class Sort { 231 ctor public Sort(); 232 method public static java.util.Comparator<com.android.ahat.heapdump.AhatInstance> defaultInstanceCompare(com.android.ahat.heapdump.AhatSnapshot); 233 method public static java.util.Comparator<com.android.ahat.heapdump.Site> defaultSiteCompare(com.android.ahat.heapdump.AhatSnapshot); 234 method public static <T> java.util.Comparator<T> withPriority(java.util.Comparator<T>...); 235 field public static final java.util.Comparator<com.android.ahat.heapdump.FieldValue> FIELD_VALUE_BY_NAME; 236 field public static final java.util.Comparator<com.android.ahat.heapdump.FieldValue> FIELD_VALUE_BY_TYPE; 237 field public static final java.util.Comparator<com.android.ahat.heapdump.AhatInstance> INSTANCE_BY_TOTAL_RETAINED_SIZE; 238 field public static final java.util.Comparator<com.android.ahat.heapdump.Site.ObjectsInfo> OBJECTS_INFO_BY_CLASS_NAME; 239 field public static final java.util.Comparator<com.android.ahat.heapdump.Site.ObjectsInfo> OBJECTS_INFO_BY_HEAP_NAME; 240 field public static final java.util.Comparator<com.android.ahat.heapdump.Site.ObjectsInfo> OBJECTS_INFO_BY_SIZE; 241 field public static final java.util.Comparator<com.android.ahat.heapdump.Site> SITE_BY_TOTAL_SIZE; 242 field public static final java.util.Comparator<com.android.ahat.heapdump.Size> SIZE_BY_SIZE; 243 } 244 245 public final class Type extends java.lang.Enum { 246 method public static com.android.ahat.heapdump.Type valueOf(java.lang.String); 247 method public static final com.android.ahat.heapdump.Type[] values(); 248 enum_constant public static final com.android.ahat.heapdump.Type BOOLEAN; 249 enum_constant public static final com.android.ahat.heapdump.Type BYTE; 250 enum_constant public static final com.android.ahat.heapdump.Type CHAR; 251 enum_constant public static final com.android.ahat.heapdump.Type DOUBLE; 252 enum_constant public static final com.android.ahat.heapdump.Type FLOAT; 253 enum_constant public static final com.android.ahat.heapdump.Type INT; 254 enum_constant public static final com.android.ahat.heapdump.Type LONG; 255 enum_constant public static final com.android.ahat.heapdump.Type OBJECT; 256 enum_constant public static final com.android.ahat.heapdump.Type SHORT; 257 field public final java.lang.String name; 258 } 259 260 public abstract class Value { 261 ctor public Value(); 262 method public com.android.ahat.heapdump.AhatInstance asAhatInstance(); 263 method public java.lang.Byte asByte(); 264 method public java.lang.Character asChar(); 265 method public java.lang.Integer asInteger(); 266 method public java.lang.Long asLong(); 267 method public abstract boolean equals(java.lang.Object); 268 method public static com.android.ahat.heapdump.Value getBaseline(com.android.ahat.heapdump.Value); 269 method public static com.android.ahat.heapdump.Type getType(com.android.ahat.heapdump.Value); 270 method public boolean isAhatInstance(); 271 method public boolean isInteger(); 272 method public boolean isLong(); 273 method public static com.android.ahat.heapdump.Value pack(com.android.ahat.heapdump.AhatInstance); 274 method public static com.android.ahat.heapdump.Value pack(boolean); 275 method public static com.android.ahat.heapdump.Value pack(char); 276 method public static com.android.ahat.heapdump.Value pack(float); 277 method public static com.android.ahat.heapdump.Value pack(double); 278 method public static com.android.ahat.heapdump.Value pack(byte); 279 method public static com.android.ahat.heapdump.Value pack(short); 280 method public static com.android.ahat.heapdump.Value pack(int); 281 method public static com.android.ahat.heapdump.Value pack(long); 282 method public abstract java.lang.String toString(); 283 } 284 285} 286 287package com.android.ahat.proguard { 288 289 public class ProguardMap { 290 ctor public ProguardMap(); 291 method public java.lang.String getClassName(java.lang.String); 292 method public java.lang.String getFieldName(java.lang.String, java.lang.String); 293 method public com.android.ahat.proguard.ProguardMap.Frame getFrame(java.lang.String, java.lang.String, java.lang.String, java.lang.String, int); 294 method public void readFromFile(java.io.File) throws java.io.FileNotFoundException, java.io.IOException, java.text.ParseException; 295 method public void readFromReader(java.io.Reader) throws java.io.IOException, java.text.ParseException; 296 } 297 298 public static class ProguardMap.Frame { 299 field public final java.lang.String filename; 300 field public final int line; 301 field public final java.lang.String method; 302 field public final java.lang.String signature; 303 } 304 305} 306 307