public class org.h2.result.LocalResultImpl implements org.h2.result.LocalResult
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.h2.result.LocalResultImpl
super_class: java.lang.Object
{
private int maxMemoryRows;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.h2.engine.Session session;
descriptor: Lorg/h2/engine/Session;
flags: (0x0002) ACC_PRIVATE
private int visibleColumnCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.h2.expression.Expression[] expressions;
descriptor: [Lorg/h2/expression/Expression;
flags: (0x0002) ACC_PRIVATE
private int rowId;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int rowCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.util.ArrayList<org.h2.value.Value[]> rows;
descriptor: Ljava/util/ArrayList;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/ArrayList<[Lorg/h2/value/Value;>;
private org.h2.result.SortOrder sort;
descriptor: Lorg/h2/result/SortOrder;
flags: (0x0002) ACC_PRIVATE
private java.util.TreeMap<org.h2.value.Value, org.h2.value.Value[]> distinctRows;
descriptor: Ljava/util/TreeMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/TreeMap<Lorg/h2/value/Value;[Lorg/h2/value/Value;>;
private org.h2.value.Value[] currentRow;
descriptor: [Lorg/h2/value/Value;
flags: (0x0002) ACC_PRIVATE
private int offset;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int limit;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean fetchPercent;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private org.h2.result.SortOrder withTiesSortOrder;
descriptor: Lorg/h2/result/SortOrder;
flags: (0x0002) ACC_PRIVATE
private boolean limitsWereApplied;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private org.h2.result.ResultExternal external;
descriptor: Lorg/h2/result/ResultExternal;
flags: (0x0002) ACC_PRIVATE
private boolean distinct;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int[] distinctIndexes;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private boolean closed;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean containsLobs;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.lang.Boolean containsNull;
descriptor: Ljava/lang/Boolean;
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/h2/result/LocalResultImpl;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.h2.result.LocalResultImpl.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_m1
putfield org.h2.result.LocalResultImpl.limit:I
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/result/LocalResultImpl;
public void <init>(org.h2.engine.Session, org.h2.expression.Expression[], int);
descriptor: (Lorg/h2/engine/Session;[Lorg/h2/expression/Expression;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, 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.h2.result.LocalResultImpl.limit:I
2: aload 0
aload 1
putfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
3: aload 1
ifnonnull 6
4: aload 0
ldc 2147483647
putfield org.h2.result.LocalResultImpl.maxMemoryRows:I
5: goto 11
6: StackMap locals: org.h2.result.LocalResultImpl org.h2.engine.Session org.h2.expression.Expression[] int
StackMap stack:
aload 1
invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
astore 4
start local 4 7: aload 4
invokevirtual org.h2.engine.Database.isPersistent:()Z
ifeq 10
aload 4
invokevirtual org.h2.engine.Database.isReadOnly:()Z
ifne 10
8: aload 0
aload 1
invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getMaxMemoryRows:()I
putfield org.h2.result.LocalResultImpl.maxMemoryRows:I
9: goto 11
10: StackMap locals: org.h2.engine.Database
StackMap stack:
aload 0
ldc 2147483647
putfield org.h2.result.LocalResultImpl.maxMemoryRows:I
end local 4 11: StackMap locals:
StackMap stack:
aload 0
invokestatic org.h2.util.Utils.newSmallArrayList:()Ljava/util/ArrayList;
putfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
12: aload 0
iload 3
putfield org.h2.result.LocalResultImpl.visibleColumnCount:I
13: aload 0
iconst_m1
putfield org.h2.result.LocalResultImpl.rowId:I
14: aload 0
aload 2
putfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
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/h2/result/LocalResultImpl;
0 16 1 session Lorg/h2/engine/Session;
0 16 2 expressions [Lorg/h2/expression/Expression;
0 16 3 visibleColumnCount I
7 11 4 db Lorg/h2/engine/Database;
MethodParameters:
Name Flags
session
expressions
visibleColumnCount
public boolean isLazy();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
public void setMaxMemoryRows(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.result.LocalResultImpl.maxMemoryRows:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/result/LocalResultImpl;
0 2 1 maxValue I
MethodParameters:
Name Flags
maxValue
public org.h2.result.LocalResultImpl createShallowCopy(org.h2.engine.SessionInterface);
descriptor: (Lorg/h2/engine/SessionInterface;)Lorg/h2/result/LocalResultImpl;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
ifnonnull 2
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
ifnull 1
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
if_icmpge 2
1: StackMap locals:
StackMap stack:
aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.containsLobs:Z
ifeq 4
3: aconst_null
areturn
4: StackMap locals:
StackMap stack:
aconst_null
astore 2
start local 2 5: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
ifnull 9
6: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
invokeinterface org.h2.result.ResultExternal.createShallowCopy:()Lorg/h2/result/ResultExternal;
astore 2
7: aload 2
ifnonnull 9
8: aconst_null
areturn
9: StackMap locals: org.h2.result.ResultExternal
StackMap stack:
new org.h2.result.LocalResultImpl
dup
invokespecial org.h2.result.LocalResultImpl.<init>:()V
astore 3
start local 3 10: aload 3
aload 0
getfield org.h2.result.LocalResultImpl.maxMemoryRows:I
putfield org.h2.result.LocalResultImpl.maxMemoryRows:I
11: aload 3
aload 1
checkcast org.h2.engine.Session
putfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
12: aload 3
aload 0
getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
putfield org.h2.result.LocalResultImpl.visibleColumnCount:I
13: aload 3
aload 0
getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
putfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
14: aload 3
iconst_m1
putfield org.h2.result.LocalResultImpl.rowId:I
15: aload 3
aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
putfield org.h2.result.LocalResultImpl.rowCount:I
16: aload 3
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
putfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
17: aload 3
aload 0
getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
putfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
18: aload 3
aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
putfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
19: aload 3
aload 0
getfield org.h2.result.LocalResultImpl.distinct:Z
putfield org.h2.result.LocalResultImpl.distinct:Z
20: aload 3
aload 0
getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
putfield org.h2.result.LocalResultImpl.distinctIndexes:[I
21: aload 3
aconst_null
putfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
22: aload 3
iconst_0
putfield org.h2.result.LocalResultImpl.offset:I
23: aload 3
iconst_m1
putfield org.h2.result.LocalResultImpl.limit:I
24: aload 3
aload 2
putfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
25: aload 3
aload 0
getfield org.h2.result.LocalResultImpl.containsNull:Ljava/lang/Boolean;
putfield org.h2.result.LocalResultImpl.containsNull:Ljava/lang/Boolean;
26: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lorg/h2/result/LocalResultImpl;
0 27 1 targetSession Lorg/h2/engine/SessionInterface;
5 27 2 e2 Lorg/h2/result/ResultExternal;
10 27 3 copy Lorg/h2/result/LocalResultImpl;
MethodParameters:
Name Flags
targetSession
public void setSortOrder(org.h2.result.SortOrder);
descriptor: (Lorg/h2/result/SortOrder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/result/LocalResultImpl;
0 2 1 sort Lorg/h2/result/SortOrder;
MethodParameters:
Name Flags
sort
public void setDistinct();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic org.h2.result.LocalResultImpl.$assertionsDisabled:Z
ifne 1
aload 0
getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
ifnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.h2.result.LocalResultImpl.distinct:Z
2: aload 0
new java.util.TreeMap
dup
aload 0
getfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getCompareMode:()Lorg/h2/value/CompareMode;
invokespecial java.util.TreeMap.<init>:(Ljava/util/Comparator;)V
putfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/result/LocalResultImpl;
public void setDistinct(int[]);
descriptor: ([I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.h2.result.LocalResultImpl.$assertionsDisabled:Z
ifne 1
aload 0
getfield org.h2.result.LocalResultImpl.distinct:Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.h2.result.LocalResultImpl.distinctIndexes:[I
2: aload 0
new java.util.TreeMap
dup
aload 0
getfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getCompareMode:()Lorg/h2/value/CompareMode;
invokespecial java.util.TreeMap.<init>:(Ljava/util/Comparator;)V
putfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/result/LocalResultImpl;
0 4 1 distinctIndexes [I
MethodParameters:
Name Flags
distinctIndexes
private boolean isAnyDistinct();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.distinct:Z
ifne 1
aload 0
getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
ifnonnull 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/result/LocalResultImpl;
public void removeDistinct(org.h2.value.Value[]);
descriptor: ([Lorg/h2/value/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.result.LocalResultImpl.distinct:Z
ifne 2
1: invokestatic org.h2.message.DbException.throwInternalError:()Ljava/lang/RuntimeException;
pop
2: StackMap locals:
StackMap stack:
getstatic org.h2.result.LocalResultImpl.$assertionsDisabled:Z
ifne 3
aload 1
arraylength
aload 0
getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
if_icmpeq 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
ifnull 8
4: aload 1
invokestatic org.h2.value.ValueRow.get:([Lorg/h2/value/Value;)Lorg/h2/value/ValueRow;
astore 2
start local 2 5: aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
aload 2
invokevirtual java.util.TreeMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
6: aload 0
aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
invokevirtual java.util.TreeMap.size:()I
putfield org.h2.result.LocalResultImpl.rowCount:I
end local 2 7: goto 9
8: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
aload 1
invokeinterface org.h2.result.ResultExternal.removeRow:([Lorg/h2/value/Value;)I
putfield org.h2.result.LocalResultImpl.rowCount:I
9: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/h2/result/LocalResultImpl;
0 10 1 values [Lorg/h2/value/Value;
5 7 2 array Lorg/h2/value/ValueRow;
MethodParameters:
Name Flags
values
public boolean containsDistinct(org.h2.value.Value[]);
descriptor: ([Lorg/h2/value/Value;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: getstatic org.h2.result.LocalResultImpl.$assertionsDisabled:Z
ifne 1
aload 1
arraylength
aload 0
getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
if_icmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
ifnull 3
2: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
aload 1
invokeinterface org.h2.result.ResultExternal.contains:([Lorg/h2/value/Value;)Z
ireturn
3: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
ifnonnull 10
4: aload 0
new java.util.TreeMap
dup
aload 0
getfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getCompareMode:()Lorg/h2/value/CompareMode;
invokespecial java.util.TreeMap.<init>:(Ljava/util/Comparator;)V
putfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
5: aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 3
goto 9
StackMap locals: org.h2.result.LocalResultImpl org.h2.value.Value[] top java.util.Iterator
StackMap stack:
6: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.value.Value[]
astore 2
start local 2 7: aload 0
aload 2
invokevirtual org.h2.result.LocalResultImpl.getDistinctRow:([Lorg/h2/value/Value;)Lorg/h2/value/ValueRow;
astore 4
start local 4 8: aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
aload 4
aload 4
invokevirtual org.h2.value.ValueRow.getList:()[Lorg/h2/value/Value;
invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 4 end local 2 9: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
10: StackMap locals: org.h2.result.LocalResultImpl org.h2.value.Value[]
StackMap stack:
aload 1
invokestatic org.h2.value.ValueRow.get:([Lorg/h2/value/Value;)Lorg/h2/value/ValueRow;
astore 2
start local 2 11: aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
aload 2
invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 12
iconst_1
ireturn
StackMap locals: org.h2.value.ValueRow
StackMap stack:
12: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/h2/result/LocalResultImpl;
0 13 1 values [Lorg/h2/value/Value;
7 9 2 row [Lorg/h2/value/Value;
8 9 4 array Lorg/h2/value/ValueRow;
11 13 2 array Lorg/h2/value/ValueRow;
MethodParameters:
Name Flags
values
public boolean containsNull();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.containsNull:Ljava/lang/Boolean;
astore 1
start local 1 1: aload 1
ifnonnull 16
2: iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
astore 1
3: aload 0
invokevirtual org.h2.result.LocalResultImpl.reset:()V
4: goto 13
5: StackMap locals: java.lang.Boolean
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
astore 2
start local 2 6: iconst_0
istore 3
start local 3 7: goto 12
8: StackMap locals: org.h2.value.Value[] int
StackMap stack:
aload 2
iload 3
aaload
invokevirtual org.h2.value.Value.containsNull:()Z
ifeq 11
9: iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
astore 1
10: goto 14
11: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
12: iload 3
aload 0
getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
if_icmplt 8
end local 3 end local 2 13: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.result.LocalResultImpl.next:()Z
ifne 5
14: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.result.LocalResultImpl.reset:()V
15: aload 0
aload 1
putfield org.h2.result.LocalResultImpl.containsNull:Ljava/lang/Boolean;
16: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.Boolean.booleanValue:()Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/h2/result/LocalResultImpl;
1 17 1 r Ljava/lang/Boolean;
6 13 2 row [Lorg/h2/value/Value;
7 13 3 i I
public void reset();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_m1
putfield org.h2.result.LocalResultImpl.rowId:I
1: aload 0
aconst_null
putfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
2: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
ifnull 4
3: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
invokeinterface org.h2.result.ResultExternal.reset:()V
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/result/LocalResultImpl;
public org.h2.value.Value[] currentRow();
descriptor: ()[Lorg/h2/value/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
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.result.LocalResultImpl.closed:Z
ifne 9
aload 0
getfield org.h2.result.LocalResultImpl.rowId:I
aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
if_icmpge 9
1: aload 0
dup
getfield org.h2.result.LocalResultImpl.rowId:I
iconst_1
iadd
putfield org.h2.result.LocalResultImpl.rowId:I
2: aload 0
getfield org.h2.result.LocalResultImpl.rowId:I
aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
if_icmpge 8
3: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
ifnull 6
4: aload 0
aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
invokeinterface org.h2.result.ResultExternal.next:()[Lorg/h2/value/Value;
putfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
5: goto 7
6: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
aload 0
getfield org.h2.result.LocalResultImpl.rowId:I
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.h2.value.Value[]
putfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
7: StackMap locals:
StackMap stack:
iconst_1
ireturn
8: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.h2.result.LocalResultImpl.currentRow:[Lorg/h2/value/Value;
9: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/h2/result/LocalResultImpl;
public int getRowId();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.rowId:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
public boolean isAfterLast();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.rowId:I
aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
if_icmplt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/result/LocalResultImpl;
private void cloneLobs(org.h2.value.Value[]);
descriptor: ([Lorg/h2/value/Value;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 9
2: StackMap locals: int
StackMap stack:
aload 1
iload 2
aaload
astore 3
start local 3 3: aload 3
invokevirtual org.h2.value.Value.copyToResult:()Lorg/h2/value/Value;
astore 4
start local 4 4: aload 4
aload 3
if_acmpeq 8
5: aload 0
iconst_1
putfield org.h2.result.LocalResultImpl.containsLobs:Z
6: aload 0
getfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
aload 4
invokevirtual org.h2.engine.Session.addTemporaryLob:(Lorg/h2/value/Value;)V
7: aload 1
iload 2
aload 4
aastore
end local 4 end local 3 8: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
9: iload 2
aload 1
arraylength
if_icmplt 2
end local 2 10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/h2/result/LocalResultImpl;
0 11 1 values [Lorg/h2/value/Value;
1 10 2 i I
3 8 3 v Lorg/h2/value/Value;
4 8 4 v2 Lorg/h2/value/Value;
MethodParameters:
Name Flags
values
private org.h2.value.ValueRow getDistinctRow(org.h2.value.Value[]);
descriptor: ([Lorg/h2/value/Value;)Lorg/h2/value/ValueRow;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
ifnull 10
1: aload 0
getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
arraylength
istore 2
start local 2 2: iload 2
anewarray org.h2.value.Value
astore 3
start local 3 3: iconst_0
istore 4
start local 4 4: goto 7
5: StackMap locals: int org.h2.value.Value[] int
StackMap stack:
aload 3
iload 4
aload 1
aload 0
getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
iload 4
iaload
aaload
aastore
6: iinc 4 1
StackMap locals:
StackMap stack:
7: iload 4
iload 2
if_icmplt 5
end local 4 8: aload 3
astore 1
end local 3 end local 2 9: goto 12
StackMap locals:
StackMap stack:
10: aload 1
arraylength
aload 0
getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
if_icmple 12
11: aload 1
aload 0
getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
checkcast org.h2.value.Value[]
astore 1
12: StackMap locals:
StackMap stack:
aload 1
invokestatic org.h2.value.ValueRow.get:([Lorg/h2/value/Value;)Lorg/h2/value/ValueRow;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/h2/result/LocalResultImpl;
0 13 1 values [Lorg/h2/value/Value;
2 9 2 cnt I
3 9 3 newValues [Lorg/h2/value/Value;
4 8 4 i I
MethodParameters:
Name Flags
values
private void createExternalResult();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield org.h2.result.LocalResultImpl.session:Lorg/h2/engine/Session;
invokevirtual org.h2.engine.Session.getDatabase:()Lorg/h2/engine/Database;
aload 0
getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
aload 0
getfield org.h2.result.LocalResultImpl.distinct:Z
aload 0
getfield org.h2.result.LocalResultImpl.distinctIndexes:[I
aload 0
getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
1: aload 0
getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
2: invokestatic org.h2.mvstore.db.MVTempResult.of:(Lorg/h2/engine/Database;[Lorg/h2/expression/Expression;Z[IILorg/h2/result/SortOrder;)Lorg/h2/result/ResultExternal;
putfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/result/LocalResultImpl;
public void addRow(org.h2.value.Value[]);
descriptor: ([Lorg/h2/value/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.h2.result.LocalResultImpl.cloneLobs:([Lorg/h2/value/Value;)V
1: aload 0
invokevirtual org.h2.result.LocalResultImpl.isAnyDistinct:()Z
ifeq 15
2: aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
ifnull 13
3: aload 0
aload 1
invokevirtual org.h2.result.LocalResultImpl.getDistinctRow:([Lorg/h2/value/Value;)Lorg/h2/value/ValueRow;
astore 2
start local 2 4: aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
aload 2
invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.value.Value[]
astore 3
start local 3 5: aload 3
ifnull 6
aload 0
getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
ifnull 7
aload 0
getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
aload 3
aload 1
invokevirtual org.h2.result.SortOrder.compare:([Lorg/h2/value/Value;[Lorg/h2/value/Value;)I
ifle 7
6: StackMap locals: org.h2.value.ValueRow org.h2.value.Value[]
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
aload 2
aload 1
invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
invokevirtual java.util.TreeMap.size:()I
putfield org.h2.result.LocalResultImpl.rowCount:I
8: aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
aload 0
getfield org.h2.result.LocalResultImpl.maxMemoryRows:I
if_icmple 19
9: aload 0
invokevirtual org.h2.result.LocalResultImpl.createExternalResult:()V
10: aload 0
aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
invokevirtual java.util.TreeMap.values:()Ljava/util/Collection;
invokeinterface org.h2.result.ResultExternal.addRows:(Ljava/util/Collection;)I
putfield org.h2.result.LocalResultImpl.rowCount:I
11: aload 0
aconst_null
putfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
end local 3 end local 2 12: goto 19
13: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
aload 1
invokeinterface org.h2.result.ResultExternal.addRow:([Lorg/h2/value/Value;)I
putfield org.h2.result.LocalResultImpl.rowCount:I
14: goto 19
15: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
aload 1
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
16: aload 0
dup
getfield org.h2.result.LocalResultImpl.rowCount:I
iconst_1
iadd
putfield org.h2.result.LocalResultImpl.rowCount:I
17: aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
aload 0
getfield org.h2.result.LocalResultImpl.maxMemoryRows:I
if_icmple 19
18: aload 0
invokevirtual org.h2.result.LocalResultImpl.addRowsToDisk:()V
19: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/h2/result/LocalResultImpl;
0 20 1 values [Lorg/h2/value/Value;
4 12 2 array Lorg/h2/value/ValueRow;
5 12 3 previous [Lorg/h2/value/Value;
MethodParameters:
Name Flags
values
private void addRowsToDisk();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
ifnonnull 2
1: aload 0
invokevirtual org.h2.result.LocalResultImpl.createExternalResult:()V
2: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
invokeinterface org.h2.result.ResultExternal.addRows:(Ljava/util/Collection;)I
putfield org.h2.result.LocalResultImpl.rowCount:I
3: aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.clear:()V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/result/LocalResultImpl;
public int getVisibleColumnCount();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
public void done();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
ifnull 3
1: aload 0
invokevirtual org.h2.result.LocalResultImpl.addRowsToDisk:()V
2: goto 15
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.result.LocalResultImpl.isAnyDistinct:()Z
ifeq 5
4: aload 0
new java.util.ArrayList
dup
aload 0
getfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
invokevirtual java.util.TreeMap.values:()Ljava/util/Collection;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
putfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
5: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
ifnull 15
aload 0
getfield org.h2.result.LocalResultImpl.limit:I
ifeq 15
aload 0
getfield org.h2.result.LocalResultImpl.limitsWereApplied:Z
ifne 15
6: aload 0
getfield org.h2.result.LocalResultImpl.limit:I
ifle 7
aload 0
getfield org.h2.result.LocalResultImpl.withTiesSortOrder:Lorg/h2/result/SortOrder;
ifnonnull 7
iconst_1
goto 8
StackMap locals:
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: istore 1
start local 1 9: aload 0
getfield org.h2.result.LocalResultImpl.offset:I
ifgt 10
iload 1
ifeq 14
10: StackMap locals: int
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
aload 0
getfield org.h2.result.LocalResultImpl.offset:I
iload 1
ifeq 11
aload 0
getfield org.h2.result.LocalResultImpl.limit:I
goto 12
StackMap locals: org.h2.result.LocalResultImpl int
StackMap stack: org.h2.result.SortOrder java.util.ArrayList int
11: aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
StackMap locals: org.h2.result.LocalResultImpl int
StackMap stack: org.h2.result.SortOrder java.util.ArrayList int int
12: invokevirtual org.h2.result.SortOrder.sort:(Ljava/util/ArrayList;II)V
13: goto 15
14: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
invokevirtual org.h2.result.SortOrder.sort:(Ljava/util/ArrayList;)V
end local 1 15: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.h2.result.LocalResultImpl.applyOffsetAndLimit:()V
16: aload 0
invokevirtual org.h2.result.LocalResultImpl.reset:()V
17: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/h2/result/LocalResultImpl;
9 15 1 withLimit Z
private void applyOffsetAndLimit();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=6, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.limitsWereApplied:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.offset:I
iconst_0
invokestatic java.lang.Math.max:(II)I
istore 1
start local 1 3: aload 0
getfield org.h2.result.LocalResultImpl.limit:I
istore 2
start local 2 4: iload 1
ifne 5
iload 2
ifge 5
aload 0
getfield org.h2.result.LocalResultImpl.fetchPercent:Z
ifeq 6
StackMap locals: int int
StackMap stack:
5: aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
ifne 7
6: StackMap locals:
StackMap stack:
return
7: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.fetchPercent:Z
ifeq 11
8: iload 2
iflt 9
iload 2
bipush 100
if_icmple 10
9: StackMap locals:
StackMap stack:
ldc "FETCH PERCENT"
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokestatic org.h2.message.DbException.getInvalidValueException:(Ljava/lang/String;Ljava/lang/Object;)Lorg/h2/message/DbException;
athrow
10: StackMap locals:
StackMap stack:
iload 2
i2l
aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
i2l
lmul
ldc 99
ladd
ldc 100
ldiv
l2i
istore 2
11: StackMap locals:
StackMap stack:
iload 1
aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
if_icmpge 12
iload 2
ifeq 12
iconst_0
goto 13
StackMap locals:
StackMap stack:
12: iconst_1
StackMap locals:
StackMap stack: int
13: istore 3
start local 3 14: iload 3
ifne 21
15: aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
iload 1
isub
istore 4
start local 4 16: iload 2
ifge 17
iload 4
goto 18
StackMap locals: int int
StackMap stack:
17: iload 4
iload 2
invokestatic java.lang.Math.min:(II)I
StackMap locals:
StackMap stack: int
18: istore 2
19: iload 1
ifne 22
iload 4
iload 2
if_icmpgt 22
20: return
end local 4 21: StackMap locals:
StackMap stack:
iconst_0
istore 2
22: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.h2.result.LocalResultImpl.distinctRows:Ljava/util/TreeMap;
23: aload 0
iload 2
putfield org.h2.result.LocalResultImpl.rowCount:I
24: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
ifnonnull 38
25: iload 3
ifeq 28
26: aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.clear:()V
27: return
28: StackMap locals:
StackMap stack:
iload 1
iload 2
iadd
istore 4
start local 4 29: aload 0
getfield org.h2.result.LocalResultImpl.withTiesSortOrder:Lorg/h2/result/SortOrder;
ifnull 35
30: aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
iload 4
iconst_1
isub
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.h2.value.Value[]
astore 5
start local 5 31: goto 34
32: StackMap locals: int org.h2.value.Value[]
StackMap stack:
iinc 4 1
33: aload 0
dup
getfield org.h2.result.LocalResultImpl.rowCount:I
iconst_1
iadd
putfield org.h2.result.LocalResultImpl.rowCount:I
34: StackMap locals:
StackMap stack:
iload 4
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
if_icmpge 35
aload 0
getfield org.h2.result.LocalResultImpl.withTiesSortOrder:Lorg/h2/result/SortOrder;
aload 5
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
iload 4
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.h2.value.Value[]
invokevirtual org.h2.result.SortOrder.compare:([Lorg/h2/value/Value;[Lorg/h2/value/Value;)I
ifeq 32
end local 5 35: StackMap locals:
StackMap stack:
iload 1
ifne 36
iload 4
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
if_icmpeq 43
36: StackMap locals:
StackMap stack:
aload 0
new java.util.ArrayList
dup
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
iload 1
iload 4
invokevirtual java.util.ArrayList.subList:(II)Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
putfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
end local 4 37: goto 43
38: StackMap locals:
StackMap stack:
iload 3
ifeq 42
39: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
invokeinterface org.h2.result.ResultExternal.close:()V
40: aload 0
aconst_null
putfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
41: return
42: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual org.h2.result.LocalResultImpl.trimExternal:(II)V
43: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Lorg/h2/result/LocalResultImpl;
3 44 1 offset I
4 44 2 limit I
14 44 3 clearAll Z
16 21 4 remaining I
29 37 4 to I
31 35 5 expected [Lorg/h2/value/Value;
private void trimExternal(int, int);
descriptor: (II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
astore 3
start local 3 1: aload 0
aconst_null
putfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
2: aload 3
invokeinterface org.h2.result.ResultExternal.reset:()V
3: goto 5
4: StackMap locals: org.h2.result.ResultExternal
StackMap stack:
aload 3
invokeinterface org.h2.result.ResultExternal.next:()[Lorg/h2/value/Value;
pop
5: StackMap locals:
StackMap stack:
iinc 1 -1
iload 1
ifge 4
6: aconst_null
astore 4
start local 4 7: goto 12
8: StackMap locals: org.h2.value.Value[]
StackMap stack:
aload 3
invokeinterface org.h2.result.ResultExternal.next:()[Lorg/h2/value/Value;
astore 4
9: aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
aload 4
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
10: aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
aload 0
getfield org.h2.result.LocalResultImpl.maxMemoryRows:I
if_icmple 12
11: aload 0
invokevirtual org.h2.result.LocalResultImpl.addRowsToDisk:()V
12: StackMap locals:
StackMap stack:
iinc 2 -1
iload 2
ifge 8
13: aload 0
getfield org.h2.result.LocalResultImpl.withTiesSortOrder:Lorg/h2/result/SortOrder;
ifnull 21
aload 4
ifnull 21
14: aload 4
astore 5
start local 5 15: goto 20
16: StackMap locals: org.h2.value.Value[]
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
aload 4
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
17: aload 0
dup
getfield org.h2.result.LocalResultImpl.rowCount:I
iconst_1
iadd
putfield org.h2.result.LocalResultImpl.rowCount:I
18: aload 0
getfield org.h2.result.LocalResultImpl.rows:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
aload 0
getfield org.h2.result.LocalResultImpl.maxMemoryRows:I
if_icmple 20
19: aload 0
invokevirtual org.h2.result.LocalResultImpl.addRowsToDisk:()V
20: StackMap locals:
StackMap stack:
aload 3
invokeinterface org.h2.result.ResultExternal.next:()[Lorg/h2/value/Value;
dup
astore 4
ifnull 21
aload 0
getfield org.h2.result.LocalResultImpl.withTiesSortOrder:Lorg/h2/result/SortOrder;
aload 5
aload 4
invokevirtual org.h2.result.SortOrder.compare:([Lorg/h2/value/Value;[Lorg/h2/value/Value;)I
ifeq 16
end local 5 21: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
ifnull 23
22: aload 0
invokevirtual org.h2.result.LocalResultImpl.addRowsToDisk:()V
23: StackMap locals:
StackMap stack:
aload 3
invokeinterface org.h2.result.ResultExternal.close:()V
24: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lorg/h2/result/LocalResultImpl;
0 25 1 offset I
0 25 2 limit I
1 25 3 temp Lorg/h2/result/ResultExternal;
7 25 4 row [Lorg/h2/value/Value;
15 21 5 expected [Lorg/h2/value/Value;
MethodParameters:
Name Flags
offset
limit
public int getRowCount();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
public void limitsWereApplied();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
putfield org.h2.result.LocalResultImpl.limitsWereApplied:Z
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/result/LocalResultImpl;
public boolean hasNext();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.closed:Z
ifne 1
aload 0
getfield org.h2.result.LocalResultImpl.rowId:I
aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
iconst_1
isub
if_icmpge 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/result/LocalResultImpl;
public void setLimit(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.result.LocalResultImpl.limit:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/result/LocalResultImpl;
0 2 1 limit I
MethodParameters:
Name Flags
limit
public void setFetchPercent(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.result.LocalResultImpl.fetchPercent:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/result/LocalResultImpl;
0 2 1 fetchPercent Z
MethodParameters:
Name Flags
fetchPercent
public void setWithTies(org.h2.result.SortOrder);
descriptor: (Lorg/h2/result/SortOrder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.h2.result.LocalResultImpl.$assertionsDisabled:Z
ifne 1
aload 0
getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
ifnull 1
aload 0
getfield org.h2.result.LocalResultImpl.sort:Lorg/h2/result/SortOrder;
aload 1
if_acmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.h2.result.LocalResultImpl.withTiesSortOrder:Lorg/h2/result/SortOrder;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/result/LocalResultImpl;
0 3 1 withTiesSortOrder Lorg/h2/result/SortOrder;
MethodParameters:
Name Flags
withTiesSortOrder
public boolean needToClose();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/result/LocalResultImpl;
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
ifnull 4
1: aload 0
getfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
invokeinterface org.h2.result.ResultExternal.close:()V
2: aload 0
aconst_null
putfield org.h2.result.LocalResultImpl.external:Lorg/h2/result/ResultExternal;
3: aload 0
iconst_1
putfield org.h2.result.LocalResultImpl.closed:Z
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/h2/result/LocalResultImpl;
public java.lang.String getAlias(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
iload 1
aaload
invokevirtual org.h2.expression.Expression.getAlias:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
0 1 1 i I
MethodParameters:
Name Flags
i
public java.lang.String getTableName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
iload 1
aaload
invokevirtual org.h2.expression.Expression.getTableName:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
0 1 1 i I
MethodParameters:
Name Flags
i
public java.lang.String getSchemaName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
iload 1
aaload
invokevirtual org.h2.expression.Expression.getSchemaName:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
0 1 1 i I
MethodParameters:
Name Flags
i
public java.lang.String getColumnName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
iload 1
aaload
invokevirtual org.h2.expression.Expression.getColumnName:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
0 1 1 i I
MethodParameters:
Name Flags
i
public org.h2.value.TypeInfo getColumnType(int);
descriptor: (I)Lorg/h2/value/TypeInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
iload 1
aaload
invokevirtual org.h2.expression.Expression.getType:()Lorg/h2/value/TypeInfo;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
0 1 1 i I
MethodParameters:
Name Flags
i
public int getNullable(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.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
iload 1
aaload
invokevirtual org.h2.expression.Expression.getNullable:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
0 1 1 i I
MethodParameters:
Name Flags
i
public boolean isAutoIncrement(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.result.LocalResultImpl.expressions:[Lorg/h2/expression/Expression;
iload 1
aaload
invokevirtual org.h2.expression.Expression.isAutoIncrement:()Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
0 1 1 i I
MethodParameters:
Name Flags
i
public void setOffset(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.h2.result.LocalResultImpl.offset:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/h2/result/LocalResultImpl;
0 2 1 offset I
MethodParameters:
Name Flags
offset
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
aload 0
invokespecial java.lang.Object.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " columns: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.h2.result.LocalResultImpl.visibleColumnCount:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
1: ldc " rows: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.h2.result.LocalResultImpl.rowCount:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " pos: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.h2.result.LocalResultImpl.rowId:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
2: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/result/LocalResultImpl;
public boolean isClosed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.result.LocalResultImpl.closed:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
public int getFetchSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
public void setFetchSize(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/result/LocalResultImpl;
0 1 1 fetchSize I
MethodParameters:
Name Flags
fetchSize
public org.h2.result.ResultInterface createShallowCopy(org.h2.engine.SessionInterface);
descriptor: (Lorg/h2/engine/SessionInterface;)Lorg/h2/result/ResultInterface;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual org.h2.result.LocalResultImpl.createShallowCopy:(Lorg/h2/engine/SessionInterface;)Lorg/h2/result/LocalResultImpl;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "LocalResultImpl.java"