class org.h2.expression.aggregate.AggregateDataDistinctWithCounts extends org.h2.expression.aggregate.AggregateData
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.h2.expression.aggregate.AggregateDataDistinctWithCounts
super_class: org.h2.expression.aggregate.AggregateData
{
private final boolean ignoreNulls;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int maxDistinctCount;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.util.TreeMap<org.h2.value.Value, org.h2.expression.aggregate.LongDataCounter> values;
descriptor: Ljava/util/TreeMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/TreeMap<Lorg/h2/value/Value;Lorg/h2/expression/aggregate/LongDataCounter;>;
void <init>(boolean, int);
descriptor: (ZI)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial org.h2.expression.aggregate.AggregateData.<init>:()V
1: aload 0
iload 1
putfield org.h2.expression.aggregate.AggregateDataDistinctWithCounts.ignoreNulls:Z
2: aload 0
iload 2
putfield org.h2.expression.aggregate.AggregateDataDistinctWithCounts.maxDistinctCount:I
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/h2/expression/aggregate/AggregateDataDistinctWithCounts;
0 4 1 ignoreNulls Z
0 4 2 maxDistinctCount I
MethodParameters:
Name Flags
ignoreNulls
maxDistinctCount
void add(org.h2.engine.Database, org.h2.value.Value);
descriptor: (Lorg/h2/engine/Database;Lorg/h2/value/Value;)V
flags: (0x0000)
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.h2.expression.aggregate.AggregateDataDistinctWithCounts.ignoreNulls:Z
ifeq 2
aload 2
getstatic org.h2.value.ValueNull.INSTANCE:Lorg/h2/value/ValueNull;
if_acmpne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.expression.aggregate.AggregateDataDistinctWithCounts.values:Ljava/util/TreeMap;
ifnonnull 4
3: aload 0
new java.util.TreeMap
dup
aload 1
invokevirtual org.h2.engine.Database.getCompareMode:()Lorg/h2/value/CompareMode;
invokespecial java.util.TreeMap.<init>:(Ljava/util/Comparator;)V
putfield org.h2.expression.aggregate.AggregateDataDistinctWithCounts.values:Ljava/util/TreeMap;
4: StackMap locals:
StackMap stack:
aload 0
getfield org.h2.expression.aggregate.AggregateDataDistinctWithCounts.values:Ljava/util/TreeMap;
aload 2
invokevirtual java.util.TreeMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.h2.expression.aggregate.LongDataCounter
astore 3
start local 3 5: aload 3
ifnonnull 10
6: aload 0
getfield org.h2.expression.aggregate.AggregateDataDistinctWithCounts.values:Ljava/util/TreeMap;
invokevirtual java.util.TreeMap.size:()I
aload 0
getfield org.h2.expression.aggregate.AggregateDataDistinctWithCounts.maxDistinctCount:I
if_icmplt 8
7: return
8: StackMap locals: org.h2.expression.aggregate.LongDataCounter
StackMap stack:
new org.h2.expression.aggregate.LongDataCounter
dup
invokespecial org.h2.expression.aggregate.LongDataCounter.<init>:()V
astore 3
9: aload 0
getfield org.h2.expression.aggregate.AggregateDataDistinctWithCounts.values:Ljava/util/TreeMap;
aload 2
aload 3
invokevirtual java.util.TreeMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
10: StackMap locals:
StackMap stack:
aload 3
dup
getfield org.h2.expression.aggregate.LongDataCounter.count:J
lconst_1
ladd
putfield org.h2.expression.aggregate.LongDataCounter.count:J
11: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/h2/expression/aggregate/AggregateDataDistinctWithCounts;
0 12 1 database Lorg/h2/engine/Database;
0 12 2 v Lorg/h2/value/Value;
5 12 3 a Lorg/h2/expression/aggregate/LongDataCounter;
MethodParameters:
Name Flags
database
v
org.h2.value.Value getValue(org.h2.engine.Database, int);
descriptor: (Lorg/h2/engine/Database;I)Lorg/h2/value/Value;
flags: (0x0000)
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/expression/aggregate/AggregateDataDistinctWithCounts;
0 1 1 database Lorg/h2/engine/Database;
0 1 2 dataType I
MethodParameters:
Name Flags
database
dataType
java.util.TreeMap<org.h2.value.Value, org.h2.expression.aggregate.LongDataCounter> getValues();
descriptor: ()Ljava/util/TreeMap;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.h2.expression.aggregate.AggregateDataDistinctWithCounts.values:Ljava/util/TreeMap;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/expression/aggregate/AggregateDataDistinctWithCounts;
Signature: ()Ljava/util/TreeMap<Lorg/h2/value/Value;Lorg/h2/expression/aggregate/LongDataCounter;>;
}
SourceFile: "AggregateDataDistinctWithCounts.java"