public final class com.fasterxml.jackson.databind.util.ObjectBuffer
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.fasterxml.jackson.databind.util.ObjectBuffer
super_class: java.lang.Object
{
private static final int SMALL_CHUNK;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 16384
private static final int MAX_CHUNK;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 262144
private com.fasterxml.jackson.databind.util.LinkedNode<java.lang.Object[]> _head;
descriptor: Lcom/fasterxml/jackson/databind/util/LinkedNode;
flags: (0x0002) ACC_PRIVATE
Signature: Lcom/fasterxml/jackson/databind/util/LinkedNode<[Ljava/lang/Object;>;
private com.fasterxml.jackson.databind.util.LinkedNode<java.lang.Object[]> _tail;
descriptor: Lcom/fasterxml/jackson/databind/util/LinkedNode;
flags: (0x0002) ACC_PRIVATE
Signature: Lcom/fasterxml/jackson/databind/util/LinkedNode<[Ljava/lang/Object;>;
private int _size;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.lang.Object[] _freeBuffer;
descriptor: [Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/databind/util/ObjectBuffer;
public java.lang.Object[] resetAndStart();
descriptor: ()[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.fasterxml.jackson.databind.util.ObjectBuffer._reset:()V
1: aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._freeBuffer:[Ljava/lang/Object;
ifnonnull 3
2: aload 0
bipush 12
anewarray java.lang.Object
dup_x1
putfield com.fasterxml.jackson.databind.util.ObjectBuffer._freeBuffer:[Ljava/lang/Object;
areturn
3: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._freeBuffer:[Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/fasterxml/jackson/databind/util/ObjectBuffer;
public java.lang.Object[] resetAndStart(java.lang.Object[], int);
descriptor: ([Ljava/lang/Object;I)[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.fasterxml.jackson.databind.util.ObjectBuffer._reset:()V
1: aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._freeBuffer:[Ljava/lang/Object;
ifnull 2
aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._freeBuffer:[Ljava/lang/Object;
arraylength
iload 2
if_icmpge 3
2: StackMap locals:
StackMap stack:
aload 0
bipush 12
iload 2
invokestatic java.lang.Math.max:(II)I
anewarray java.lang.Object
putfield com.fasterxml.jackson.databind.util.ObjectBuffer._freeBuffer:[Ljava/lang/Object;
3: StackMap locals:
StackMap stack:
aload 1
iconst_0
aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._freeBuffer:[Ljava/lang/Object;
iconst_0
iload 2
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
4: aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._freeBuffer:[Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/fasterxml/jackson/databind/util/ObjectBuffer;
0 5 1 base [Ljava/lang/Object;
0 5 2 count I
MethodParameters:
Name Flags
base
count
public java.lang.Object[] appendCompletedChunk(java.lang.Object[]);
descriptor: ([Ljava/lang/Object;)[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: new com.fasterxml.jackson.databind.util.LinkedNode
dup
aload 1
aconst_null
invokespecial com.fasterxml.jackson.databind.util.LinkedNode.<init>:(Ljava/lang/Object;Lcom/fasterxml/jackson/databind/util/LinkedNode;)V
astore 2
start local 2 1: aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._head:Lcom/fasterxml/jackson/databind/util/LinkedNode;
ifnonnull 4
2: aload 0
aload 0
aload 2
dup_x1
putfield com.fasterxml.jackson.databind.util.ObjectBuffer._tail:Lcom/fasterxml/jackson/databind/util/LinkedNode;
putfield com.fasterxml.jackson.databind.util.ObjectBuffer._head:Lcom/fasterxml/jackson/databind/util/LinkedNode;
3: goto 6
4: StackMap locals: com.fasterxml.jackson.databind.util.LinkedNode
StackMap stack:
aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._tail:Lcom/fasterxml/jackson/databind/util/LinkedNode;
aload 2
invokevirtual com.fasterxml.jackson.databind.util.LinkedNode.linkNext:(Lcom/fasterxml/jackson/databind/util/LinkedNode;)V
5: aload 0
aload 2
putfield com.fasterxml.jackson.databind.util.ObjectBuffer._tail:Lcom/fasterxml/jackson/databind/util/LinkedNode;
6: StackMap locals:
StackMap stack:
aload 1
arraylength
istore 3
start local 3 7: aload 0
dup
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._size:I
iload 3
iadd
putfield com.fasterxml.jackson.databind.util.ObjectBuffer._size:I
8: iload 3
sipush 16384
if_icmpge 11
9: iload 3
iload 3
iadd
istore 3
10: goto 13
StackMap locals: int
StackMap stack:
11: iload 3
ldc 262144
if_icmpge 13
12: iload 3
iload 3
iconst_2
ishr
iadd
istore 3
13: StackMap locals:
StackMap stack:
iload 3
anewarray java.lang.Object
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/fasterxml/jackson/databind/util/ObjectBuffer;
0 14 1 fullChunk [Ljava/lang/Object;
1 14 2 next Lcom/fasterxml/jackson/databind/util/LinkedNode<[Ljava/lang/Object;>;
7 14 3 len I
MethodParameters:
Name Flags
fullChunk
public java.lang.Object[] completeAndClearBuffer(java.lang.Object[], int);
descriptor: ([Ljava/lang/Object;I)[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 2
aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._size:I
iadd
istore 3
start local 3 1: iload 3
anewarray java.lang.Object
astore 4
start local 4 2: aload 0
aload 4
iload 3
aload 1
iload 2
invokevirtual com.fasterxml.jackson.databind.util.ObjectBuffer._copyTo:(Ljava/lang/Object;I[Ljava/lang/Object;I)V
3: aload 0
invokevirtual com.fasterxml.jackson.databind.util.ObjectBuffer._reset:()V
4: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/fasterxml/jackson/databind/util/ObjectBuffer;
0 5 1 lastChunk [Ljava/lang/Object;
0 5 2 lastChunkEntries I
1 5 3 totalSize I
2 5 4 result [Ljava/lang/Object;
MethodParameters:
Name Flags
lastChunk
lastChunkEntries
public <T> T[] completeAndClearBuffer([], int, java.lang.Class<T>);
descriptor: ([Ljava/lang/Object;ILjava/lang/Class;)[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._size:I
iadd
istore 4
start local 4 1: aload 3
iload 4
invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
checkcast java.lang.Object[]
astore 5
start local 5 2: aload 0
aload 5
iload 4
aload 1
iload 2
invokevirtual com.fasterxml.jackson.databind.util.ObjectBuffer._copyTo:(Ljava/lang/Object;I[Ljava/lang/Object;I)V
3: aload 0
invokevirtual com.fasterxml.jackson.databind.util.ObjectBuffer._reset:()V
4: 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 5 0 this Lcom/fasterxml/jackson/databind/util/ObjectBuffer;
0 5 1 lastChunk [Ljava/lang/Object;
0 5 2 lastChunkEntries I
0 5 3 componentType Ljava/lang/Class<TT;>;
1 5 4 totalSize I
2 5 5 result [Ljava/lang/Object;
Signature: <T:Ljava/lang/Object;>([Ljava/lang/Object;ILjava/lang/Class<TT;>;)[TT;
MethodParameters:
Name Flags
lastChunk
lastChunkEntries
componentType
public void completeAndClearBuffer([], int, java.util.List<java.lang.Object>);
descriptor: ([Ljava/lang/Object;ILjava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._head:Lcom/fasterxml/jackson/databind/util/LinkedNode;
astore 4
start local 4 1: goto 10
2: StackMap locals: com.fasterxml.jackson.databind.util.LinkedNode
StackMap stack:
aload 4
invokevirtual com.fasterxml.jackson.databind.util.LinkedNode.value:()Ljava/lang/Object;
checkcast java.lang.Object[]
astore 5
start local 5 3: iconst_0
istore 6
start local 6 4: aload 5
arraylength
istore 7
start local 7 5: goto 8
6: StackMap locals: java.lang.Object[] int int
StackMap stack:
aload 3
aload 5
iload 6
aaload
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
7: iinc 6 1
StackMap locals:
StackMap stack:
8: iload 6
iload 7
if_icmplt 6
end local 7 end local 6 end local 5 9: aload 4
invokevirtual com.fasterxml.jackson.databind.util.LinkedNode.next:()Lcom/fasterxml/jackson/databind/util/LinkedNode;
astore 4
StackMap locals:
StackMap stack:
10: aload 4
ifnonnull 2
end local 4 11: iconst_0
istore 4
start local 4 12: goto 15
13: StackMap locals: com.fasterxml.jackson.databind.util.ObjectBuffer java.lang.Object[] int java.util.List int
StackMap stack:
aload 3
aload 1
iload 4
aaload
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
14: iinc 4 1
StackMap locals:
StackMap stack:
15: iload 4
iload 2
if_icmplt 13
end local 4 16: aload 0
invokevirtual com.fasterxml.jackson.databind.util.ObjectBuffer._reset:()V
17: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/fasterxml/jackson/databind/util/ObjectBuffer;
0 18 1 lastChunk [Ljava/lang/Object;
0 18 2 lastChunkEntries I
0 18 3 resultList Ljava/util/List<Ljava/lang/Object;>;
1 11 4 n Lcom/fasterxml/jackson/databind/util/LinkedNode<[Ljava/lang/Object;>;
3 9 5 curr [Ljava/lang/Object;
4 9 6 i I
5 9 7 len I
12 16 4 i I
Signature: ([Ljava/lang/Object;ILjava/util/List<Ljava/lang/Object;>;)V
MethodParameters:
Name Flags
lastChunk
lastChunkEntries
resultList
public int initialCapacity();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._freeBuffer:[Ljava/lang/Object;
ifnonnull 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._freeBuffer:[Ljava/lang/Object;
arraylength
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/jackson/databind/util/ObjectBuffer;
public int bufferedSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._size:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/databind/util/ObjectBuffer;
protected void _reset();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._tail:Lcom/fasterxml/jackson/databind/util/LinkedNode;
ifnull 2
1: aload 0
aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._tail:Lcom/fasterxml/jackson/databind/util/LinkedNode;
invokevirtual com.fasterxml.jackson.databind.util.LinkedNode.value:()Ljava/lang/Object;
checkcast java.lang.Object[]
putfield com.fasterxml.jackson.databind.util.ObjectBuffer._freeBuffer:[Ljava/lang/Object;
2: StackMap locals:
StackMap stack:
aload 0
aload 0
aconst_null
dup_x1
putfield com.fasterxml.jackson.databind.util.ObjectBuffer._tail:Lcom/fasterxml/jackson/databind/util/LinkedNode;
putfield com.fasterxml.jackson.databind.util.ObjectBuffer._head:Lcom/fasterxml/jackson/databind/util/LinkedNode;
3: aload 0
iconst_0
putfield com.fasterxml.jackson.databind.util.ObjectBuffer._size:I
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/fasterxml/jackson/databind/util/ObjectBuffer;
protected final void _copyTo(java.lang.Object, int, java.lang.Object[], int);
descriptor: (Ljava/lang/Object;I[Ljava/lang/Object;I)V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=5, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iconst_0
istore 5
start local 5 1: aload 0
getfield com.fasterxml.jackson.databind.util.ObjectBuffer._head:Lcom/fasterxml/jackson/databind/util/LinkedNode;
astore 6
start local 6 2: goto 8
3: StackMap locals: int com.fasterxml.jackson.databind.util.LinkedNode
StackMap stack:
aload 6
invokevirtual com.fasterxml.jackson.databind.util.LinkedNode.value:()Ljava/lang/Object;
checkcast java.lang.Object[]
astore 7
start local 7 4: aload 7
arraylength
istore 8
start local 8 5: aload 7
iconst_0
aload 1
iload 5
iload 8
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
6: iload 5
iload 8
iadd
istore 5
end local 8 end local 7 7: aload 6
invokevirtual com.fasterxml.jackson.databind.util.LinkedNode.next:()Lcom/fasterxml/jackson/databind/util/LinkedNode;
astore 6
StackMap locals:
StackMap stack:
8: aload 6
ifnonnull 3
end local 6 9: aload 3
iconst_0
aload 1
iload 5
iload 4
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
10: iload 5
iload 4
iadd
istore 5
11: iload 5
iload 2
if_icmpeq 13
12: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Should have gotten "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " entries, got "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
13: StackMap locals:
StackMap stack:
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 14 0 this Lcom/fasterxml/jackson/databind/util/ObjectBuffer;
0 14 1 resultArray Ljava/lang/Object;
0 14 2 totalSize I
0 14 3 lastChunk [Ljava/lang/Object;
0 14 4 lastChunkEntries I
1 14 5 ptr I
2 9 6 n Lcom/fasterxml/jackson/databind/util/LinkedNode<[Ljava/lang/Object;>;
4 7 7 curr [Ljava/lang/Object;
5 7 8 len I
MethodParameters:
Name Flags
resultArray
totalSize
lastChunk
lastChunkEntries
}
SourceFile: "ObjectBuffer.java"