class org.apache.commons.net.nntp.ThreadContainer
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.apache.commons.net.nntp.ThreadContainer
super_class: java.lang.Object
{
org.apache.commons.net.nntp.Threadable threadable;
descriptor: Lorg/apache/commons/net/nntp/Threadable;
flags: (0x0000)
org.apache.commons.net.nntp.ThreadContainer parent;
descriptor: Lorg/apache/commons/net/nntp/ThreadContainer;
flags: (0x0000)
org.apache.commons.net.nntp.ThreadContainer next;
descriptor: Lorg/apache/commons/net/nntp/ThreadContainer;
flags: (0x0000)
org.apache.commons.net.nntp.ThreadContainer child;
descriptor: Lorg/apache/commons/net/nntp/ThreadContainer;
flags: (0x0000)
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 // org.apache.commons.net.nntp.ThreadContainer this
0: .line 27
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.apache.commons.net.nntp.ThreadContainer this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/net/nntp/ThreadContainer;
boolean findChild(org.apache.commons.net.nntp.ThreadContainer);
descriptor: (Lorg/apache/commons/net/nntp/ThreadContainer;)Z
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // org.apache.commons.net.nntp.ThreadContainer this
start local 1 // org.apache.commons.net.nntp.ThreadContainer target
0: .line 40
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.child:Lorg/apache/commons/net/nntp/ThreadContainer;
ifnonnull 2
1: .line 41
iconst_0
ireturn
2: .line 42
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.child:Lorg/apache/commons/net/nntp/ThreadContainer;
aload 1 /* target */
if_acmpne 4
3: .line 43
iconst_1
ireturn
4: .line 45
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.child:Lorg/apache/commons/net/nntp/ThreadContainer;
aload 1 /* target */
invokevirtual org.apache.commons.net.nntp.ThreadContainer.findChild:(Lorg/apache/commons/net/nntp/ThreadContainer;)Z
ireturn
end local 1 // org.apache.commons.net.nntp.ThreadContainer target
end local 0 // org.apache.commons.net.nntp.ThreadContainer this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/commons/net/nntp/ThreadContainer;
0 5 1 target Lorg/apache/commons/net/nntp/ThreadContainer;
MethodParameters:
Name Flags
target
void flush();
descriptor: ()V
flags: (0x0000)
Code:
stack=5, locals=1, args_size=1
start local 0 // org.apache.commons.net.nntp.ThreadContainer this
0: .line 54
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.parent:Lorg/apache/commons/net/nntp/ThreadContainer;
ifnull 2
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.threadable:Lorg/apache/commons/net/nntp/Threadable;
ifnonnull 2
1: .line 55
new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "no threadable in "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
2: .line 58
StackMap locals:
StackMap stack:
aload 0 /* this */
aconst_null
putfield org.apache.commons.net.nntp.ThreadContainer.parent:Lorg/apache/commons/net/nntp/ThreadContainer;
3: .line 60
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.threadable:Lorg/apache/commons/net/nntp/Threadable;
ifnull 7
4: .line 61
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.threadable:Lorg/apache/commons/net/nntp/Threadable;
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.child:Lorg/apache/commons/net/nntp/ThreadContainer;
ifnonnull 5
aconst_null
goto 6
StackMap locals:
StackMap stack: org.apache.commons.net.nntp.Threadable
5: aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.child:Lorg/apache/commons/net/nntp/ThreadContainer;
getfield org.apache.commons.net.nntp.ThreadContainer.threadable:Lorg/apache/commons/net/nntp/Threadable;
StackMap locals: org.apache.commons.net.nntp.ThreadContainer
StackMap stack: org.apache.commons.net.nntp.Threadable org.apache.commons.net.nntp.Threadable
6: invokeinterface org.apache.commons.net.nntp.Threadable.setChild:(Lorg/apache/commons/net/nntp/Threadable;)V
7: .line 64
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.child:Lorg/apache/commons/net/nntp/ThreadContainer;
ifnull 10
8: .line 65
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.child:Lorg/apache/commons/net/nntp/ThreadContainer;
invokevirtual org.apache.commons.net.nntp.ThreadContainer.flush:()V
9: .line 66
aload 0 /* this */
aconst_null
putfield org.apache.commons.net.nntp.ThreadContainer.child:Lorg/apache/commons/net/nntp/ThreadContainer;
10: .line 69
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.threadable:Lorg/apache/commons/net/nntp/Threadable;
ifnull 14
11: .line 70
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.threadable:Lorg/apache/commons/net/nntp/Threadable;
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.next:Lorg/apache/commons/net/nntp/ThreadContainer;
ifnonnull 12
aconst_null
goto 13
StackMap locals:
StackMap stack: org.apache.commons.net.nntp.Threadable
12: aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.next:Lorg/apache/commons/net/nntp/ThreadContainer;
getfield org.apache.commons.net.nntp.ThreadContainer.threadable:Lorg/apache/commons/net/nntp/Threadable;
StackMap locals: org.apache.commons.net.nntp.ThreadContainer
StackMap stack: org.apache.commons.net.nntp.Threadable org.apache.commons.net.nntp.Threadable
13: invokeinterface org.apache.commons.net.nntp.Threadable.setNext:(Lorg/apache/commons/net/nntp/Threadable;)V
14: .line 73
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.next:Lorg/apache/commons/net/nntp/ThreadContainer;
ifnull 17
15: .line 74
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.next:Lorg/apache/commons/net/nntp/ThreadContainer;
invokevirtual org.apache.commons.net.nntp.ThreadContainer.flush:()V
16: .line 75
aload 0 /* this */
aconst_null
putfield org.apache.commons.net.nntp.ThreadContainer.next:Lorg/apache/commons/net/nntp/ThreadContainer;
17: .line 78
StackMap locals:
StackMap stack:
aload 0 /* this */
aconst_null
putfield org.apache.commons.net.nntp.ThreadContainer.threadable:Lorg/apache/commons/net/nntp/Threadable;
18: .line 79
return
end local 0 // org.apache.commons.net.nntp.ThreadContainer this
LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/apache/commons/net/nntp/ThreadContainer;
void reverseChildren();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=1
start local 0 // org.apache.commons.net.nntp.ThreadContainer this
0: .line 86
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.child:Lorg/apache/commons/net/nntp/ThreadContainer;
ifnull 17
1: .line 88
aconst_null
astore 2 /* prev */
start local 2 // org.apache.commons.net.nntp.ThreadContainer prev
2: aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.child:Lorg/apache/commons/net/nntp/ThreadContainer;
astore 1 /* kid */
start local 1 // org.apache.commons.net.nntp.ThreadContainer kid
3: aload 1 /* kid */
getfield org.apache.commons.net.nntp.ThreadContainer.next:Lorg/apache/commons/net/nntp/ThreadContainer;
astore 3 /* rest */
start local 3 // org.apache.commons.net.nntp.ThreadContainer rest
4: .line 89
goto 11
5: .line 94
StackMap locals: org.apache.commons.net.nntp.ThreadContainer org.apache.commons.net.nntp.ThreadContainer org.apache.commons.net.nntp.ThreadContainer
StackMap stack:
aload 1 /* kid */
aload 2 /* prev */
putfield org.apache.commons.net.nntp.ThreadContainer.next:Lorg/apache/commons/net/nntp/ThreadContainer;
6: .line 90
aload 1 /* kid */
astore 2 /* prev */
7: .line 91
aload 3 /* rest */
astore 1 /* kid */
8: .line 92
aload 3 /* rest */
ifnonnull 9
aconst_null
goto 10
StackMap locals:
StackMap stack:
9: aload 3 /* rest */
getfield org.apache.commons.net.nntp.ThreadContainer.next:Lorg/apache/commons/net/nntp/ThreadContainer;
StackMap locals:
StackMap stack: org.apache.commons.net.nntp.ThreadContainer
10: astore 3 /* rest */
11: .line 89
StackMap locals:
StackMap stack:
aload 1 /* kid */
ifnonnull 5
12: .line 97
aload 0 /* this */
aload 2 /* prev */
putfield org.apache.commons.net.nntp.ThreadContainer.child:Lorg/apache/commons/net/nntp/ThreadContainer;
13: .line 100
aload 0 /* this */
getfield org.apache.commons.net.nntp.ThreadContainer.child:Lorg/apache/commons/net/nntp/ThreadContainer;
astore 1 /* kid */
goto 16
14: .line 101
StackMap locals:
StackMap stack:
aload 1 /* kid */
invokevirtual org.apache.commons.net.nntp.ThreadContainer.reverseChildren:()V
15: .line 100
aload 1 /* kid */
getfield org.apache.commons.net.nntp.ThreadContainer.next:Lorg/apache/commons/net/nntp/ThreadContainer;
astore 1 /* kid */
StackMap locals:
StackMap stack:
16: aload 1 /* kid */
ifnonnull 14
end local 3 // org.apache.commons.net.nntp.ThreadContainer rest
end local 2 // org.apache.commons.net.nntp.ThreadContainer prev
end local 1 // org.apache.commons.net.nntp.ThreadContainer kid
17: .line 104
StackMap locals:
StackMap stack:
return
end local 0 // org.apache.commons.net.nntp.ThreadContainer this
LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/apache/commons/net/nntp/ThreadContainer;
3 17 1 kid Lorg/apache/commons/net/nntp/ThreadContainer;
2 17 2 prev Lorg/apache/commons/net/nntp/ThreadContainer;
4 17 3 rest Lorg/apache/commons/net/nntp/ThreadContainer;
}
SourceFile: "ThreadContainer.java"