public class android.app.usage.TimeSparseArray<E> extends android.util.LongSparseArray<E>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: android.app.usage.TimeSparseArray
super_class: android.util.LongSparseArray
{
private static final java.lang.String TAG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private boolean mWtfReported;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Landroid/app/usage/TimeSparseArray;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
putstatic android.app.usage.TimeSparseArray.TAG:Ljava/lang/String;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial android.util.LongSparseArray.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/app/usage/TimeSparseArray<TE;>;
public int closestIndexOnOrAfter(long);
descriptor: (J)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual android.app.usage.TimeSparseArray.size:()I
istore 3
start local 3 1: iconst_0
istore 4
start local 4 2: iload 3
iconst_1
isub
istore 5
start local 5 3: iconst_m1
istore 6
start local 6 4: ldc -1
lstore 7
start local 7 5: goto 15
6: StackMap locals: android.app.usage.TimeSparseArray long int int int int long
StackMap stack:
iload 4
iload 5
iload 4
isub
iconst_2
idiv
iadd
istore 6
7: aload 0
iload 6
invokevirtual android.app.usage.TimeSparseArray.keyAt:(I)J
lstore 7
8: lload 1
lload 7
lcmp
ifle 11
9: iload 6
iconst_1
iadd
istore 4
10: goto 15
StackMap locals:
StackMap stack:
11: lload 1
lload 7
lcmp
ifge 14
12: iload 6
iconst_1
isub
istore 5
13: goto 15
14: StackMap locals:
StackMap stack:
iload 6
ireturn
15: StackMap locals:
StackMap stack:
iload 4
iload 5
if_icmple 6
16: lload 1
lload 7
lcmp
ifge 18
17: iload 6
ireturn
18: StackMap locals:
StackMap stack:
lload 1
lload 7
lcmp
ifle 20
iload 4
iload 3
if_icmpge 20
19: iload 4
ireturn
20: StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Landroid/app/usage/TimeSparseArray<TE;>;
0 21 1 time J
1 21 3 size I
2 21 4 lo I
3 21 5 hi I
4 21 6 mid I
5 21 7 key J
MethodParameters:
Name Flags
time
public void put(long, );
descriptor: (JLjava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 3 0: aload 0
lload 1
invokevirtual android.app.usage.TimeSparseArray.indexOfKey:(J)I
iflt 4
1: aload 0
getfield android.app.usage.TimeSparseArray.mWtfReported:Z
ifne 4
2: getstatic android.app.usage.TimeSparseArray.TAG:Ljava/lang/String;
new java.lang.StringBuilder
dup
ldc "Overwriting value "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
lload 1
invokevirtual android.app.usage.TimeSparseArray.get:(J)Ljava/lang/Object;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " by "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Slog.wtf:(Ljava/lang/String;Ljava/lang/String;)I
pop
3: aload 0
iconst_1
putfield android.app.usage.TimeSparseArray.mWtfReported:Z
4: StackMap locals:
StackMap stack:
aload 0
lload 1
aload 3
invokespecial android.util.LongSparseArray.put:(JLjava/lang/Object;)V
5: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/app/usage/TimeSparseArray<TE;>;
0 6 1 key J
0 6 3 value TE;
Signature: (JTE;)V
MethodParameters:
Name Flags
key
value
public int closestIndexOnOrBefore(long);
descriptor: (J)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
lload 1
invokevirtual android.app.usage.TimeSparseArray.closestIndexOnOrAfter:(J)I
istore 3
start local 3 1: iload 3
ifge 3
2: aload 0
invokevirtual android.app.usage.TimeSparseArray.size:()I
iconst_1
isub
ireturn
3: StackMap locals: int
StackMap stack:
aload 0
iload 3
invokevirtual android.app.usage.TimeSparseArray.keyAt:(I)J
lload 1
lcmp
ifne 5
4: iload 3
ireturn
5: StackMap locals:
StackMap stack:
iload 3
iconst_1
isub
ireturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/app/usage/TimeSparseArray<TE;>;
0 6 1 time J
1 6 3 index I
MethodParameters:
Name Flags
time
}
Signature: <E:Ljava/lang/Object;>Landroid/util/LongSparseArray<TE;>;
SourceFile: "TimeSparseArray.java"