public class org.apache.fop.hyphenation.TernaryTree implements java.lang.Cloneable, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.fop.hyphenation.TernaryTree
super_class: java.lang.Object
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3175412271203716160
protected char[] lo;
descriptor: [C
flags: (0x0004) ACC_PROTECTED
protected char[] hi;
descriptor: [C
flags: (0x0004) ACC_PROTECTED
protected char[] eq;
descriptor: [C
flags: (0x0004) ACC_PROTECTED
protected char[] sc;
descriptor: [C
flags: (0x0004) ACC_PROTECTED
protected org.apache.fop.hyphenation.CharVector kv;
descriptor: Lorg/apache/fop/hyphenation/CharVector;
flags: (0x0004) ACC_PROTECTED
protected char root;
descriptor: C
flags: (0x0004) ACC_PROTECTED
protected char freenode;
descriptor: C
flags: (0x0004) ACC_PROTECTED
protected int length;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected static final int BLOCK_SIZE;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 2048
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
invokevirtual org.apache.fop.hyphenation.TernaryTree.init:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/fop/hyphenation/TernaryTree;
protected void init();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield org.apache.fop.hyphenation.TernaryTree.root:C
1: aload 0
iconst_1
putfield org.apache.fop.hyphenation.TernaryTree.freenode:C
2: aload 0
iconst_0
putfield org.apache.fop.hyphenation.TernaryTree.length:I
3: aload 0
sipush 2048
newarray 5
putfield org.apache.fop.hyphenation.TernaryTree.lo:[C
4: aload 0
sipush 2048
newarray 5
putfield org.apache.fop.hyphenation.TernaryTree.hi:[C
5: aload 0
sipush 2048
newarray 5
putfield org.apache.fop.hyphenation.TernaryTree.eq:[C
6: aload 0
sipush 2048
newarray 5
putfield org.apache.fop.hyphenation.TernaryTree.sc:[C
7: aload 0
new org.apache.fop.hyphenation.CharVector
dup
invokespecial org.apache.fop.hyphenation.CharVector.<init>:()V
putfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
8: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/fop/hyphenation/TernaryTree;
public void insert(java.lang.String, char);
descriptor: (Ljava/lang/String;C)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.lang.String.length:()I
1: iconst_1
2: iadd
istore 3
start local 3 3: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.freenode:C
iload 3
iadd
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
arraylength
if_icmple 5
4: aload 0
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
arraylength
sipush 2048
iadd
invokevirtual org.apache.fop.hyphenation.TernaryTree.redimNodeArrays:(I)V
5: StackMap locals: int
StackMap stack:
iload 3
iinc 3 -1
newarray 5
astore 4
start local 4 6: aload 1
iconst_0
iload 3
aload 4
iconst_0
invokevirtual java.lang.String.getChars:(II[CI)V
7: aload 4
iload 3
iconst_0
castore
8: aload 0
aload 0
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.root:C
aload 4
iconst_0
iload 2
invokevirtual org.apache.fop.hyphenation.TernaryTree.insert:(C[CIC)C
putfield org.apache.fop.hyphenation.TernaryTree.root:C
9: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/fop/hyphenation/TernaryTree;
0 10 1 key Ljava/lang/String;
0 10 2 val C
3 10 3 len I
6 10 4 strkey [C
MethodParameters:
Name Flags
key
val
public void insert(char[], int, char);
descriptor: ([CIC)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokestatic org.apache.fop.hyphenation.TernaryTree.strlen:([C)I
iconst_1
iadd
istore 4
start local 4 1: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.freenode:C
iload 4
iadd
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
arraylength
if_icmple 3
2: aload 0
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
arraylength
sipush 2048
iadd
invokevirtual org.apache.fop.hyphenation.TernaryTree.redimNodeArrays:(I)V
3: StackMap locals: int
StackMap stack:
aload 0
aload 0
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.root:C
aload 1
iload 2
iload 3
invokevirtual org.apache.fop.hyphenation.TernaryTree.insert:(C[CIC)C
putfield org.apache.fop.hyphenation.TernaryTree.root:C
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 Lorg/apache/fop/hyphenation/TernaryTree;
0 5 1 key [C
0 5 2 start I
0 5 3 val C
1 5 4 len I
MethodParameters:
Name Flags
key
start
val
private char insert(char, char[], int, char);
descriptor: (C[CIC)C
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
iload 3
invokestatic org.apache.fop.hyphenation.TernaryTree.strlen:([CI)I
istore 5
start local 5 1: iload 1
ifne 16
2: aload 0
dup
getfield org.apache.fop.hyphenation.TernaryTree.freenode:C
dup_x1
iconst_1
iadd
i2c
putfield org.apache.fop.hyphenation.TernaryTree.freenode:C
istore 1
3: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iload 1
iload 4
castore
4: aload 0
dup
getfield org.apache.fop.hyphenation.TernaryTree.length:I
iconst_1
iadd
putfield org.apache.fop.hyphenation.TernaryTree.length:I
5: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.hi:[C
iload 1
iconst_0
castore
6: iload 5
ifle 13
7: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 1
ldc 65535
castore
8: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 1
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
iload 5
9: iconst_1
iadd
10: invokevirtual org.apache.fop.hyphenation.CharVector.alloc:(I)I
i2c
castore
11: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
invokevirtual org.apache.fop.hyphenation.CharVector.getArray:()[C
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 1
caload
aload 2
iload 3
invokestatic org.apache.fop.hyphenation.TernaryTree.strcpy:([CI[CI)V
12: goto 15
13: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 1
iconst_0
castore
14: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 1
iconst_0
castore
15: StackMap locals:
StackMap stack:
iload 1
ireturn
16: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 1
caload
ldc 65535
if_icmpne 38
17: aload 0
dup
getfield org.apache.fop.hyphenation.TernaryTree.freenode:C
dup_x1
iconst_1
iadd
i2c
putfield org.apache.fop.hyphenation.TernaryTree.freenode:C
istore 6
start local 6 18: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 6
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 1
caload
castore
19: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iload 6
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iload 1
caload
castore
20: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 1
iconst_0
castore
21: iload 5
ifle 32
22: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 1
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 6
caload
invokevirtual org.apache.fop.hyphenation.CharVector.get:(I)C
castore
23: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iload 1
iload 6
castore
24: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 6
dup2
caload
iconst_1
iadd
i2c
castore
25: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 6
caload
invokevirtual org.apache.fop.hyphenation.CharVector.get:(I)C
ifne 30
26: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 6
iconst_0
castore
27: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 6
iconst_0
castore
28: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.hi:[C
iload 6
iconst_0
castore
29: goto 38
30: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 6
ldc 65535
castore
31: goto 38
32: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 6
ldc 65535
castore
33: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.hi:[C
iload 1
iload 6
castore
34: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 1
iconst_0
castore
35: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iload 1
iload 4
castore
36: aload 0
dup
getfield org.apache.fop.hyphenation.TernaryTree.length:I
iconst_1
iadd
putfield org.apache.fop.hyphenation.TernaryTree.length:I
37: iload 1
ireturn
end local 6 38: StackMap locals:
StackMap stack:
aload 2
iload 3
caload
istore 6
start local 6 39: iload 6
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 1
caload
if_icmpge 42
40: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 1
aload 0
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 1
caload
aload 2
iload 3
iload 4
invokevirtual org.apache.fop.hyphenation.TernaryTree.insert:(C[CIC)C
castore
41: goto 49
StackMap locals: int
StackMap stack:
42: iload 6
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 1
caload
if_icmpne 48
43: iload 6
ifeq 46
44: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iload 1
aload 0
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iload 1
caload
aload 2
iload 3
iconst_1
iadd
iload 4
invokevirtual org.apache.fop.hyphenation.TernaryTree.insert:(C[CIC)C
castore
45: goto 49
46: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iload 1
iload 4
castore
47: goto 49
48: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.hi:[C
iload 1
aload 0
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.hi:[C
iload 1
caload
aload 2
iload 3
iload 4
invokevirtual org.apache.fop.hyphenation.TernaryTree.insert:(C[CIC)C
castore
49: StackMap locals:
StackMap stack:
iload 1
ireturn
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 50 0 this Lorg/apache/fop/hyphenation/TernaryTree;
0 50 1 p C
0 50 2 key [C
0 50 3 start I
0 50 4 val C
1 50 5 len I
18 38 6 pp C
39 50 6 s C
MethodParameters:
Name Flags
p
key
start
val
public static int strcmp(char[], int, char[], int);
descriptor: ([CI[CI)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: goto 4
1: StackMap locals:
StackMap stack:
aload 0
iload 1
caload
ifne 3
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
iinc 1 1
iinc 3 1
StackMap locals:
StackMap stack:
4: aload 0
iload 1
caload
aload 2
iload 3
caload
if_icmpeq 1
5: aload 0
iload 1
caload
aload 2
iload 3
caload
isub
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 a [C
0 6 1 startA I
0 6 2 b [C
0 6 3 startB I
MethodParameters:
Name Flags
a
startA
b
startB
public static int strcmp(java.lang.String, char[], int);
descriptor: (Ljava/lang/String;[CI)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual java.lang.String.length:()I
istore 5
start local 5 1: iconst_0
istore 3
start local 3 2: goto 9
3: StackMap locals: java.lang.String char[] int int top int
StackMap stack:
aload 0
iload 3
invokevirtual java.lang.String.charAt:(I)C
aload 1
iload 2
iload 3
iadd
caload
isub
istore 4
start local 4 4: iload 4
ifeq 6
5: iload 4
ireturn
6: StackMap locals: java.lang.String char[] int int int int
StackMap stack:
aload 1
iload 2
iload 3
iadd
caload
ifne 8
7: iload 4
ireturn
8: StackMap locals:
StackMap stack:
iinc 3 1
end local 4 StackMap locals: java.lang.String char[] int int top int
StackMap stack:
9: iload 3
iload 5
if_icmplt 3
10: aload 1
iload 2
iload 3
iadd
caload
ifeq 12
11: aload 1
iload 2
iload 3
iadd
caload
ineg
ireturn
12: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 str Ljava/lang/String;
0 13 1 a [C
0 13 2 start I
2 13 3 i I
4 9 4 d I
1 13 5 len I
MethodParameters:
Name Flags
str
a
start
public static void strcpy(char[], int, char[], int);
descriptor: ([CI[CI)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: goto 2
1: StackMap locals:
StackMap stack:
aload 0
iload 1
iinc 1 1
aload 2
iload 3
iinc 3 1
caload
castore
2: StackMap locals:
StackMap stack:
aload 2
iload 3
caload
ifne 1
3: aload 0
iload 1
iconst_0
castore
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 dst [C
0 5 1 di I
0 5 2 src [C
0 5 3 si I
MethodParameters:
Name Flags
dst
di
src
si
public static int strlen(char[], int);
descriptor: ([CI)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: iload 1
istore 3
start local 3 2: goto 5
3: StackMap locals: int int
StackMap stack:
iinc 2 1
4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
aload 0
arraylength
if_icmpge 6
aload 0
iload 3
caload
ifne 3
end local 3 6: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 a [C
0 7 1 start I
1 7 2 len I
2 6 3 i I
MethodParameters:
Name Flags
a
start
public static int strlen(char[]);
descriptor: ([C)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokestatic org.apache.fop.hyphenation.TernaryTree.strlen:([CI)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a [C
MethodParameters:
Name Flags
a
public int find(java.lang.String);
descriptor: (Ljava/lang/String;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.String.length:()I
istore 2
start local 2 1: iload 2
iconst_1
iadd
newarray 5
astore 3
start local 3 2: aload 1
iconst_0
iload 2
aload 3
iconst_0
invokevirtual java.lang.String.getChars:(II[CI)V
3: aload 3
iload 2
iconst_0
castore
4: aload 0
aload 3
iconst_0
invokevirtual org.apache.fop.hyphenation.TernaryTree.find:([CI)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/fop/hyphenation/TernaryTree;
0 5 1 key Ljava/lang/String;
1 5 2 len I
2 5 3 strkey [C
MethodParameters:
Name Flags
key
public int find(char[], int);
descriptor: ([CI)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.root:C
istore 4
start local 4 1: iload 2
istore 5
start local 5 2: goto 19
3: StackMap locals: org.apache.fop.hyphenation.TernaryTree char[] int top int int
StackMap stack:
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 4
caload
ldc 65535
if_icmpne 7
4: aload 1
iload 5
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
invokevirtual org.apache.fop.hyphenation.CharVector.getArray:()[C
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 4
caload
invokestatic org.apache.fop.hyphenation.TernaryTree.strcmp:([CI[CI)I
ifne 6
5: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iload 4
caload
ireturn
6: StackMap locals:
StackMap stack:
iconst_m1
ireturn
7: StackMap locals:
StackMap stack:
aload 1
iload 5
caload
istore 6
start local 6 8: iload 6
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 4
caload
isub
istore 3
start local 3 9: iload 3
ifne 15
10: iload 6
ifne 12
11: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iload 4
caload
ireturn
12: StackMap locals: org.apache.fop.hyphenation.TernaryTree char[] int int int int int
StackMap stack:
iinc 5 1
13: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iload 4
caload
istore 4
14: goto 19
StackMap locals:
StackMap stack:
15: iload 3
ifge 18
16: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 4
caload
istore 4
17: goto 19
18: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.hi:[C
iload 4
caload
istore 4
end local 6 end local 3 19: StackMap locals: org.apache.fop.hyphenation.TernaryTree char[] int top int int
StackMap stack:
iload 4
ifne 3
20: iconst_m1
ireturn
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/apache/fop/hyphenation/TernaryTree;
0 21 1 key [C
0 21 2 start I
9 19 3 d I
1 21 4 p C
2 21 5 i I
8 19 6 c C
MethodParameters:
Name Flags
key
start
public boolean knows(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.apache.fop.hyphenation.TernaryTree.find:(Ljava/lang/String;)I
iflt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/fop/hyphenation/TernaryTree;
0 2 1 key Ljava/lang/String;
MethodParameters:
Name Flags
key
private void redimNodeArrays(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: iload 1
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
arraylength
if_icmpge 1
iload 1
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
arraylength
StackMap locals:
StackMap stack: int
2: istore 2
start local 2 3: iload 1
newarray 5
astore 3
start local 3 4: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iconst_0
aload 3
iconst_0
iload 2
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
5: aload 0
aload 3
putfield org.apache.fop.hyphenation.TernaryTree.lo:[C
6: iload 1
newarray 5
astore 3
7: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.hi:[C
iconst_0
aload 3
iconst_0
iload 2
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
8: aload 0
aload 3
putfield org.apache.fop.hyphenation.TernaryTree.hi:[C
9: iload 1
newarray 5
astore 3
10: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iconst_0
aload 3
iconst_0
iload 2
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
11: aload 0
aload 3
putfield org.apache.fop.hyphenation.TernaryTree.eq:[C
12: iload 1
newarray 5
astore 3
13: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iconst_0
aload 3
iconst_0
iload 2
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
14: aload 0
aload 3
putfield org.apache.fop.hyphenation.TernaryTree.sc:[C
15: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/apache/fop/hyphenation/TernaryTree;
0 16 1 newsize I
3 16 2 len I
4 16 3 na [C
MethodParameters:
Name Flags
newsize
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.length:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/fop/hyphenation/TernaryTree;
public java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.clone:()Ljava/lang/Object;
checkcast org.apache.fop.hyphenation.TernaryTree
astore 1
start local 1 1: aload 1
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
invokevirtual char[].clone:()Ljava/lang/Object;
checkcast char[]
putfield org.apache.fop.hyphenation.TernaryTree.lo:[C
2: aload 1
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.hi:[C
invokevirtual char[].clone:()Ljava/lang/Object;
checkcast char[]
putfield org.apache.fop.hyphenation.TernaryTree.hi:[C
3: aload 1
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
invokevirtual char[].clone:()Ljava/lang/Object;
checkcast char[]
putfield org.apache.fop.hyphenation.TernaryTree.eq:[C
4: aload 1
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
invokevirtual char[].clone:()Ljava/lang/Object;
checkcast char[]
putfield org.apache.fop.hyphenation.TernaryTree.sc:[C
5: aload 1
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
invokevirtual org.apache.fop.hyphenation.CharVector.clone:()Ljava/lang/Object;
checkcast org.apache.fop.hyphenation.CharVector
putfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/fop/hyphenation/TernaryTree;
1 7 1 t Lorg/apache/fop/hyphenation/TernaryTree;
Exceptions:
throws java.lang.CloneNotSupportedException
protected void insertBalanced(java.lang.String[], char[], int, int);
descriptor: ([Ljava/lang/String;[CII)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iload 4
iconst_1
if_icmpge 2
1: return
2: StackMap locals:
StackMap stack:
iload 4
iconst_1
ishr
istore 5
start local 5 3: aload 0
aload 1
iload 5
iload 3
iadd
aaload
aload 2
iload 5
iload 3
iadd
caload
invokevirtual org.apache.fop.hyphenation.TernaryTree.insert:(Ljava/lang/String;C)V
4: aload 0
aload 1
aload 2
iload 3
iload 5
invokevirtual org.apache.fop.hyphenation.TernaryTree.insertBalanced:([Ljava/lang/String;[CII)V
5: aload 0
aload 1
aload 2
iload 3
iload 5
iadd
iconst_1
iadd
iload 4
iload 5
isub
iconst_1
isub
invokevirtual org.apache.fop.hyphenation.TernaryTree.insertBalanced:([Ljava/lang/String;[CII)V
6: return
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 7 0 this Lorg/apache/fop/hyphenation/TernaryTree;
0 7 1 k [Ljava/lang/String;
0 7 2 v [C
0 7 3 offset I
0 7 4 n I
3 7 5 m I
MethodParameters:
Name Flags
k
v
offset
n
public void balance();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.length:I
istore 2
start local 2 2: iload 2
anewarray java.lang.String
astore 3
start local 3 3: iload 2
newarray 5
astore 4
start local 4 4: new org.apache.fop.hyphenation.TernaryTree$Iterator
dup
aload 0
invokespecial org.apache.fop.hyphenation.TernaryTree$Iterator.<init>:(Lorg/apache/fop/hyphenation/TernaryTree;)V
astore 5
start local 5 5: goto 8
6: StackMap locals: org.apache.fop.hyphenation.TernaryTree int int java.lang.String[] char[] org.apache.fop.hyphenation.TernaryTree$Iterator
StackMap stack:
aload 4
iload 1
aload 5
invokevirtual org.apache.fop.hyphenation.TernaryTree$Iterator.getValue:()C
castore
7: aload 3
iload 1
iinc 1 1
aload 5
invokevirtual org.apache.fop.hyphenation.TernaryTree$Iterator.nextElement:()Ljava/lang/Object;
checkcast java.lang.String
aastore
8: StackMap locals:
StackMap stack:
aload 5
invokevirtual org.apache.fop.hyphenation.TernaryTree$Iterator.hasMoreElements:()Z
ifne 6
9: aload 0
invokevirtual org.apache.fop.hyphenation.TernaryTree.init:()V
10: aload 0
aload 3
aload 4
iconst_0
iload 2
invokevirtual org.apache.fop.hyphenation.TernaryTree.insertBalanced:([Ljava/lang/String;[CII)V
11: return
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 12 0 this Lorg/apache/fop/hyphenation/TernaryTree;
1 12 1 i I
2 12 2 n I
3 12 3 k [Ljava/lang/String;
4 12 4 v [C
5 12 5 iter Lorg/apache/fop/hyphenation/TernaryTree$Iterator;
public void trimToSize();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.fop.hyphenation.TernaryTree.balance:()V
1: aload 0
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.freenode:C
invokevirtual org.apache.fop.hyphenation.TernaryTree.redimNodeArrays:(I)V
2: new org.apache.fop.hyphenation.CharVector
dup
invokespecial org.apache.fop.hyphenation.CharVector.<init>:()V
astore 1
start local 1 3: aload 1
iconst_1
invokevirtual org.apache.fop.hyphenation.CharVector.alloc:(I)I
pop
4: new org.apache.fop.hyphenation.TernaryTree
dup
invokespecial org.apache.fop.hyphenation.TernaryTree.<init>:()V
astore 2
start local 2 5: aload 0
aload 1
aload 2
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.root:C
invokevirtual org.apache.fop.hyphenation.TernaryTree.compact:(Lorg/apache/fop/hyphenation/CharVector;Lorg/apache/fop/hyphenation/TernaryTree;C)V
6: aload 0
aload 1
putfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
7: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
invokevirtual org.apache.fop.hyphenation.CharVector.trimToSize:()V
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/fop/hyphenation/TernaryTree;
3 9 1 kx Lorg/apache/fop/hyphenation/CharVector;
5 9 2 map Lorg/apache/fop/hyphenation/TernaryTree;
private void compact(org.apache.fop.hyphenation.CharVector, org.apache.fop.hyphenation.TernaryTree, char);
descriptor: (Lorg/apache/fop/hyphenation/CharVector;Lorg/apache/fop/hyphenation/TernaryTree;C)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 3
caload
ldc 65535
if_icmpne 10
3: aload 2
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
invokevirtual org.apache.fop.hyphenation.CharVector.getArray:()[C
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 3
caload
invokevirtual org.apache.fop.hyphenation.TernaryTree.find:([CI)I
istore 4
start local 4 4: iload 4
ifge 8
5: aload 1
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
invokevirtual org.apache.fop.hyphenation.CharVector.getArray:()[C
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 3
caload
invokestatic org.apache.fop.hyphenation.TernaryTree.strlen:([CI)I
iconst_1
iadd
invokevirtual org.apache.fop.hyphenation.CharVector.alloc:(I)I
istore 4
6: aload 1
invokevirtual org.apache.fop.hyphenation.CharVector.getArray:()[C
iload 4
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
invokevirtual org.apache.fop.hyphenation.CharVector.getArray:()[C
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 3
caload
invokestatic org.apache.fop.hyphenation.TernaryTree.strcpy:([CI[CI)V
7: aload 2
aload 1
invokevirtual org.apache.fop.hyphenation.CharVector.getArray:()[C
iload 4
iload 4
i2c
invokevirtual org.apache.fop.hyphenation.TernaryTree.insert:([CIC)V
8: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 3
iload 4
i2c
castore
9: goto 14
end local 4 10: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.lo:[C
iload 3
caload
invokevirtual org.apache.fop.hyphenation.TernaryTree.compact:(Lorg/apache/fop/hyphenation/CharVector;Lorg/apache/fop/hyphenation/TernaryTree;C)V
11: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.sc:[C
iload 3
caload
ifeq 13
12: aload 0
aload 1
aload 2
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.eq:[C
iload 3
caload
invokevirtual org.apache.fop.hyphenation.TernaryTree.compact:(Lorg/apache/fop/hyphenation/CharVector;Lorg/apache/fop/hyphenation/TernaryTree;C)V
13: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.hi:[C
iload 3
caload
invokevirtual org.apache.fop.hyphenation.TernaryTree.compact:(Lorg/apache/fop/hyphenation/CharVector;Lorg/apache/fop/hyphenation/TernaryTree;C)V
14: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/fop/hyphenation/TernaryTree;
0 15 1 kx Lorg/apache/fop/hyphenation/CharVector;
0 15 2 map Lorg/apache/fop/hyphenation/TernaryTree;
0 15 3 p C
4 10 4 k I
MethodParameters:
Name Flags
kx
map
p
public java.util.Enumeration keys();
descriptor: ()Ljava/util/Enumeration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new org.apache.fop.hyphenation.TernaryTree$Iterator
dup
aload 0
invokespecial org.apache.fop.hyphenation.TernaryTree$Iterator.<init>:(Lorg/apache/fop/hyphenation/TernaryTree;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/fop/hyphenation/TernaryTree;
public void printStats();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Number of keys = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.length:I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
1: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Node count = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.apache.fop.hyphenation.TernaryTree.freenode:C
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
2: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Key Array length = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: aload 0
getfield org.apache.fop.hyphenation.TernaryTree.kv:Lorg/apache/fop/hyphenation/CharVector;
invokevirtual org.apache.fop.hyphenation.CharVector.length:()I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/fop/hyphenation/TernaryTree;
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new org.apache.fop.hyphenation.TernaryTree
dup
invokespecial org.apache.fop.hyphenation.TernaryTree.<init>:()V
astore 1
start local 1 1: aload 1
ldc "Carlos"
bipush 67
invokevirtual org.apache.fop.hyphenation.TernaryTree.insert:(Ljava/lang/String;C)V
2: aload 1
ldc "Car"
bipush 114
invokevirtual org.apache.fop.hyphenation.TernaryTree.insert:(Ljava/lang/String;C)V
3: aload 1
ldc "palos"
bipush 108
invokevirtual org.apache.fop.hyphenation.TernaryTree.insert:(Ljava/lang/String;C)V
4: aload 1
ldc "pa"
bipush 112
invokevirtual org.apache.fop.hyphenation.TernaryTree.insert:(Ljava/lang/String;C)V
5: aload 1
invokevirtual org.apache.fop.hyphenation.TernaryTree.trimToSize:()V
6: getstatic java.lang.System.out:Ljava/io/PrintStream;
aload 1
ldc "Car"
invokevirtual org.apache.fop.hyphenation.TernaryTree.find:(Ljava/lang/String;)I
i2c
invokevirtual java.io.PrintStream.println:(C)V
7: getstatic java.lang.System.out:Ljava/io/PrintStream;
aload 1
ldc "Carlos"
invokevirtual org.apache.fop.hyphenation.TernaryTree.find:(Ljava/lang/String;)I
i2c
invokevirtual java.io.PrintStream.println:(C)V
8: getstatic java.lang.System.out:Ljava/io/PrintStream;
aload 1
ldc "alto"
invokevirtual org.apache.fop.hyphenation.TernaryTree.find:(Ljava/lang/String;)I
i2c
invokevirtual java.io.PrintStream.println:(C)V
9: aload 1
invokevirtual org.apache.fop.hyphenation.TernaryTree.printStats:()V
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 args [Ljava/lang/String;
1 11 1 tt Lorg/apache/fop/hyphenation/TernaryTree;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
args
}
SourceFile: "TernaryTree.java"
NestMembers:
org.apache.fop.hyphenation.TernaryTree$Iterator org.apache.fop.hyphenation.TernaryTree$Iterator$Item
InnerClasses:
public Iterator = org.apache.fop.hyphenation.TernaryTree$Iterator of org.apache.fop.hyphenation.TernaryTree