public final class org.apache.lucene.util.BytesRefArray implements org.apache.lucene.util.SortableBytesRefArray
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.apache.lucene.util.BytesRefArray
super_class: java.lang.Object
{
private final org.apache.lucene.util.ByteBlockPool pool;
descriptor: Lorg/apache/lucene/util/ByteBlockPool;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int[] offsets;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private int lastElement;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int currentOffset;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private final org.apache.lucene.util.Counter bytesUsed;
descriptor: Lorg/apache/lucene/util/Counter;
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=1, locals=0, args_size=0
0: ldc Lorg/apache/lucene/util/BytesRefArray;
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.lucene.util.BytesRefArray.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.apache.lucene.util.Counter);
descriptor: (Lorg/apache/lucene/util/Counter;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_1
newarray 10
putfield org.apache.lucene.util.BytesRefArray.offsets:[I
2: aload 0
iconst_0
putfield org.apache.lucene.util.BytesRefArray.lastElement:I
3: aload 0
iconst_0
putfield org.apache.lucene.util.BytesRefArray.currentOffset:I
4: aload 0
new org.apache.lucene.util.ByteBlockPool
dup
new org.apache.lucene.util.ByteBlockPool$DirectTrackingAllocator
dup
5: aload 1
invokespecial org.apache.lucene.util.ByteBlockPool$DirectTrackingAllocator.<init>:(Lorg/apache/lucene/util/Counter;)V
invokespecial org.apache.lucene.util.ByteBlockPool.<init>:(Lorg/apache/lucene/util/ByteBlockPool$Allocator;)V
6: putfield org.apache.lucene.util.BytesRefArray.pool:Lorg/apache/lucene/util/ByteBlockPool;
7: aload 0
getfield org.apache.lucene.util.BytesRefArray.pool:Lorg/apache/lucene/util/ByteBlockPool;
invokevirtual org.apache.lucene.util.ByteBlockPool.nextBuffer:()V
8: aload 1
getstatic org.apache.lucene.util.RamUsageEstimator.NUM_BYTES_ARRAY_HEADER:I
iconst_4
imul
i2l
invokevirtual org.apache.lucene.util.Counter.addAndGet:(J)J
pop2
9: aload 0
aload 1
putfield org.apache.lucene.util.BytesRefArray.bytesUsed:Lorg/apache/lucene/util/Counter;
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/lucene/util/BytesRefArray;
0 11 1 bytesUsed Lorg/apache/lucene/util/Counter;
MethodParameters:
Name Flags
bytesUsed
public void clear();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield org.apache.lucene.util.BytesRefArray.lastElement:I
1: aload 0
iconst_0
putfield org.apache.lucene.util.BytesRefArray.currentOffset:I
2: aload 0
getfield org.apache.lucene.util.BytesRefArray.offsets:[I
iconst_0
invokestatic java.util.Arrays.fill:([II)V
3: aload 0
getfield org.apache.lucene.util.BytesRefArray.pool:Lorg/apache/lucene/util/ByteBlockPool;
iconst_0
iconst_1
invokevirtual org.apache.lucene.util.ByteBlockPool.reset:(ZZ)V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/lucene/util/BytesRefArray;
public int append(org.apache.lucene.util.BytesRef);
descriptor: (Lorg/apache/lucene/util/BytesRef;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.lucene.util.BytesRefArray.lastElement:I
aload 0
getfield org.apache.lucene.util.BytesRefArray.offsets:[I
arraylength
if_icmplt 4
1: aload 0
getfield org.apache.lucene.util.BytesRefArray.offsets:[I
arraylength
istore 2
start local 2 2: aload 0
aload 0
getfield org.apache.lucene.util.BytesRefArray.offsets:[I
aload 0
getfield org.apache.lucene.util.BytesRefArray.offsets:[I
arraylength
iconst_1
iadd
invokestatic org.apache.lucene.util.ArrayUtil.grow:([II)[I
putfield org.apache.lucene.util.BytesRefArray.offsets:[I
3: aload 0
getfield org.apache.lucene.util.BytesRefArray.bytesUsed:Lorg/apache/lucene/util/Counter;
aload 0
getfield org.apache.lucene.util.BytesRefArray.offsets:[I
arraylength
iload 2
isub
iconst_4
imul
i2l
invokevirtual org.apache.lucene.util.Counter.addAndGet:(J)J
pop2
end local 2 4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.lucene.util.BytesRefArray.pool:Lorg/apache/lucene/util/ByteBlockPool;
aload 1
invokevirtual org.apache.lucene.util.ByteBlockPool.append:(Lorg/apache/lucene/util/BytesRef;)V
5: aload 0
getfield org.apache.lucene.util.BytesRefArray.offsets:[I
aload 0
dup
getfield org.apache.lucene.util.BytesRefArray.lastElement:I
dup_x1
iconst_1
iadd
putfield org.apache.lucene.util.BytesRefArray.lastElement:I
aload 0
getfield org.apache.lucene.util.BytesRefArray.currentOffset:I
iastore
6: aload 0
dup
getfield org.apache.lucene.util.BytesRefArray.currentOffset:I
aload 1
getfield org.apache.lucene.util.BytesRef.length:I
iadd
putfield org.apache.lucene.util.BytesRefArray.currentOffset:I
7: aload 0
getfield org.apache.lucene.util.BytesRefArray.lastElement:I
iconst_1
isub
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/lucene/util/BytesRefArray;
0 8 1 bytes Lorg/apache/lucene/util/BytesRef;
2 4 2 oldLen I
MethodParameters:
Name Flags
bytes
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.lucene.util.BytesRefArray.lastElement:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/util/BytesRefArray;
public org.apache.lucene.util.BytesRef get(org.apache.lucene.util.BytesRefBuilder, int);
descriptor: (Lorg/apache/lucene/util/BytesRefBuilder;I)Lorg/apache/lucene/util/BytesRef;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 2
aload 0
getfield org.apache.lucene.util.BytesRefArray.lastElement:I
invokestatic org.apache.lucene.util.FutureObjects.checkIndex:(II)I
pop
1: aload 0
getfield org.apache.lucene.util.BytesRefArray.offsets:[I
iload 2
iaload
istore 3
start local 3 2: iload 2
aload 0
getfield org.apache.lucene.util.BytesRefArray.lastElement:I
iconst_1
isub
if_icmpne 3
aload 0
getfield org.apache.lucene.util.BytesRefArray.currentOffset:I
iload 3
isub
goto 4
3: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.lucene.util.BytesRefArray.offsets:[I
iload 2
iconst_1
iadd
iaload
iload 3
isub
4: StackMap locals:
StackMap stack: int
istore 4
start local 4 5: aload 1
iload 4
invokevirtual org.apache.lucene.util.BytesRefBuilder.grow:(I)V
6: aload 1
iload 4
invokevirtual org.apache.lucene.util.BytesRefBuilder.setLength:(I)V
7: aload 0
getfield org.apache.lucene.util.BytesRefArray.pool:Lorg/apache/lucene/util/ByteBlockPool;
iload 3
i2l
aload 1
invokevirtual org.apache.lucene.util.BytesRefBuilder.bytes:()[B
iconst_0
aload 1
invokevirtual org.apache.lucene.util.BytesRefBuilder.length:()I
invokevirtual org.apache.lucene.util.ByteBlockPool.readBytes:(J[BII)V
8: aload 1
invokevirtual org.apache.lucene.util.BytesRefBuilder.get:()Lorg/apache/lucene/util/BytesRef;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/lucene/util/BytesRefArray;
0 9 1 spare Lorg/apache/lucene/util/BytesRefBuilder;
0 9 2 index I
2 9 3 offset I
5 9 4 length I
MethodParameters:
Name Flags
spare
index
private void setBytesRef(org.apache.lucene.util.BytesRefBuilder, org.apache.lucene.util.BytesRef, int);
descriptor: (Lorg/apache/lucene/util/BytesRefBuilder;Lorg/apache/lucene/util/BytesRef;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
aload 0
getfield org.apache.lucene.util.BytesRefArray.lastElement:I
invokestatic org.apache.lucene.util.FutureObjects.checkIndex:(II)I
pop
1: aload 0
getfield org.apache.lucene.util.BytesRefArray.offsets:[I
iload 3
iaload
istore 4
start local 4 2: iload 3
aload 0
getfield org.apache.lucene.util.BytesRefArray.lastElement:I
iconst_1
isub
if_icmpne 5
3: aload 0
getfield org.apache.lucene.util.BytesRefArray.currentOffset:I
iload 4
isub
istore 5
start local 5 4: goto 6
end local 5 5: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.lucene.util.BytesRefArray.offsets:[I
iload 3
iconst_1
iadd
iaload
iload 4
isub
istore 5
start local 5 6: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.lucene.util.BytesRefArray.pool:Lorg/apache/lucene/util/ByteBlockPool;
aload 1
aload 2
iload 4
i2l
iload 5
invokevirtual org.apache.lucene.util.ByteBlockPool.setBytesRef:(Lorg/apache/lucene/util/BytesRefBuilder;Lorg/apache/lucene/util/BytesRef;JI)V
7: return
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 8 0 this Lorg/apache/lucene/util/BytesRefArray;
0 8 1 spare Lorg/apache/lucene/util/BytesRefBuilder;
0 8 2 result Lorg/apache/lucene/util/BytesRef;
0 8 3 index I
2 8 4 offset I
4 5 5 length I
6 8 5 length I
MethodParameters:
Name Flags
spare
result
index
public org.apache.lucene.util.BytesRefArray$SortState sort(java.util.Comparator<org.apache.lucene.util.BytesRef>, java.util.function.IntBinaryOperator);
descriptor: (Ljava/util/Comparator;Ljava/util/function/IntBinaryOperator;)Lorg/apache/lucene/util/BytesRefArray$SortState;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.apache.lucene.util.BytesRefArray.size:()I
newarray 10
astore 3
start local 3 1: iconst_0
istore 4
start local 4 2: goto 5
3: StackMap locals: int[] int
StackMap stack:
aload 3
iload 4
iload 4
iastore
4: iinc 4 1
StackMap locals:
StackMap stack:
5: iload 4
aload 3
arraylength
if_icmplt 3
end local 4 6: new org.apache.lucene.util.BytesRefArray$1
dup
aload 0
aload 3
aload 1
aload 2
invokespecial org.apache.lucene.util.BytesRefArray$1.<init>:(Lorg/apache/lucene/util/BytesRefArray;[ILjava/util/Comparator;Ljava/util/function/IntBinaryOperator;)V
7: iconst_0
aload 0
invokevirtual org.apache.lucene.util.BytesRefArray.size:()I
invokevirtual org.apache.lucene.util.BytesRefArray$1.sort:(II)V
8: new org.apache.lucene.util.BytesRefArray$SortState
dup
aload 3
invokespecial org.apache.lucene.util.BytesRefArray$SortState.<init>:([I)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/lucene/util/BytesRefArray;
0 9 1 comp Ljava/util/Comparator<Lorg/apache/lucene/util/BytesRef;>;
0 9 2 tieComparator Ljava/util/function/IntBinaryOperator;
1 9 3 orderedEntries [I
2 6 4 i I
Signature: (Ljava/util/Comparator<Lorg/apache/lucene/util/BytesRef;>;Ljava/util/function/IntBinaryOperator;)Lorg/apache/lucene/util/BytesRefArray$SortState;
MethodParameters:
Name Flags
comp final
tieComparator final
public org.apache.lucene.util.BytesRefIterator iterator();
descriptor: ()Lorg/apache/lucene/util/BytesRefIterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
invokevirtual org.apache.lucene.util.BytesRefArray.iterator:(Lorg/apache/lucene/util/BytesRefArray$SortState;)Lorg/apache/lucene/util/BytesRefArray$IndexedBytesRefIterator;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/util/BytesRefArray;
public org.apache.lucene.util.BytesRefIterator iterator(java.util.Comparator<org.apache.lucene.util.BytesRef>);
descriptor: (Ljava/util/Comparator;)Lorg/apache/lucene/util/BytesRefIterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
aload 1
invokedynamic applyAsInt()Ljava/util/function/IntBinaryOperator;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(II)I
org/apache/lucene/util/BytesRefArray.lambda$0(II)I (6)
(II)I
invokevirtual org.apache.lucene.util.BytesRefArray.sort:(Ljava/util/Comparator;Ljava/util/function/IntBinaryOperator;)Lorg/apache/lucene/util/BytesRefArray$SortState;
invokevirtual org.apache.lucene.util.BytesRefArray.iterator:(Lorg/apache/lucene/util/BytesRefArray$SortState;)Lorg/apache/lucene/util/BytesRefArray$IndexedBytesRefIterator;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/util/BytesRefArray;
0 1 1 comp Ljava/util/Comparator<Lorg/apache/lucene/util/BytesRef;>;
Signature: (Ljava/util/Comparator<Lorg/apache/lucene/util/BytesRef;>;)Lorg/apache/lucene/util/BytesRefIterator;
MethodParameters:
Name Flags
comp final
public org.apache.lucene.util.BytesRefArray$IndexedBytesRefIterator iterator(org.apache.lucene.util.BytesRefArray$SortState);
descriptor: (Lorg/apache/lucene/util/BytesRefArray$SortState;)Lorg/apache/lucene/util/BytesRefArray$IndexedBytesRefIterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.lucene.util.BytesRefArray.size:()I
istore 2
start local 2 1: aload 1
ifnonnull 2
aconst_null
goto 3
StackMap locals: int
StackMap stack:
2: aload 1
getfield org.apache.lucene.util.BytesRefArray$SortState.indices:[I
StackMap locals:
StackMap stack: int[]
3: astore 3
start local 3 4: getstatic org.apache.lucene.util.BytesRefArray.$assertionsDisabled:Z
ifne 5
aload 3
ifnull 5
aload 3
arraylength
iload 2
if_icmpeq 5
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
aload 3
arraylength
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " != "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
5: StackMap locals: int[]
StackMap stack:
new org.apache.lucene.util.BytesRefBuilder
dup
invokespecial org.apache.lucene.util.BytesRefBuilder.<init>:()V
astore 4
start local 4 6: new org.apache.lucene.util.BytesRef
dup
invokespecial org.apache.lucene.util.BytesRef.<init>:()V
astore 5
start local 5 7: new org.apache.lucene.util.BytesRefArray$2
dup
aload 0
iload 2
aload 3
aload 4
aload 5
invokespecial org.apache.lucene.util.BytesRefArray$2.<init>:(Lorg/apache/lucene/util/BytesRefArray;I[ILorg/apache/lucene/util/BytesRefBuilder;Lorg/apache/lucene/util/BytesRef;)V
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 8 0 this Lorg/apache/lucene/util/BytesRefArray;
0 8 1 sortState Lorg/apache/lucene/util/BytesRefArray$SortState;
1 8 2 size I
4 8 3 indices [I
6 8 4 spare Lorg/apache/lucene/util/BytesRefBuilder;
7 8 5 result Lorg/apache/lucene/util/BytesRef;
MethodParameters:
Name Flags
sortState final
private static int lambda$0(int, int);
descriptor: (II)I
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 i I
0 1 1 j I
}
SourceFile: "BytesRefArray.java"
NestMembers:
org.apache.lucene.util.BytesRefArray$1 org.apache.lucene.util.BytesRefArray$2 org.apache.lucene.util.BytesRefArray$IndexedBytesRefIterator org.apache.lucene.util.BytesRefArray$SortState
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Allocator = org.apache.lucene.util.ByteBlockPool$Allocator of org.apache.lucene.util.ByteBlockPool
public DirectTrackingAllocator = org.apache.lucene.util.ByteBlockPool$DirectTrackingAllocator of org.apache.lucene.util.ByteBlockPool
org.apache.lucene.util.BytesRefArray$1
org.apache.lucene.util.BytesRefArray$2
public abstract IndexedBytesRefIterator = org.apache.lucene.util.BytesRefArray$IndexedBytesRefIterator of org.apache.lucene.util.BytesRefArray
public final SortState = org.apache.lucene.util.BytesRefArray$SortState of org.apache.lucene.util.BytesRefArray