final class org.apache.cassandra.utils.btree.TreeBuilder
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.apache.cassandra.utils.btree.TreeBuilder
super_class: java.lang.Object
{
private static final io.netty.util.Recycler<org.apache.cassandra.utils.btree.TreeBuilder> builderRecycler;
descriptor: Lio/netty/util/Recycler;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lio/netty/util/Recycler<Lorg/apache/cassandra/utils/btree/TreeBuilder;>;
private final io.netty.util.Recycler$Handle recycleHandle;
descriptor: Lio/netty/util/Recycler$Handle;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.apache.cassandra.utils.btree.NodeBuilder rootBuilder;
descriptor: Lorg/apache/cassandra/utils/btree/NodeBuilder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
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=2, locals=0, args_size=0
0: ldc Lorg/apache/cassandra/utils/btree/TreeBuilder;
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.apache.cassandra.utils.btree.TreeBuilder.$assertionsDisabled:Z
3: new org.apache.cassandra.utils.btree.TreeBuilder$1
dup
invokespecial org.apache.cassandra.utils.btree.TreeBuilder$1.<init>:()V
putstatic org.apache.cassandra.utils.btree.TreeBuilder.builderRecycler:Lio/netty/util/Recycler;
4: return
LocalVariableTable:
Start End Slot Name Signature
public static org.apache.cassandra.utils.btree.TreeBuilder newInstance();
descriptor: ()Lorg/apache/cassandra/utils/btree/TreeBuilder;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic org.apache.cassandra.utils.btree.TreeBuilder.builderRecycler:Lio/netty/util/Recycler;
invokevirtual io.netty.util.Recycler.get:()Ljava/lang/Object;
checkcast org.apache.cassandra.utils.btree.TreeBuilder
areturn
LocalVariableTable:
Start End Slot Name Signature
private void <init>(io.netty.util.Recycler$Handle);
descriptor: (Lio/netty/util/Recycler$Handle;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.apache.cassandra.utils.btree.NodeBuilder
dup
invokespecial org.apache.cassandra.utils.btree.NodeBuilder.<init>:()V
putfield org.apache.cassandra.utils.btree.TreeBuilder.rootBuilder:Lorg/apache/cassandra/utils/btree/NodeBuilder;
2: aload 0
aload 1
putfield org.apache.cassandra.utils.btree.TreeBuilder.recycleHandle:Lio/netty/util/Recycler$Handle;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/cassandra/utils/btree/TreeBuilder;
0 4 1 handle Lio/netty/util/Recycler$Handle;
MethodParameters:
Name Flags
handle
public <C, K extends C, V extends C> [] update([], java.util.Comparator<C>, java.lang.Iterable<K>, org.apache.cassandra.utils.btree.UpdateFunction<K, V>);
descriptor: ([Ljava/lang/Object;Ljava/util/Comparator;Ljava/lang/Iterable;Lorg/apache/cassandra/utils/btree/UpdateFunction;)[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.apache.cassandra.utils.btree.TreeBuilder.$assertionsDisabled:Z
ifne 1
aload 4
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.utils.btree.TreeBuilder.rootBuilder:Lorg/apache/cassandra/utils/btree/NodeBuilder;
astore 5
start local 5 2: aload 5
aload 1
getstatic org.apache.cassandra.utils.btree.BTree.POSITIVE_INFINITY:Ljava/lang/Object;
aload 4
aload 2
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.reset:([Ljava/lang/Object;Ljava/lang/Object;Lorg/apache/cassandra/utils/btree/UpdateFunction;Ljava/util/Comparator;)V
3: aload 3
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 7
goto 13
StackMap locals: org.apache.cassandra.utils.btree.TreeBuilder java.lang.Object[] java.util.Comparator java.lang.Iterable org.apache.cassandra.utils.btree.UpdateFunction org.apache.cassandra.utils.btree.NodeBuilder top java.util.Iterator
StackMap stack:
4: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 6
start local 6 5: StackMap locals: org.apache.cassandra.utils.btree.TreeBuilder java.lang.Object[] java.util.Comparator java.lang.Iterable org.apache.cassandra.utils.btree.UpdateFunction org.apache.cassandra.utils.btree.NodeBuilder java.lang.Object java.util.Iterator
StackMap stack:
aload 4
invokeinterface org.apache.cassandra.utils.btree.UpdateFunction.abortEarly:()Z
ifeq 8
6: aload 0
getfield org.apache.cassandra.utils.btree.TreeBuilder.rootBuilder:Lorg/apache/cassandra/utils/btree/NodeBuilder;
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.clear:()V
7: aconst_null
areturn
8: StackMap locals:
StackMap stack:
aload 5
aload 6
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.update:(Ljava/lang/Object;)Lorg/apache/cassandra/utils/btree/NodeBuilder;
astore 8
start local 8 9: aload 8
ifnonnull 11
10: goto 13
11: StackMap locals: org.apache.cassandra.utils.btree.NodeBuilder
StackMap stack:
aload 8
astore 5
end local 8 12: goto 5
end local 6 13: StackMap locals: org.apache.cassandra.utils.btree.TreeBuilder java.lang.Object[] java.util.Comparator java.lang.Iterable org.apache.cassandra.utils.btree.UpdateFunction org.apache.cassandra.utils.btree.NodeBuilder top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
14: StackMap locals: org.apache.cassandra.utils.btree.TreeBuilder java.lang.Object[] java.util.Comparator java.lang.Iterable org.apache.cassandra.utils.btree.UpdateFunction org.apache.cassandra.utils.btree.NodeBuilder
StackMap stack:
aload 5
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.finish:()Lorg/apache/cassandra/utils/btree/NodeBuilder;
astore 6
start local 6 15: aload 6
ifnonnull 17
16: goto 19
17: StackMap locals: org.apache.cassandra.utils.btree.NodeBuilder
StackMap stack:
aload 6
astore 5
end local 6 18: goto 14
19: StackMap locals:
StackMap stack:
getstatic org.apache.cassandra.utils.btree.TreeBuilder.$assertionsDisabled:Z
ifne 20
aload 5
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.isRoot:()Z
ifne 20
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
20: StackMap locals:
StackMap stack:
aload 5
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.toNode:()[Ljava/lang/Object;
astore 6
start local 6 21: aload 5
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.clear:()V
22: getstatic org.apache.cassandra.utils.btree.TreeBuilder.builderRecycler:Lio/netty/util/Recycler;
aload 0
aload 0
getfield org.apache.cassandra.utils.btree.TreeBuilder.recycleHandle:Lio/netty/util/Recycler$Handle;
invokevirtual io.netty.util.Recycler.recycle:(Ljava/lang/Object;Lio/netty/util/Recycler$Handle;)Z
pop
23: aload 6
areturn
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 24 0 this Lorg/apache/cassandra/utils/btree/TreeBuilder;
0 24 1 btree [Ljava/lang/Object;
0 24 2 comparator Ljava/util/Comparator<TC;>;
0 24 3 source Ljava/lang/Iterable<TK;>;
0 24 4 updateF Lorg/apache/cassandra/utils/btree/UpdateFunction<TK;TV;>;
2 24 5 current Lorg/apache/cassandra/utils/btree/NodeBuilder;
5 13 6 key TK;
9 12 8 next Lorg/apache/cassandra/utils/btree/NodeBuilder;
15 18 6 next Lorg/apache/cassandra/utils/btree/NodeBuilder;
21 24 6 r [Ljava/lang/Object;
Signature: <C:Ljava/lang/Object;K:TC;V:TC;>([Ljava/lang/Object;Ljava/util/Comparator<TC;>;Ljava/lang/Iterable<TK;>;Lorg/apache/cassandra/utils/btree/UpdateFunction<TK;TV;>;)[Ljava/lang/Object;
MethodParameters:
Name Flags
btree
comparator
source
updateF
public <C, K extends C, V extends C> [] build(java.lang.Iterable<K>, org.apache.cassandra.utils.btree.UpdateFunction<K, V>, int);
descriptor: (Ljava/lang/Iterable;Lorg/apache/cassandra/utils/btree/UpdateFunction;I)[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.apache.cassandra.utils.btree.TreeBuilder.$assertionsDisabled:Z
ifne 1
aload 2
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.utils.btree.TreeBuilder.rootBuilder:Lorg/apache/cassandra/utils/btree/NodeBuilder;
astore 4
start local 4 2: goto 4
3: StackMap locals: org.apache.cassandra.utils.btree.NodeBuilder
StackMap stack:
aload 4
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.ensureChild:()Lorg/apache/cassandra/utils/btree/NodeBuilder;
astore 4
4: StackMap locals:
StackMap stack:
iload 3
getstatic org.apache.cassandra.utils.btree.BTree.FAN_SHIFT:I
ishr
dup
istore 3
ifgt 3
5: aload 4
getstatic org.apache.cassandra.utils.btree.BTree.EMPTY_LEAF:[Ljava/lang/Object;
getstatic org.apache.cassandra.utils.btree.BTree.POSITIVE_INFINITY:Ljava/lang/Object;
aload 2
aconst_null
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.reset:([Ljava/lang/Object;Ljava/lang/Object;Lorg/apache/cassandra/utils/btree/UpdateFunction;Ljava/util/Comparator;)V
6: aload 1
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 6
goto 9
StackMap locals: org.apache.cassandra.utils.btree.TreeBuilder java.lang.Iterable org.apache.cassandra.utils.btree.UpdateFunction int org.apache.cassandra.utils.btree.NodeBuilder top java.util.Iterator
StackMap stack:
7: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 5
start local 5 8: aload 4
aload 5
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.addNewKey:(Ljava/lang/Object;)V
end local 5 9: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
10: aload 4
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.ascendToRoot:()Lorg/apache/cassandra/utils/btree/NodeBuilder;
astore 4
11: aload 4
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.toNode:()[Ljava/lang/Object;
astore 5
start local 5 12: aload 4
invokevirtual org.apache.cassandra.utils.btree.NodeBuilder.clear:()V
13: getstatic org.apache.cassandra.utils.btree.TreeBuilder.builderRecycler:Lio/netty/util/Recycler;
aload 0
aload 0
getfield org.apache.cassandra.utils.btree.TreeBuilder.recycleHandle:Lio/netty/util/Recycler$Handle;
invokevirtual io.netty.util.Recycler.recycle:(Ljava/lang/Object;Lio/netty/util/Recycler$Handle;)Z
pop
14: aload 5
areturn
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 15 0 this Lorg/apache/cassandra/utils/btree/TreeBuilder;
0 15 1 source Ljava/lang/Iterable<TK;>;
0 15 2 updateF Lorg/apache/cassandra/utils/btree/UpdateFunction<TK;TV;>;
0 15 3 size I
2 15 4 current Lorg/apache/cassandra/utils/btree/NodeBuilder;
8 9 5 key TK;
12 15 5 r [Ljava/lang/Object;
Signature: <C:Ljava/lang/Object;K:TC;V:TC;>(Ljava/lang/Iterable<TK;>;Lorg/apache/cassandra/utils/btree/UpdateFunction<TK;TV;>;I)[Ljava/lang/Object;
MethodParameters:
Name Flags
source
updateF
size
}
SourceFile: "TreeBuilder.java"
NestMembers:
org.apache.cassandra.utils.btree.TreeBuilder$1
InnerClasses:
public abstract Handle = io.netty.util.Recycler$Handle of io.netty.util.Recycler
org.apache.cassandra.utils.btree.TreeBuilder$1