final class javax.swing.LayoutComparator implements java.util.Comparator<java.awt.Component>, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: javax.swing.LayoutComparator
super_class: java.lang.Object
{
private static final int ROW_TOLERANCE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 10
private boolean horizontal;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean leftToRight;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_1
putfield javax.swing.LayoutComparator.horizontal:Z
2: aload 0
iconst_1
putfield javax.swing.LayoutComparator.leftToRight:Z
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljavax/swing/LayoutComparator;
void setComponentOrientation(java.awt.ComponentOrientation);
descriptor: (Ljava/awt/ComponentOrientation;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.awt.ComponentOrientation.isHorizontal:()Z
putfield javax.swing.LayoutComparator.horizontal:Z
1: aload 0
aload 1
invokevirtual java.awt.ComponentOrientation.isLeftToRight:()Z
putfield javax.swing.LayoutComparator.leftToRight:Z
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljavax/swing/LayoutComparator;
0 3 1 orientation Ljava/awt/ComponentOrientation;
MethodParameters:
Name Flags
orientation
public int compare(java.awt.Component, java.awt.Component);
descriptor: (Ljava/awt/Component;Ljava/awt/Component;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
if_acmpne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.awt.Component.getParent:()Ljava/awt/Container;
aload 2
invokevirtual java.awt.Component.getParent:()Ljava/awt/Container;
if_acmpeq 32
3: new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
astore 3
start local 3 4: goto 9
5: StackMap locals: java.util.LinkedList
StackMap stack:
aload 3
aload 1
invokevirtual java.util.LinkedList.add:(Ljava/lang/Object;)Z
pop
6: aload 1
instanceof java.awt.Window
ifeq 8
7: goto 10
8: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.awt.Component.getParent:()Ljava/awt/Container;
astore 1
StackMap locals:
StackMap stack:
9: aload 1
ifnonnull 5
10: StackMap locals:
StackMap stack:
aload 1
ifnonnull 12
11: new java.lang.ClassCastException
dup
invokespecial java.lang.ClassCastException.<init>:()V
athrow
12: StackMap locals:
StackMap stack:
new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
astore 4
start local 4 13: goto 18
14: StackMap locals: java.util.LinkedList
StackMap stack:
aload 4
aload 2
invokevirtual java.util.LinkedList.add:(Ljava/lang/Object;)Z
pop
15: aload 2
instanceof java.awt.Window
ifeq 17
16: goto 19
17: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.awt.Component.getParent:()Ljava/awt/Container;
astore 2
StackMap locals:
StackMap stack:
18: aload 2
ifnonnull 14
19: StackMap locals:
StackMap stack:
aload 2
ifnonnull 21
20: new java.lang.ClassCastException
dup
invokespecial java.lang.ClassCastException.<init>:()V
athrow
21: StackMap locals:
StackMap stack:
aload 3
aload 3
invokevirtual java.util.LinkedList.size:()I
invokevirtual java.util.LinkedList.listIterator:(I)Ljava/util/ListIterator;
astore 5
start local 5 22: aload 4
aload 4
invokevirtual java.util.LinkedList.size:()I
invokevirtual java.util.LinkedList.listIterator:(I)Ljava/util/ListIterator;
astore 6
start local 6 23: StackMap locals: java.util.ListIterator java.util.ListIterator
StackMap stack:
aload 5
invokeinterface java.util.ListIterator.hasPrevious:()Z
ifeq 26
24: aload 5
invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
checkcast java.awt.Component
astore 1
25: goto 27
26: StackMap locals:
StackMap stack:
iconst_m1
ireturn
27: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.ListIterator.hasPrevious:()Z
ifeq 30
28: aload 6
invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
checkcast java.awt.Component
astore 2
29: goto 31
30: StackMap locals:
StackMap stack:
iconst_1
ireturn
31: StackMap locals:
StackMap stack:
aload 1
aload 2
if_acmpeq 23
end local 6 end local 5 end local 4 end local 3 32: StackMap locals: javax.swing.LayoutComparator java.awt.Component java.awt.Component
StackMap stack:
aload 1
invokevirtual java.awt.Component.getX:()I
istore 3
start local 3 33: aload 1
invokevirtual java.awt.Component.getY:()I
istore 4
start local 4 34: aload 2
invokevirtual java.awt.Component.getX:()I
istore 5
start local 5 35: aload 2
invokevirtual java.awt.Component.getY:()I
istore 6
start local 6 36: aload 1
invokevirtual java.awt.Component.getParent:()Ljava/awt/Container;
aload 1
invokevirtual java.awt.Container.getComponentZOrder:(Ljava/awt/Component;)I
aload 2
invokevirtual java.awt.Component.getParent:()Ljava/awt/Container;
aload 2
invokevirtual java.awt.Container.getComponentZOrder:(Ljava/awt/Component;)I
isub
istore 7
start local 7 37: aload 0
getfield javax.swing.LayoutComparator.horizontal:Z
ifeq 55
38: aload 0
getfield javax.swing.LayoutComparator.leftToRight:Z
ifeq 47
39: iload 4
iload 6
isub
invokestatic java.lang.Math.abs:(I)I
bipush 10
if_icmpge 44
40: iload 3
iload 5
if_icmpge 41
iconst_m1
goto 43
StackMap locals: javax.swing.LayoutComparator java.awt.Component java.awt.Component int int int int int
StackMap stack:
41: iload 3
iload 5
if_icmple 42
iconst_1
goto 43
StackMap locals:
StackMap stack:
42: iload 7
StackMap locals:
StackMap stack: int
43: ireturn
44: StackMap locals:
StackMap stack:
iload 4
iload 6
if_icmpge 45
iconst_m1
goto 46
StackMap locals:
StackMap stack:
45: iconst_1
StackMap locals:
StackMap stack: int
46: ireturn
47: StackMap locals:
StackMap stack:
iload 4
iload 6
isub
invokestatic java.lang.Math.abs:(I)I
bipush 10
if_icmpge 52
48: iload 3
iload 5
if_icmple 49
iconst_m1
goto 51
StackMap locals:
StackMap stack:
49: iload 3
iload 5
if_icmpge 50
iconst_1
goto 51
StackMap locals:
StackMap stack:
50: iload 7
StackMap locals:
StackMap stack: int
51: ireturn
52: StackMap locals:
StackMap stack:
iload 4
iload 6
if_icmpge 53
iconst_m1
goto 54
StackMap locals:
StackMap stack:
53: iconst_1
StackMap locals:
StackMap stack: int
54: ireturn
55: StackMap locals:
StackMap stack:
aload 0
getfield javax.swing.LayoutComparator.leftToRight:Z
ifeq 64
56: iload 3
iload 5
isub
invokestatic java.lang.Math.abs:(I)I
bipush 10
if_icmpge 61
57: iload 4
iload 6
if_icmpge 58
iconst_m1
goto 60
StackMap locals:
StackMap stack:
58: iload 4
iload 6
if_icmple 59
iconst_1
goto 60
StackMap locals:
StackMap stack:
59: iload 7
StackMap locals:
StackMap stack: int
60: ireturn
61: StackMap locals:
StackMap stack:
iload 3
iload 5
if_icmpge 62
iconst_m1
goto 63
StackMap locals:
StackMap stack:
62: iconst_1
StackMap locals:
StackMap stack: int
63: ireturn
64: StackMap locals:
StackMap stack:
iload 3
iload 5
isub
invokestatic java.lang.Math.abs:(I)I
bipush 10
if_icmpge 69
65: iload 4
iload 6
if_icmpge 66
iconst_m1
goto 68
StackMap locals:
StackMap stack:
66: iload 4
iload 6
if_icmple 67
iconst_1
goto 68
StackMap locals:
StackMap stack:
67: iload 7
StackMap locals:
StackMap stack: int
68: ireturn
69: StackMap locals:
StackMap stack:
iload 3
iload 5
if_icmple 70
iconst_m1
goto 71
StackMap locals:
StackMap stack:
70: iconst_1
StackMap locals:
StackMap stack: int
71: ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 72 0 this Ljavax/swing/LayoutComparator;
0 72 1 a Ljava/awt/Component;
0 72 2 b Ljava/awt/Component;
4 32 3 aAncestory Ljava/util/LinkedList<Ljava/awt/Component;>;
13 32 4 bAncestory Ljava/util/LinkedList<Ljava/awt/Component;>;
22 32 5 aIter Ljava/util/ListIterator<Ljava/awt/Component;>;
23 32 6 bIter Ljava/util/ListIterator<Ljava/awt/Component;>;
33 72 3 ax I
34 72 4 ay I
35 72 5 bx I
36 72 6 by I
37 72 7 zOrder I
MethodParameters:
Name Flags
a
b
public int compare(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)I
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast java.awt.Component
aload 2
checkcast java.awt.Component
invokevirtual javax.swing.LayoutComparator.compare:(Ljava/awt/Component;Ljava/awt/Component;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Ljava/util/Comparator<Ljava/awt/Component;>;Ljava/io/Serializable;
SourceFile: "LayoutComparator.java"