public final class android.util.LocalLog
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: android.util.LocalLog
super_class: java.lang.Object
{
private final java.util.Deque<java.lang.String> mLog;
descriptor: Ljava/util/Deque;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Deque<Ljava/lang/String;>;
private final int mMaxLines;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
iload 1
invokestatic java.lang.Math.max:(II)I
putfield android.util.LocalLog.mMaxLines:I
2: aload 0
new java.util.ArrayDeque
dup
aload 0
getfield android.util.LocalLog.mMaxLines:I
invokespecial java.util.ArrayDeque.<init>:(I)V
putfield android.util.LocalLog.mLog:Ljava/util/Deque;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/util/LocalLog;
0 4 1 maxLines I
MethodParameters:
Name Flags
maxLines
public void log(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield android.util.LocalLog.mMaxLines:I
ifgt 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
ldc "%s - %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
invokestatic java.time.LocalDateTime.now:()Ljava/time/LocalDateTime;
aastore
dup
iconst_1
aload 1
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual android.util.LocalLog.append:(Ljava/lang/String;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/util/LocalLog;
0 4 1 msg Ljava/lang/String;
MethodParameters:
Name Flags
msg
private synchronized void append(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: goto 2
1: StackMap locals:
StackMap stack:
aload 0
getfield android.util.LocalLog.mLog:Ljava/util/Deque;
invokeinterface java.util.Deque.remove:()Ljava/lang/Object;
pop
2: StackMap locals:
StackMap stack:
aload 0
getfield android.util.LocalLog.mLog:Ljava/util/Deque;
invokeinterface java.util.Deque.size:()I
aload 0
getfield android.util.LocalLog.mMaxLines:I
if_icmpge 1
3: aload 0
getfield android.util.LocalLog.mLog:Ljava/util/Deque;
aload 1
invokeinterface java.util.Deque.add:(Ljava/lang/Object;)Z
pop
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/util/LocalLog;
0 5 1 logLine Ljava/lang/String;
MethodParameters:
Name Flags
logLine
public synchronized void dump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
descriptor: (Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield android.util.LocalLog.mLog:Ljava/util/Deque;
invokeinterface java.util.Deque.iterator:()Ljava/util/Iterator;
astore 4
start local 4 1: goto 3
2: StackMap locals: java.util.Iterator
StackMap stack:
aload 2
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
3: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
4: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/util/LocalLog;
0 5 1 fd Ljava/io/FileDescriptor;
0 5 2 pw Ljava/io/PrintWriter;
0 5 3 args [Ljava/lang/String;
1 5 4 itr Ljava/util/Iterator<Ljava/lang/String;>;
MethodParameters:
Name Flags
fd
pw
args
public synchronized void reverseDump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
descriptor: (Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield android.util.LocalLog.mLog:Ljava/util/Deque;
invokeinterface java.util.Deque.descendingIterator:()Ljava/util/Iterator;
astore 4
start local 4 1: goto 3
2: StackMap locals: java.util.Iterator
StackMap stack:
aload 2
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
3: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
4: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/util/LocalLog;
0 5 1 fd Ljava/io/FileDescriptor;
0 5 2 pw Ljava/io/PrintWriter;
0 5 3 args [Ljava/lang/String;
1 5 4 itr Ljava/util/Iterator<Ljava/lang/String;>;
MethodParameters:
Name Flags
fd
pw
args
public android.util.LocalLog$ReadOnlyLocalLog readOnlyLocalLog();
descriptor: ()Landroid/util/LocalLog$ReadOnlyLocalLog;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new android.util.LocalLog$ReadOnlyLocalLog
dup
aload 0
invokespecial android.util.LocalLog$ReadOnlyLocalLog.<init>:(Landroid/util/LocalLog;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/util/LocalLog;
}
SourceFile: "LocalLog.java"
NestMembers:
android.util.LocalLog$ReadOnlyLocalLog
InnerClasses:
public ReadOnlyLocalLog = android.util.LocalLog$ReadOnlyLocalLog of android.util.LocalLog