public final class com.fasterxml.jackson.core.util.ByteArrayBuilder extends java.io.OutputStream
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.fasterxml.jackson.core.util.ByteArrayBuilder
super_class: java.io.OutputStream
{
public static final byte[] NO_BYTES;
descriptor: [B
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private static final int INITIAL_BLOCK_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 500
private static final int MAX_BLOCK_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 131072
static final int DEFAULT_BLOCK_ARRAY_SIZE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 40
private final com.fasterxml.jackson.core.util.BufferRecycler _bufferRecycler;
descriptor: Lcom/fasterxml/jackson/core/util/BufferRecycler;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.LinkedList<byte[]> _pastBlocks;
descriptor: Ljava/util/LinkedList;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/LinkedList<[B>;
private int _pastLen;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private byte[] _currBlock;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
private int _currBlockPtr;
descriptor: I
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: iconst_0
newarray 8
putstatic com.fasterxml.jackson.core.util.ByteArrayBuilder.NO_BYTES:[B
1: 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
aconst_null
invokespecial com.fasterxml.jackson.core.util.ByteArrayBuilder.<init>:(Lcom/fasterxml/jackson/core/util/BufferRecycler;)V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
public void <init>(com.fasterxml.jackson.core.util.BufferRecycler);
descriptor: (Lcom/fasterxml/jackson/core/util/BufferRecycler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
sipush 500
invokespecial com.fasterxml.jackson.core.util.ByteArrayBuilder.<init>:(Lcom/fasterxml/jackson/core/util/BufferRecycler;I)V
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 1 1 br Lcom/fasterxml/jackson/core/util/BufferRecycler;
MethodParameters:
Name Flags
br
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aconst_null
iload 1
invokespecial com.fasterxml.jackson.core.util.ByteArrayBuilder.<init>:(Lcom/fasterxml/jackson/core/util/BufferRecycler;I)V
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 1 1 firstBlockSize I
MethodParameters:
Name Flags
firstBlockSize
public void <init>(com.fasterxml.jackson.core.util.BufferRecycler, int);
descriptor: (Lcom/fasterxml/jackson/core/util/BufferRecycler;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.io.OutputStream.<init>:()V
1: aload 0
new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastBlocks:Ljava/util/LinkedList;
2: aload 0
aload 1
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._bufferRecycler:Lcom/fasterxml/jackson/core/util/BufferRecycler;
3: aload 0
aload 1
ifnonnull 4
iload 2
newarray 8
goto 5
StackMap locals: com.fasterxml.jackson.core.util.ByteArrayBuilder com.fasterxml.jackson.core.util.BufferRecycler int
StackMap stack: com.fasterxml.jackson.core.util.ByteArrayBuilder
4: aload 1
iconst_2
invokevirtual com.fasterxml.jackson.core.util.BufferRecycler.allocByteBuffer:(I)[B
StackMap locals: com.fasterxml.jackson.core.util.ByteArrayBuilder com.fasterxml.jackson.core.util.BufferRecycler int
StackMap stack: com.fasterxml.jackson.core.util.ByteArrayBuilder byte[]
5: putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 7 1 br Lcom/fasterxml/jackson/core/util/BufferRecycler;
0 7 2 firstBlockSize I
MethodParameters:
Name Flags
br
firstBlockSize
private void <init>(com.fasterxml.jackson.core.util.BufferRecycler, byte[], int);
descriptor: (Lcom/fasterxml/jackson/core/util/BufferRecycler;[BI)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.io.OutputStream.<init>:()V
1: aload 0
new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastBlocks:Ljava/util/LinkedList;
2: aload 0
aconst_null
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._bufferRecycler:Lcom/fasterxml/jackson/core/util/BufferRecycler;
3: aload 0
aload 2
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
4: aload 0
iload 3
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 6 1 br Lcom/fasterxml/jackson/core/util/BufferRecycler;
0 6 2 initialBlock [B
0 6 3 initialLen I
MethodParameters:
Name Flags
br
initialBlock
initialLen
public static com.fasterxml.jackson.core.util.ByteArrayBuilder fromInitial(byte[], int);
descriptor: ([BI)Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: new com.fasterxml.jackson.core.util.ByteArrayBuilder
dup
aconst_null
aload 0
iload 1
invokespecial com.fasterxml.jackson.core.util.ByteArrayBuilder.<init>:(Lcom/fasterxml/jackson/core/util/BufferRecycler;[BI)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 initialBlock [B
0 1 1 length I
MethodParameters:
Name Flags
initialBlock
length
public void reset();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastLen:I
1: aload 0
iconst_0
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
2: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastBlocks:Ljava/util/LinkedList;
invokevirtual java.util.LinkedList.isEmpty:()Z
ifne 4
3: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastBlocks:Ljava/util/LinkedList;
invokevirtual java.util.LinkedList.clear:()V
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastLen:I
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iadd
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
public void release();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.reset:()V
1: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._bufferRecycler:Lcom/fasterxml/jackson/core/util/BufferRecycler;
ifnull 4
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
ifnull 4
2: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._bufferRecycler:Lcom/fasterxml/jackson/core/util/BufferRecycler;
iconst_2
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
invokevirtual com.fasterxml.jackson.core.util.BufferRecycler.releaseByteBuffer:(I[B)V
3: aload 0
aconst_null
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
public void append(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
arraylength
if_icmplt 2
1: aload 0
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder._allocMore:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
aload 0
dup
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
dup_x1
iconst_1
iadd
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iload 1
i2b
bastore
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 4 1 i I
MethodParameters:
Name Flags
i
public void appendTwoBytes(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iconst_1
iadd
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
arraylength
if_icmpge 4
1: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
aload 0
dup
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
dup_x1
iconst_1
iadd
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iload 1
bipush 8
ishr
i2b
bastore
2: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
aload 0
dup
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
dup_x1
iconst_1
iadd
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iload 1
i2b
bastore
3: goto 6
4: StackMap locals:
StackMap stack:
aload 0
iload 1
bipush 8
ishr
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.append:(I)V
5: aload 0
iload 1
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.append:(I)V
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 7 1 b16 I
MethodParameters:
Name Flags
b16
public void appendThreeBytes(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iconst_2
iadd
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
arraylength
if_icmpge 5
1: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
aload 0
dup
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
dup_x1
iconst_1
iadd
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iload 1
bipush 16
ishr
i2b
bastore
2: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
aload 0
dup
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
dup_x1
iconst_1
iadd
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iload 1
bipush 8
ishr
i2b
bastore
3: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
aload 0
dup
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
dup_x1
iconst_1
iadd
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iload 1
i2b
bastore
4: goto 8
5: StackMap locals:
StackMap stack:
aload 0
iload 1
bipush 16
ishr
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.append:(I)V
6: aload 0
iload 1
bipush 8
ishr
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.append:(I)V
7: aload 0
iload 1
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.append:(I)V
8: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 9 1 b24 I
MethodParameters:
Name Flags
b24
public void appendFourBytes(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iconst_3
iadd
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
arraylength
if_icmpge 6
1: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
aload 0
dup
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
dup_x1
iconst_1
iadd
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iload 1
bipush 24
ishr
i2b
bastore
2: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
aload 0
dup
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
dup_x1
iconst_1
iadd
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iload 1
bipush 16
ishr
i2b
bastore
3: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
aload 0
dup
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
dup_x1
iconst_1
iadd
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iload 1
bipush 8
ishr
i2b
bastore
4: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
aload 0
dup
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
dup_x1
iconst_1
iadd
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iload 1
i2b
bastore
5: goto 10
6: StackMap locals:
StackMap stack:
aload 0
iload 1
bipush 24
ishr
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.append:(I)V
7: aload 0
iload 1
bipush 16
ishr
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.append:(I)V
8: aload 0
iload 1
bipush 8
ishr
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.append:(I)V
9: aload 0
iload 1
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.append:(I)V
10: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 11 1 b32 I
MethodParameters:
Name Flags
b32
public byte[] toByteArray();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastLen:I
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iadd
istore 1
start local 1 1: iload 1
ifne 3
2: getstatic com.fasterxml.jackson.core.util.ByteArrayBuilder.NO_BYTES:[B
areturn
3: StackMap locals: int
StackMap stack:
iload 1
newarray 8
astore 2
start local 2 4: iconst_0
istore 3
start local 3 5: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastBlocks:Ljava/util/LinkedList;
invokevirtual java.util.LinkedList.iterator:()Ljava/util/Iterator;
astore 5
goto 10
StackMap locals: com.fasterxml.jackson.core.util.ByteArrayBuilder int byte[] int top java.util.Iterator
StackMap stack:
6: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast byte[]
astore 4
start local 4 7: aload 4
arraylength
istore 6
start local 6 8: aload 4
iconst_0
aload 2
iload 3
iload 6
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
9: iload 3
iload 6
iadd
istore 3
end local 6 end local 4 10: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
11: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
iconst_0
aload 2
iload 3
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
12: iload 3
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iadd
istore 3
13: iload 3
iload 1
if_icmpeq 15
14: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "Internal error: total len assumed to be "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", copied "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " bytes"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals: com.fasterxml.jackson.core.util.ByteArrayBuilder int byte[] int
StackMap stack:
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastBlocks:Ljava/util/LinkedList;
invokevirtual java.util.LinkedList.isEmpty:()Z
ifne 17
16: aload 0
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.reset:()V
17: StackMap locals:
StackMap stack:
aload 2
areturn
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/core/util/ByteArrayBuilder;
1 18 1 totalLen I
4 18 2 result [B
5 18 3 offset I
7 10 4 block [B
8 10 6 len I
public byte[] resetAndGetFirstSegment();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.reset:()V
1: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
public byte[] finishCurrentSegment();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder._allocMore:()V
1: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
public byte[] completeAndCoalesce(int);
descriptor: (I)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
1: aload 0
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.toByteArray:()[B
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 2 1 lastBlockLength I
MethodParameters:
Name Flags
lastBlockLength
public byte[] getCurrentSegment();
descriptor: ()[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
public void setCurrentSegmentLength(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 com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 1 1 len I
MethodParameters:
Name Flags
len
public int getCurrentSegmentLength();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
public void write(byte[]);
descriptor: ([B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
aload 1
arraylength
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.write:([BII)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 2 1 b [B
MethodParameters:
Name Flags
b
public void write(byte[], int, int);
descriptor: ([BII)V
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: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
arraylength
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
isub
istore 4
start local 4 1: iload 4
iload 3
invokestatic java.lang.Math.min:(II)I
istore 5
start local 5 2: iload 5
ifle 7
3: aload 1
iload 2
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iload 5
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
4: iload 2
iload 5
iadd
istore 2
5: aload 0
dup
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
iload 5
iadd
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
6: iload 3
iload 5
isub
istore 3
7: StackMap locals: int int
StackMap stack:
iload 3
ifgt 8
goto 10
8: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder._allocMore:()V
end local 5 end local 4 9: goto 0
10: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 11 1 b [B
0 11 2 off I
0 11 3 len I
1 9 4 max I
2 9 5 toCopy I
MethodParameters:
Name Flags
b
off
len
public void write(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
invokevirtual com.fasterxml.jackson.core.util.ByteArrayBuilder.append:(I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
0 2 1 b I
MethodParameters:
Name Flags
b
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
public void flush();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
private void _allocMore();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastLen:I
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
arraylength
iadd
istore 1
start local 1 1: iload 1
ifge 3
2: new java.lang.IllegalStateException
dup
ldc "Maximum Java array size (2GB) exceeded by `ByteArrayBuilder`"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: int
StackMap stack:
aload 0
iload 1
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastLen:I
4: aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastLen:I
iconst_1
ishr
sipush 1000
invokestatic java.lang.Math.max:(II)I
istore 2
start local 2 5: iload 2
ldc 131072
if_icmple 7
6: ldc 131072
istore 2
7: StackMap locals: int
StackMap stack:
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._pastBlocks:Ljava/util/LinkedList;
aload 0
getfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
invokevirtual java.util.LinkedList.add:(Ljava/lang/Object;)Z
pop
8: aload 0
iload 2
newarray 8
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlock:[B
9: aload 0
iconst_0
putfield com.fasterxml.jackson.core.util.ByteArrayBuilder._currBlockPtr:I
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/fasterxml/jackson/core/util/ByteArrayBuilder;
1 11 1 newPastLen I
5 11 2 newSize I
}
SourceFile: "ByteArrayBuilder.java"