public class org.h2.index.PageBtreeCursor implements org.h2.index.Cursor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.h2.index.PageBtreeCursor
super_class: java.lang.Object
{
private final org.h2.engine.Session session;
descriptor: Lorg/h2/engine/Session;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.h2.index.PageBtreeIndex index;
descriptor: Lorg/h2/index/PageBtreeIndex;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.h2.result.SearchRow last;
descriptor: Lorg/h2/result/SearchRow;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.h2.index.PageBtreeLeaf current;
descriptor: Lorg/h2/index/PageBtreeLeaf;
flags: (0x0002) ACC_PRIVATE
private int i;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.h2.result.SearchRow currentSearchRow;
descriptor: Lorg/h2/result/SearchRow;
flags: (0x0002) ACC_PRIVATE
private org.h2.result.Row currentRow;
descriptor: Lorg/h2/result/Row;
flags: (0x0002) ACC_PRIVATE
void <init>(org.h2.engine.Session, org.h2.index.PageBtreeIndex, org.h2.result.SearchRow);
descriptor: (Lorg/h2/engine/Session;Lorg/h2/index/PageBtreeIndex;Lorg/h2/result/SearchRow;)V
flags: (0x0000)
Code:
stack=2, 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
aload 1
putfield org.h2.index.PageBtreeCursor.session:Lorg/h2/engine/Session;
2: aload 0
aload 2
putfield org.h2.index.PageBtreeCursor.index:Lorg/h2/index/PageBtreeIndex;
3: aload 0
aload 3
putfield org.h2.index.PageBtreeCursor.last:Lorg/h2/result/SearchRow;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/index/PageBtreeCursor;
0 5 1 session Lorg/h2/engine/Session;
0 5 2 index Lorg/h2/index/PageBtreeIndex;
0 5 3 last Lorg/h2/result/SearchRow;
MethodParameters:
Name Flags
session
index
last
void setCurrent(org.h2.index.PageBtreeLeaf, int);
descriptor: (Lorg/h2/index/PageBtreeLeaf;I)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
putfield org.h2.index.PageBtreeCursor.current:Lorg/h2/index/PageBtreeLeaf;
1: aload 0
iload 2
putfield org.h2.index.PageBtreeCursor.i:I
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/index/PageBtreeCursor;
0 3 1 current Lorg/h2/index/PageBtreeLeaf;
0 3 2 i I
MethodParameters:
Name Flags
current
i
public org.h2.result.Row get();
descriptor: ()Lorg/h2/result/Row;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.index.PageBtreeCursor.currentRow:Lorg/h2/result/Row;
ifnonnull 2
aload 0
getfield org.h2.index.PageBtreeCursor.currentSearchRow:Lorg/h2/result/SearchRow;
ifnull 2
1: aload 0
aload 0
getfield org.h2.index.PageBtreeCursor.index:Lorg/h2/index/PageBtreeIndex;
aload 0
getfield org.h2.index.PageBtreeCursor.session:Lorg/h2/engine/Session;
aload 0
getfield org.h2.index.PageBtreeCursor.currentSearchRow:Lorg/h2/result/SearchRow;
invokeinterface org.h2.result.SearchRow.getKey:()J
invokevirtual org.h2.index.PageBtreeIndex.getRow:(Lorg/h2/engine/Session;J)Lorg/h2/result/Row;
putfield org.h2.index.PageBtreeCursor.currentRow:Lorg/h2/result/Row;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.index.PageBtreeCursor.currentRow:Lorg/h2/result/Row;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/index/PageBtreeCursor;
public org.h2.result.SearchRow getSearchRow();
descriptor: ()Lorg/h2/result/SearchRow;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.index.PageBtreeCursor.currentSearchRow:Lorg/h2/result/SearchRow;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/index/PageBtreeCursor;
public boolean next();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.index.PageBtreeCursor.current:Lorg/h2/index/PageBtreeLeaf;
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.index.PageBtreeCursor.i:I
aload 0
getfield org.h2.index.PageBtreeCursor.current:Lorg/h2/index/PageBtreeLeaf;
invokevirtual org.h2.index.PageBtreeLeaf.getEntryCount:()I
if_icmplt 6
3: aload 0
getfield org.h2.index.PageBtreeCursor.current:Lorg/h2/index/PageBtreeLeaf;
aload 0
invokevirtual org.h2.index.PageBtreeLeaf.nextPage:(Lorg/h2/index/PageBtreeCursor;)V
4: aload 0
getfield org.h2.index.PageBtreeCursor.current:Lorg/h2/index/PageBtreeLeaf;
ifnonnull 6
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.h2.index.PageBtreeCursor.current:Lorg/h2/index/PageBtreeLeaf;
aload 0
getfield org.h2.index.PageBtreeCursor.i:I
invokevirtual org.h2.index.PageBtreeLeaf.getRow:(I)Lorg/h2/result/SearchRow;
putfield org.h2.index.PageBtreeCursor.currentSearchRow:Lorg/h2/result/SearchRow;
7: aload 0
aconst_null
putfield org.h2.index.PageBtreeCursor.currentRow:Lorg/h2/result/Row;
8: aload 0
getfield org.h2.index.PageBtreeCursor.last:Lorg/h2/result/SearchRow;
ifnull 11
aload 0
getfield org.h2.index.PageBtreeCursor.index:Lorg/h2/index/PageBtreeIndex;
aload 0
getfield org.h2.index.PageBtreeCursor.currentSearchRow:Lorg/h2/result/SearchRow;
aload 0
getfield org.h2.index.PageBtreeCursor.last:Lorg/h2/result/SearchRow;
invokevirtual org.h2.index.PageBtreeIndex.compareRows:(Lorg/h2/result/SearchRow;Lorg/h2/result/SearchRow;)I
ifle 11
9: aload 0
aconst_null
putfield org.h2.index.PageBtreeCursor.currentSearchRow:Lorg/h2/result/SearchRow;
10: iconst_0
ireturn
11: StackMap locals:
StackMap stack:
aload 0
dup
getfield org.h2.index.PageBtreeCursor.i:I
iconst_1
iadd
putfield org.h2.index.PageBtreeCursor.i:I
12: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/h2/index/PageBtreeCursor;
public boolean previous();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.index.PageBtreeCursor.current:Lorg/h2/index/PageBtreeLeaf;
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.index.PageBtreeCursor.i:I
ifge 6
3: aload 0
getfield org.h2.index.PageBtreeCursor.current:Lorg/h2/index/PageBtreeLeaf;
aload 0
invokevirtual org.h2.index.PageBtreeLeaf.previousPage:(Lorg/h2/index/PageBtreeCursor;)V
4: aload 0
getfield org.h2.index.PageBtreeCursor.current:Lorg/h2/index/PageBtreeLeaf;
ifnonnull 6
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.h2.index.PageBtreeCursor.current:Lorg/h2/index/PageBtreeLeaf;
aload 0
getfield org.h2.index.PageBtreeCursor.i:I
invokevirtual org.h2.index.PageBtreeLeaf.getRow:(I)Lorg/h2/result/SearchRow;
putfield org.h2.index.PageBtreeCursor.currentSearchRow:Lorg/h2/result/SearchRow;
7: aload 0
aconst_null
putfield org.h2.index.PageBtreeCursor.currentRow:Lorg/h2/result/Row;
8: aload 0
dup
getfield org.h2.index.PageBtreeCursor.i:I
iconst_1
isub
putfield org.h2.index.PageBtreeCursor.i:I
9: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/h2/index/PageBtreeCursor;
}
SourceFile: "PageBtreeCursor.java"