final class io.netty.handler.codec.CodecOutputList extends java.util.AbstractList<java.lang.Object> implements java.util.RandomAccess
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: io.netty.handler.codec.CodecOutputList
super_class: java.util.AbstractList
{
private static final io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler NOOP_RECYCLER;
descriptor: Lio/netty/handler/codec/CodecOutputList$CodecOutputListRecycler;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final io.netty.util.concurrent.FastThreadLocal<io.netty.handler.codec.CodecOutputList$CodecOutputLists> CODEC_OUTPUT_LISTS_POOL;
descriptor: Lio/netty/util/concurrent/FastThreadLocal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lio/netty/util/concurrent/FastThreadLocal<Lio/netty/handler/codec/CodecOutputList$CodecOutputLists;>;
private final io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler recycler;
descriptor: Lio/netty/handler/codec/CodecOutputList$CodecOutputListRecycler;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int size;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.lang.Object[] array;
descriptor: [Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
private boolean insertSinceRecycled;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new io.netty.handler.codec.CodecOutputList$1
dup
invokespecial io.netty.handler.codec.CodecOutputList$1.<init>:()V
putstatic io.netty.handler.codec.CodecOutputList.NOOP_RECYCLER:Lio/netty/handler/codec/CodecOutputList$CodecOutputListRecycler;
1: new io.netty.handler.codec.CodecOutputList$2
dup
invokespecial io.netty.handler.codec.CodecOutputList$2.<init>:()V
2: putstatic io.netty.handler.codec.CodecOutputList.CODEC_OUTPUT_LISTS_POOL:Lio/netty/util/concurrent/FastThreadLocal;
3: return
LocalVariableTable:
Start End Slot Name Signature
static io.netty.handler.codec.CodecOutputList newInstance();
descriptor: ()Lio/netty/handler/codec/CodecOutputList;
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic io.netty.handler.codec.CodecOutputList.CODEC_OUTPUT_LISTS_POOL:Lio/netty/util/concurrent/FastThreadLocal;
invokevirtual io.netty.util.concurrent.FastThreadLocal.get:()Ljava/lang/Object;
checkcast io.netty.handler.codec.CodecOutputList$CodecOutputLists
invokevirtual io.netty.handler.codec.CodecOutputList$CodecOutputLists.getOrCreate:()Lio/netty/handler/codec/CodecOutputList;
areturn
LocalVariableTable:
Start End Slot Name Signature
private void <init>(io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler, int);
descriptor: (Lio/netty/handler/codec/CodecOutputList$CodecOutputListRecycler;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.util.AbstractList.<init>:()V
1: aload 0
aload 1
putfield io.netty.handler.codec.CodecOutputList.recycler:Lio/netty/handler/codec/CodecOutputList$CodecOutputListRecycler;
2: aload 0
iload 2
anewarray java.lang.Object
putfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/netty/handler/codec/CodecOutputList;
0 4 1 recycler Lio/netty/handler/codec/CodecOutputList$CodecOutputListRecycler;
0 4 2 size I
MethodParameters:
Name Flags
recycler
size
public java.lang.Object get(int);
descriptor: (I)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual io.netty.handler.codec.CodecOutputList.checkIndex:(I)V
1: aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
iload 1
aaload
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/CodecOutputList;
0 2 1 index I
MethodParameters:
Name Flags
index
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.CodecOutputList.size:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/CodecOutputList;
public boolean add(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "element"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
aload 0
getfield io.netty.handler.codec.CodecOutputList.size:I
aload 1
invokevirtual io.netty.handler.codec.CodecOutputList.insert:(ILjava/lang/Object;)V
2: goto 6
StackMap locals:
StackMap stack: java.lang.IndexOutOfBoundsException
3: pop
4: aload 0
invokevirtual io.netty.handler.codec.CodecOutputList.expandArray:()V
5: aload 0
aload 0
getfield io.netty.handler.codec.CodecOutputList.size:I
aload 1
invokevirtual io.netty.handler.codec.CodecOutputList.insert:(ILjava/lang/Object;)V
6: StackMap locals:
StackMap stack:
aload 0
dup
getfield io.netty.handler.codec.CodecOutputList.size:I
iconst_1
iadd
putfield io.netty.handler.codec.CodecOutputList.size:I
7: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/netty/handler/codec/CodecOutputList;
0 8 1 element Ljava/lang/Object;
Exception table:
from to target type
1 2 3 Class java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
element
public java.lang.Object set(int, java.lang.Object);
descriptor: (ILjava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ldc "element"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
iload 1
invokevirtual io.netty.handler.codec.CodecOutputList.checkIndex:(I)V
2: aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
iload 1
aaload
astore 3
start local 3 3: aload 0
iload 1
aload 2
invokevirtual io.netty.handler.codec.CodecOutputList.insert:(ILjava/lang/Object;)V
4: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/netty/handler/codec/CodecOutputList;
0 5 1 index I
0 5 2 element Ljava/lang/Object;
3 5 3 old Ljava/lang/Object;
MethodParameters:
Name Flags
index
element
public void add(int, java.lang.Object);
descriptor: (ILjava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ldc "element"
invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
iload 1
invokevirtual io.netty.handler.codec.CodecOutputList.checkIndex:(I)V
2: aload 0
getfield io.netty.handler.codec.CodecOutputList.size:I
aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
arraylength
if_icmpne 4
3: aload 0
invokevirtual io.netty.handler.codec.CodecOutputList.expandArray:()V
4: StackMap locals:
StackMap stack:
iload 1
aload 0
getfield io.netty.handler.codec.CodecOutputList.size:I
iconst_1
isub
if_icmpeq 6
5: aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
iload 1
aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
iload 1
iconst_1
iadd
aload 0
getfield io.netty.handler.codec.CodecOutputList.size:I
iload 1
isub
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
6: StackMap locals:
StackMap stack:
aload 0
iload 1
aload 2
invokevirtual io.netty.handler.codec.CodecOutputList.insert:(ILjava/lang/Object;)V
7: aload 0
dup
getfield io.netty.handler.codec.CodecOutputList.size:I
iconst_1
iadd
putfield io.netty.handler.codec.CodecOutputList.size:I
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/netty/handler/codec/CodecOutputList;
0 9 1 index I
0 9 2 element Ljava/lang/Object;
MethodParameters:
Name Flags
index
element
public java.lang.Object remove(int);
descriptor: (I)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual io.netty.handler.codec.CodecOutputList.checkIndex:(I)V
1: aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
iload 1
aaload
astore 2
start local 2 2: aload 0
getfield io.netty.handler.codec.CodecOutputList.size:I
iload 1
isub
iconst_1
isub
istore 3
start local 3 3: iload 3
ifle 5
4: aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
iload 1
iconst_1
iadd
aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
iload 1
iload 3
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
5: StackMap locals: java.lang.Object int
StackMap stack:
aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
aload 0
dup
getfield io.netty.handler.codec.CodecOutputList.size:I
iconst_1
isub
dup_x1
putfield io.netty.handler.codec.CodecOutputList.size:I
aconst_null
aastore
6: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/netty/handler/codec/CodecOutputList;
0 7 1 index I
2 7 2 old Ljava/lang/Object;
3 7 3 len I
MethodParameters:
Name Flags
index
public void clear();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield io.netty.handler.codec.CodecOutputList.size:I
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/netty/handler/codec/CodecOutputList;
boolean insertSinceRecycled();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.CodecOutputList.insertSinceRecycled:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/CodecOutputList;
void recycle();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
iload 1
aconst_null
aastore
3: iinc 1 1
StackMap locals:
StackMap stack:
4: iload 1
aload 0
getfield io.netty.handler.codec.CodecOutputList.size:I
if_icmplt 2
end local 1 5: aload 0
iconst_0
putfield io.netty.handler.codec.CodecOutputList.size:I
6: aload 0
iconst_0
putfield io.netty.handler.codec.CodecOutputList.insertSinceRecycled:Z
7: aload 0
getfield io.netty.handler.codec.CodecOutputList.recycler:Lio/netty/handler/codec/CodecOutputList$CodecOutputListRecycler;
aload 0
invokeinterface io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler.recycle:(Lio/netty/handler/codec/CodecOutputList;)V
8: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/netty/handler/codec/CodecOutputList;
1 5 1 i I
java.lang.Object getUnsafe(int);
descriptor: (I)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
iload 1
aaload
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/CodecOutputList;
0 1 1 index I
MethodParameters:
Name Flags
index
private void checkIndex(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
aload 0
getfield io.netty.handler.codec.CodecOutputList.size:I
if_icmplt 2
1: new java.lang.IndexOutOfBoundsException
dup
invokespecial java.lang.IndexOutOfBoundsException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/netty/handler/codec/CodecOutputList;
0 3 1 index I
MethodParameters:
Name Flags
index
private void insert(int, java.lang.Object);
descriptor: (ILjava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
iload 1
aload 2
aastore
1: aload 0
iconst_1
putfield io.netty.handler.codec.CodecOutputList.insertSinceRecycled:Z
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/netty/handler/codec/CodecOutputList;
0 3 1 index I
0 3 2 element Ljava/lang/Object;
MethodParameters:
Name Flags
index
element
private void expandArray();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
arraylength
iconst_1
ishl
istore 1
start local 1 1: iload 1
ifge 3
2: new java.lang.OutOfMemoryError
dup
invokespecial java.lang.OutOfMemoryError.<init>:()V
athrow
3: StackMap locals: int
StackMap stack:
iload 1
anewarray java.lang.Object
astore 2
start local 2 4: aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
iconst_0
aload 2
iconst_0
aload 0
getfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
5: aload 0
aload 2
putfield io.netty.handler.codec.CodecOutputList.array:[Ljava/lang/Object;
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/netty/handler/codec/CodecOutputList;
1 7 1 newCapacity I
4 7 2 newArray [Ljava/lang/Object;
}
Signature: Ljava/util/AbstractList<Ljava/lang/Object;>;Ljava/util/RandomAccess;
SourceFile: "CodecOutputList.java"
NestMembers:
io.netty.handler.codec.CodecOutputList$1 io.netty.handler.codec.CodecOutputList$2 io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler io.netty.handler.codec.CodecOutputList$CodecOutputLists
InnerClasses:
io.netty.handler.codec.CodecOutputList$1
io.netty.handler.codec.CodecOutputList$2
private abstract CodecOutputListRecycler = io.netty.handler.codec.CodecOutputList$CodecOutputListRecycler of io.netty.handler.codec.CodecOutputList
private final CodecOutputLists = io.netty.handler.codec.CodecOutputList$CodecOutputLists of io.netty.handler.codec.CodecOutputList