public class org.springframework.util.AutoPopulatingList<E> implements java.util.List<E>, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.util.AutoPopulatingList
super_class: java.lang.Object
{
private final java.util.List<E> backingList;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<TE;>;
private final org.springframework.util.AutoPopulatingList$ElementFactory<E> elementFactory;
descriptor: Lorg/springframework/util/AutoPopulatingList$ElementFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/springframework/util/AutoPopulatingList$ElementFactory<TE;>;
public void <init>(java.lang.Class<? extends E>);
descriptor: (Ljava/lang/Class;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
aload 1
invokespecial org.springframework.util.AutoPopulatingList.<init>:(Ljava/util/List;Ljava/lang/Class;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 2 1 elementClass Ljava/lang/Class<+TE;>;
Signature: (Ljava/lang/Class<+TE;>;)V
MethodParameters:
Name Flags
elementClass
public void <init>(java.util.List<E>, java.lang.Class<? extends E>);
descriptor: (Ljava/util/List;Ljava/lang/Class;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
new org.springframework.util.AutoPopulatingList$ReflectiveElementFactory
dup
aload 2
invokespecial org.springframework.util.AutoPopulatingList$ReflectiveElementFactory.<init>:(Ljava/lang/Class;)V
invokespecial org.springframework.util.AutoPopulatingList.<init>:(Ljava/util/List;Lorg/springframework/util/AutoPopulatingList$ElementFactory;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 2 1 backingList Ljava/util/List<TE;>;
0 2 2 elementClass Ljava/lang/Class<+TE;>;
Signature: (Ljava/util/List<TE;>;Ljava/lang/Class<+TE;>;)V
MethodParameters:
Name Flags
backingList
elementClass
public void <init>(org.springframework.util.AutoPopulatingList$ElementFactory<E>);
descriptor: (Lorg/springframework/util/AutoPopulatingList$ElementFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
aload 1
invokespecial org.springframework.util.AutoPopulatingList.<init>:(Ljava/util/List;Lorg/springframework/util/AutoPopulatingList$ElementFactory;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 2 1 elementFactory Lorg/springframework/util/AutoPopulatingList$ElementFactory<TE;>;
Signature: (Lorg/springframework/util/AutoPopulatingList$ElementFactory<TE;>;)V
MethodParameters:
Name Flags
elementFactory
public void <init>(java.util.List<E>, org.springframework.util.AutoPopulatingList$ElementFactory<E>);
descriptor: (Ljava/util/List;Lorg/springframework/util/AutoPopulatingList$ElementFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 1
ldc "Backing List must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
2: aload 2
ldc "Element factory must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
3: aload 0
aload 1
putfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
4: aload 0
aload 2
putfield org.springframework.util.AutoPopulatingList.elementFactory:Lorg/springframework/util/AutoPopulatingList$ElementFactory;
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 6 1 backingList Ljava/util/List<TE;>;
0 6 2 elementFactory Lorg/springframework/util/AutoPopulatingList$ElementFactory<TE;>;
Signature: (Ljava/util/List<TE;>;Lorg/springframework/util/AutoPopulatingList$ElementFactory<TE;>;)V
MethodParameters:
Name Flags
backingList
elementFactory
public void add(int, );
descriptor: (ILjava/lang/Object;)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
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
iload 1
aload 2
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 2 1 index I
0 2 2 element TE;
Signature: (ITE;)V
MethodParameters:
Name Flags
index
element
public boolean add();
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 o TE;
Signature: (TE;)Z
MethodParameters:
Name Flags
o
public boolean addAll(java.util.Collection<? extends E>);
descriptor: (Ljava/util/Collection;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aload 1
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 c Ljava/util/Collection<+TE;>;
Signature: (Ljava/util/Collection<+TE;>;)Z
MethodParameters:
Name Flags
c
public boolean addAll(int, java.util.Collection<? extends E>);
descriptor: (ILjava/util/Collection;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
iload 1
aload 2
invokeinterface java.util.List.addAll:(ILjava/util/Collection;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 index I
0 1 2 c Ljava/util/Collection<+TE;>;
Signature: (ILjava/util/Collection<+TE;>;)Z
MethodParameters:
Name Flags
index
c
public void clear();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
invokeinterface java.util.List.clear:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
public boolean contains(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aload 1
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 o Ljava/lang/Object;
MethodParameters:
Name Flags
o
public boolean containsAll(java.util.Collection<?>);
descriptor: (Ljava/util/Collection;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aload 1
invokeinterface java.util.List.containsAll:(Ljava/util/Collection;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 c Ljava/util/Collection<*>;
Signature: (Ljava/util/Collection<*>;)Z
MethodParameters:
Name Flags
c
public E get();
descriptor: (I)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
invokeinterface java.util.List.size:()I
istore 2
start local 2 1: aconst_null
astore 3
start local 3 2: iload 1
iload 2
if_icmpge 8
3: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
iload 1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
astore 3
4: aload 3
ifnonnull 15
5: aload 0
getfield org.springframework.util.AutoPopulatingList.elementFactory:Lorg/springframework/util/AutoPopulatingList$ElementFactory;
iload 1
invokeinterface org.springframework.util.AutoPopulatingList$ElementFactory.createElement:(I)Ljava/lang/Object;
astore 3
6: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
iload 1
aload 3
invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
pop
7: goto 15
8: StackMap locals: int java.lang.Object
StackMap stack:
iload 2
istore 4
start local 4 9: goto 12
10: StackMap locals: int
StackMap stack:
aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aconst_null
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
11: iinc 4 1
StackMap locals:
StackMap stack:
12: iload 4
iload 1
if_icmplt 10
end local 4 13: aload 0
getfield org.springframework.util.AutoPopulatingList.elementFactory:Lorg/springframework/util/AutoPopulatingList$ElementFactory;
iload 1
invokeinterface org.springframework.util.AutoPopulatingList$ElementFactory.createElement:(I)Ljava/lang/Object;
astore 3
14: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aload 3
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
15: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 16 1 index I
1 16 2 backingListSize I
2 16 3 element TE;
9 13 4 x I
Signature: (I)TE;
MethodParameters:
Name Flags
index
public int indexOf(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aload 1
invokeinterface java.util.List.indexOf:(Ljava/lang/Object;)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 o Ljava/lang/Object;
MethodParameters:
Name Flags
o
public boolean isEmpty();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
public java.util.Iterator<E> iterator();
descriptor: ()Ljava/util/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
Signature: ()Ljava/util/Iterator<TE;>;
public int lastIndexOf(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aload 1
invokeinterface java.util.List.lastIndexOf:(Ljava/lang/Object;)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 o Ljava/lang/Object;
MethodParameters:
Name Flags
o
public java.util.ListIterator<E> listIterator();
descriptor: ()Ljava/util/ListIterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
Signature: ()Ljava/util/ListIterator<TE;>;
public java.util.ListIterator<E> listIterator(int);
descriptor: (I)Ljava/util/ListIterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
iload 1
invokeinterface java.util.List.listIterator:(I)Ljava/util/ListIterator;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 index I
Signature: (I)Ljava/util/ListIterator<TE;>;
MethodParameters:
Name Flags
index
public E remove();
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
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
iload 1
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 index I
Signature: (I)TE;
MethodParameters:
Name Flags
index
public boolean remove(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aload 1
invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 o Ljava/lang/Object;
MethodParameters:
Name Flags
o
public boolean removeAll(java.util.Collection<?>);
descriptor: (Ljava/util/Collection;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aload 1
invokeinterface java.util.List.removeAll:(Ljava/util/Collection;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 c Ljava/util/Collection<*>;
Signature: (Ljava/util/Collection<*>;)Z
MethodParameters:
Name Flags
c
public boolean retainAll(java.util.Collection<?>);
descriptor: (Ljava/util/Collection;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aload 1
invokeinterface java.util.List.retainAll:(Ljava/util/Collection;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 c Ljava/util/Collection<*>;
Signature: (Ljava/util/Collection<*>;)Z
MethodParameters:
Name Flags
c
public E set(int, );
descriptor: (ILjava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
iload 1
aload 2
invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 index I
0 1 2 element TE;
Signature: (ITE;)TE;
MethodParameters:
Name Flags
index
element
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.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
invokeinterface java.util.List.size:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
public java.util.List<E> subList(int, int);
descriptor: (II)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
iload 1
iload 2
invokeinterface java.util.List.subList:(II)Ljava/util/List;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 fromIndex I
0 1 2 toIndex I
Signature: (II)Ljava/util/List<TE;>;
MethodParameters:
Name Flags
fromIndex
toIndex
public java.lang.Object[] toArray();
descriptor: ()[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
invokeinterface java.util.List.toArray:()[Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
public <T> T[] toArray();
descriptor: ([Ljava/lang/Object;)[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aload 1
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 a [Ljava/lang/Object;
Signature: <T:Ljava/lang/Object;>([TT;)[TT;
MethodParameters:
Name Flags
a
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
aload 1
invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
0 1 1 other Ljava/lang/Object;
MethodParameters:
Name Flags
other
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.util.AutoPopulatingList.backingList:Ljava/util/List;
invokeinterface java.util.List.hashCode:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/util/AutoPopulatingList<TE;>;
}
Signature: <E:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/List<TE;>;Ljava/io/Serializable;
SourceFile: "AutoPopulatingList.java"
NestMembers:
org.springframework.util.AutoPopulatingList$ElementFactory org.springframework.util.AutoPopulatingList$ElementInstantiationException org.springframework.util.AutoPopulatingList$ReflectiveElementFactory
InnerClasses:
public abstract ElementFactory = org.springframework.util.AutoPopulatingList$ElementFactory of org.springframework.util.AutoPopulatingList
public ElementInstantiationException = org.springframework.util.AutoPopulatingList$ElementInstantiationException of org.springframework.util.AutoPopulatingList
private ReflectiveElementFactory = org.springframework.util.AutoPopulatingList$ReflectiveElementFactory of org.springframework.util.AutoPopulatingList