public class org.hsqldb.map.HashIndex
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hsqldb.map.HashIndex
super_class: java.lang.Object
{
int[] hashTable;
descriptor: [I
flags: (0x0000)
int[] linkTable;
descriptor: [I
flags: (0x0000)
int newNodePointer;
descriptor: I
flags: (0x0000)
int elementCount;
descriptor: I
flags: (0x0000)
int reclaimedNodePointer;
descriptor: I
flags: (0x0000)
boolean fixedSize;
descriptor: Z
flags: (0x0000)
boolean modified;
descriptor: Z
flags: (0x0000)
public void <init>(int, int, boolean);
descriptor: (IIZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_m1
putfield org.hsqldb.map.HashIndex.reclaimedNodePointer:I
2: iload 2
iload 1
if_icmpge 4
3: iload 1
istore 2
4: StackMap locals: org.hsqldb.map.HashIndex int int int
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual org.hsqldb.map.HashIndex.reset:(II)V
5: aload 0
iload 3
putfield org.hsqldb.map.HashIndex.fixedSize:Z
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/hsqldb/map/HashIndex;
0 7 1 hashTableSize I
0 7 2 capacity I
0 7 3 fixedSize Z
MethodParameters:
Name Flags
hashTableSize
capacity
fixedSize
public void reset(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 1
newarray 10
astore 3
start local 3 1: iload 2
newarray 10
astore 4
start local 4 2: aload 0
aload 3
putfield org.hsqldb.map.HashIndex.hashTable:[I
3: aload 0
aload 4
putfield org.hsqldb.map.HashIndex.linkTable:[I
4: aload 0
getfield org.hsqldb.map.HashIndex.hashTable:[I
iconst_m1
invokestatic java.util.Arrays.fill:([II)V
5: aload 0
invokevirtual org.hsqldb.map.HashIndex.resetTables:()V
6: return
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/hsqldb/map/HashIndex;
0 7 1 hashTableSize I
0 7 2 capacity I
1 7 3 newHT [I
2 7 4 newLT [I
MethodParameters:
Name Flags
hashTableSize
capacity
public void resetTables();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield org.hsqldb.map.HashIndex.newNodePointer:I
1: aload 0
iconst_0
putfield org.hsqldb.map.HashIndex.elementCount:I
2: aload 0
iconst_m1
putfield org.hsqldb.map.HashIndex.reclaimedNodePointer:I
3: aload 0
iconst_0
putfield org.hsqldb.map.HashIndex.modified:Z
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/hsqldb/map/HashIndex;
public void clear();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iconst_0
aload 0
getfield org.hsqldb.map.HashIndex.newNodePointer:I
iconst_0
invokestatic java.util.Arrays.fill:([IIII)V
1: aload 0
getfield org.hsqldb.map.HashIndex.hashTable:[I
iconst_m1
invokestatic java.util.Arrays.fill:([II)V
2: aload 0
invokevirtual org.hsqldb.map.HashIndex.resetTables:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/hsqldb/map/HashIndex;
public int getHashIndex(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ldc 2147483647
iand
aload 0
getfield org.hsqldb.map.HashIndex.hashTable:[I
arraylength
irem
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hsqldb/map/HashIndex;
0 1 1 hash I
MethodParameters:
Name Flags
hash
public int getLookup(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.hsqldb.map.HashIndex.elementCount:I
ifne 2
1: iconst_m1
ireturn
2: StackMap locals:
StackMap stack:
iload 1
ldc 2147483647
iand
aload 0
getfield org.hsqldb.map.HashIndex.hashTable:[I
arraylength
irem
istore 2
start local 2 3: aload 0
getfield org.hsqldb.map.HashIndex.hashTable:[I
iload 2
iaload
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/hsqldb/map/HashIndex;
0 4 1 hash I
3 4 2 index I
MethodParameters:
Name Flags
hash
public int getNewNodePointer();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.hsqldb.map.HashIndex.newNodePointer:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hsqldb/map/HashIndex;
public int getNextLookup(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 1
iaload
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hsqldb/map/HashIndex;
0 1 1 lookup I
MethodParameters:
Name Flags
lookup
public int linkNode(int, int);
descriptor: (II)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.hsqldb.map.HashIndex.reclaimedNodePointer:I
istore 3
start local 3 1: iload 3
iconst_m1
if_icmpne 4
2: aload 0
dup
getfield org.hsqldb.map.HashIndex.newNodePointer:I
dup_x1
iconst_1
iadd
putfield org.hsqldb.map.HashIndex.newNodePointer:I
istore 3
3: goto 5
4: StackMap locals: int
StackMap stack:
aload 0
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 3
iaload
putfield org.hsqldb.map.HashIndex.reclaimedNodePointer:I
5: StackMap locals:
StackMap stack:
iload 2
iconst_m1
if_icmpne 9
6: aload 0
getfield org.hsqldb.map.HashIndex.hashTable:[I
iload 1
iaload
istore 4
start local 4 7: aload 0
getfield org.hsqldb.map.HashIndex.hashTable:[I
iload 1
iload 3
iastore
8: goto 11
end local 4 9: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 2
iaload
istore 4
start local 4 10: aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 2
iload 3
iastore
11: StackMap locals: int
StackMap stack:
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 3
iload 4
iastore
12: aload 0
dup
getfield org.hsqldb.map.HashIndex.elementCount:I
iconst_1
iadd
putfield org.hsqldb.map.HashIndex.elementCount:I
13: aload 0
iconst_1
putfield org.hsqldb.map.HashIndex.modified:Z
14: iload 3
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/hsqldb/map/HashIndex;
0 15 1 index I
0 15 2 lastLookup I
1 15 3 lookup I
7 9 4 nextLookup I
10 15 4 nextLookup I
MethodParameters:
Name Flags
index
lastLookup final
public void unlinkNode(int, int, int);
descriptor: (III)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
iconst_m1
if_icmpne 3
1: aload 0
getfield org.hsqldb.map.HashIndex.hashTable:[I
iload 1
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 3
iaload
iastore
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 2
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 3
iaload
iastore
4: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 3
aload 0
getfield org.hsqldb.map.HashIndex.reclaimedNodePointer:I
iastore
5: aload 0
iload 3
putfield org.hsqldb.map.HashIndex.reclaimedNodePointer:I
6: aload 0
dup
getfield org.hsqldb.map.HashIndex.elementCount:I
iconst_1
isub
putfield org.hsqldb.map.HashIndex.elementCount:I
7: aload 0
getfield org.hsqldb.map.HashIndex.elementCount:I
ifne 10
8: aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iconst_0
aload 0
getfield org.hsqldb.map.HashIndex.newNodePointer:I
iconst_0
invokestatic java.util.Arrays.fill:([IIII)V
9: aload 0
invokevirtual org.hsqldb.map.HashIndex.resetTables:()V
10: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/hsqldb/map/HashIndex;
0 11 1 index I
0 11 2 lastLookup I
0 11 3 lookup I
MethodParameters:
Name Flags
index
lastLookup
lookup
public boolean removeEmptyNode(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: iconst_m1
istore 3
start local 3 2: aload 0
getfield org.hsqldb.map.HashIndex.reclaimedNodePointer:I
istore 4
start local 4 3: goto 12
4: StackMap locals: int int int
StackMap stack:
iload 4
iload 1
if_icmpne 11
5: iload 3
iconst_m1
if_icmpne 8
6: aload 0
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 1
iaload
putfield org.hsqldb.map.HashIndex.reclaimedNodePointer:I
7: goto 9
8: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 3
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 1
iaload
iastore
9: StackMap locals:
StackMap stack:
iconst_1
istore 2
10: goto 13
11: StackMap locals:
StackMap stack:
iload 4
istore 3
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 4
iaload
istore 4
12: StackMap locals:
StackMap stack:
iload 4
ifge 4
end local 4 13: StackMap locals:
StackMap stack:
iload 2
ifne 15
14: iconst_0
ireturn
15: StackMap locals:
StackMap stack:
iconst_0
istore 4
start local 4 16: goto 20
17: StackMap locals: int
StackMap stack:
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 4
iaload
iload 1
if_icmple 19
18: aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 4
dup2
iaload
iconst_1
isub
iastore
19: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
20: iload 4
aload 0
getfield org.hsqldb.map.HashIndex.newNodePointer:I
if_icmplt 17
end local 4 21: aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 1
iconst_1
iadd
aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
iload 1
22: aload 0
getfield org.hsqldb.map.HashIndex.newNodePointer:I
iload 1
isub
iconst_1
isub
23: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
24: aload 0
getfield org.hsqldb.map.HashIndex.linkTable:[I
aload 0
getfield org.hsqldb.map.HashIndex.newNodePointer:I
iconst_1
isub
iconst_0
iastore
25: aload 0
dup
getfield org.hsqldb.map.HashIndex.newNodePointer:I
iconst_1
isub
putfield org.hsqldb.map.HashIndex.newNodePointer:I
26: iconst_0
istore 4
start local 4 27: goto 31
28: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.map.HashIndex.hashTable:[I
iload 4
iaload
iload 1
if_icmple 30
29: aload 0
getfield org.hsqldb.map.HashIndex.hashTable:[I
iload 4
dup2
iaload
iconst_1
isub
iastore
30: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
31: iload 4
aload 0
getfield org.hsqldb.map.HashIndex.hashTable:[I
arraylength
if_icmplt 28
end local 4 32: iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Lorg/hsqldb/map/HashIndex;
0 33 1 lookup I
1 33 2 found Z
2 33 3 lastLookup I
3 13 4 i I
16 21 4 i I
27 32 4 i I
MethodParameters:
Name Flags
lookup
}
SourceFile: "HashIndex.java"