public class org.yaml.snakeyaml.constructor.Constructor$ConstructSequence implements org.yaml.snakeyaml.constructor.Construct
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.yaml.snakeyaml.constructor.Constructor$ConstructSequence
super_class: java.lang.Object
{
final org.yaml.snakeyaml.constructor.Constructor this$0;
descriptor: Lorg/yaml/snakeyaml/constructor/Constructor;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
protected void <init>(org.yaml.snakeyaml.constructor.Constructor);
descriptor: (Lorg/yaml/snakeyaml/constructor/Constructor;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield org.yaml.snakeyaml.constructor.Constructor$ConstructSequence.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/yaml/snakeyaml/constructor/Constructor$ConstructSequence;
MethodParameters:
Name Flags
this$0 final
public java.lang.Object construct(org.yaml.snakeyaml.nodes.Node);
descriptor: (Lorg/yaml/snakeyaml/nodes/Node;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=12, args_size=2
start local 0 start local 1 0: aload 1
checkcast org.yaml.snakeyaml.nodes.SequenceNode
astore 2
start local 2 1: ldc Ljava/util/Set;
aload 1
invokevirtual org.yaml.snakeyaml.nodes.Node.getType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 5
2: aload 1
invokevirtual org.yaml.snakeyaml.nodes.Node.isTwoStepsConstruction:()Z
ifeq 4
3: new org.yaml.snakeyaml.error.YAMLException
dup
ldc "Set cannot be recursive."
invokespecial org.yaml.snakeyaml.error.YAMLException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: org.yaml.snakeyaml.nodes.SequenceNode
StackMap stack:
aload 0
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructSequence.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 2
invokevirtual org.yaml.snakeyaml.constructor.Constructor.constructSet:(Lorg/yaml/snakeyaml/nodes/SequenceNode;)Ljava/util/Set;
areturn
5: StackMap locals:
StackMap stack:
ldc Ljava/util/Collection;
aload 1
invokevirtual org.yaml.snakeyaml.nodes.Node.getType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 9
6: aload 1
invokevirtual org.yaml.snakeyaml.nodes.Node.isTwoStepsConstruction:()Z
ifeq 8
7: aload 0
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructSequence.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 2
invokevirtual org.yaml.snakeyaml.constructor.Constructor.newList:(Lorg/yaml/snakeyaml/nodes/SequenceNode;)Ljava/util/List;
areturn
8: StackMap locals:
StackMap stack:
aload 0
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructSequence.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 2
invokevirtual org.yaml.snakeyaml.constructor.Constructor.constructSequence:(Lorg/yaml/snakeyaml/nodes/SequenceNode;)Ljava/util/List;
areturn
9: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.yaml.snakeyaml.nodes.Node.getType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isArray:()Z
ifeq 13
10: aload 1
invokevirtual org.yaml.snakeyaml.nodes.Node.isTwoStepsConstruction:()Z
ifeq 12
11: aload 0
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructSequence.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 1
invokevirtual org.yaml.snakeyaml.nodes.Node.getType:()Ljava/lang/Class;
aload 2
invokevirtual org.yaml.snakeyaml.nodes.SequenceNode.getValue:()Ljava/util/List;
invokeinterface java.util.List.size:()I
invokevirtual org.yaml.snakeyaml.constructor.Constructor.createArray:(Ljava/lang/Class;I)Ljava/lang/Object;
areturn
12: StackMap locals:
StackMap stack:
aload 0
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructSequence.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 2
invokevirtual org.yaml.snakeyaml.constructor.Constructor.constructArray:(Lorg/yaml/snakeyaml/nodes/SequenceNode;)Ljava/lang/Object;
areturn
13: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
14: aload 2
invokevirtual org.yaml.snakeyaml.nodes.SequenceNode.getValue:()Ljava/util/List;
invokeinterface java.util.List.size:()I
15: invokespecial java.util.ArrayList.<init>:(I)V
astore 3
start local 3 16: aload 1
invokevirtual org.yaml.snakeyaml.nodes.Node.getType:()Ljava/lang/Class;
17: invokevirtual java.lang.Class.getDeclaredConstructors:()[Ljava/lang/reflect/Constructor;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 22
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructSequence org.yaml.snakeyaml.nodes.Node org.yaml.snakeyaml.nodes.SequenceNode java.util.List top int int java.lang.reflect.Constructor[]
StackMap stack:
18: aload 7
iload 5
aaload
astore 4
start local 4 19: aload 2
invokevirtual org.yaml.snakeyaml.nodes.SequenceNode.getValue:()Ljava/util/List;
invokeinterface java.util.List.size:()I
aload 4
invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
arraylength
if_icmpne 21
20: aload 3
aload 4
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 4 21: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
22: iload 5
iload 6
if_icmplt 18
23: aload 3
invokeinterface java.util.List.isEmpty:()Z
ifne 65
24: aload 3
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 39
25: aload 2
invokevirtual org.yaml.snakeyaml.nodes.SequenceNode.getValue:()Ljava/util/List;
invokeinterface java.util.List.size:()I
anewarray java.lang.Object
astore 4
start local 4 26: aload 3
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.reflect.Constructor
astore 5
start local 5 27: iconst_0
istore 6
start local 6 28: aload 2
invokevirtual org.yaml.snakeyaml.nodes.SequenceNode.getValue:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 33
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructSequence org.yaml.snakeyaml.nodes.Node org.yaml.snakeyaml.nodes.SequenceNode java.util.List java.lang.Object[] java.lang.reflect.Constructor int top java.util.Iterator
StackMap stack:
29: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.yaml.snakeyaml.nodes.Node
astore 7
start local 7 30: aload 5
invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
iload 6
aaload
astore 9
start local 9 31: aload 7
aload 9
invokevirtual org.yaml.snakeyaml.nodes.Node.setType:(Ljava/lang/Class;)V
32: aload 4
iload 6
iinc 6 1
aload 0
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructSequence.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 7
invokevirtual org.yaml.snakeyaml.constructor.Constructor.constructObject:(Lorg/yaml/snakeyaml/nodes/Node;)Ljava/lang/Object;
aastore
end local 9 end local 7 33: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 29
34: aload 5
iconst_1
invokevirtual java.lang.reflect.Constructor.setAccessible:(Z)V
35: aload 5
aload 4
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
36: areturn
37: StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructSequence org.yaml.snakeyaml.nodes.Node org.yaml.snakeyaml.nodes.SequenceNode java.util.List java.lang.Object[] java.lang.reflect.Constructor int
StackMap stack: java.lang.Exception
astore 7
start local 7 38: new org.yaml.snakeyaml.error.YAMLException
dup
aload 7
invokespecial org.yaml.snakeyaml.error.YAMLException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 7 end local 6 end local 5 end local 4 39: StackMap locals:
StackMap stack:
aload 0
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructSequence.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 2
invokevirtual org.yaml.snakeyaml.constructor.Constructor.constructSequence:(Lorg/yaml/snakeyaml/nodes/SequenceNode;)Ljava/util/List;
astore 4
start local 4 40: aload 4
invokeinterface java.util.List.size:()I
anewarray java.lang.Class
astore 5
start local 5 41: iconst_0
istore 6
start local 6 42: aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 46
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructSequence org.yaml.snakeyaml.nodes.Node org.yaml.snakeyaml.nodes.SequenceNode java.util.List java.util.List java.lang.Class[] int top java.util.Iterator
StackMap stack:
43: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
astore 7
start local 7 44: aload 5
iload 6
aload 7
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aastore
45: iinc 6 1
end local 7 46: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 43
47: aload 3
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 64
StackMap locals:
StackMap stack:
48: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.reflect.Constructor
astore 7
start local 7 49: aload 7
invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
astore 9
start local 9 50: iconst_1
istore 10
start local 10 51: iconst_0
istore 11
start local 11 52: goto 57
53: StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructSequence org.yaml.snakeyaml.nodes.Node org.yaml.snakeyaml.nodes.SequenceNode java.util.List java.util.List java.lang.Class[] int java.lang.reflect.Constructor java.util.Iterator java.lang.Class[] int int
StackMap stack:
aload 0
aload 9
iload 11
aaload
invokevirtual org.yaml.snakeyaml.constructor.Constructor$ConstructSequence.wrapIfPrimitive:(Ljava/lang/Class;)Ljava/lang/Class;
aload 5
iload 11
aaload
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 56
54: iconst_0
istore 10
55: goto 58
56: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
57: iload 11
aload 9
arraylength
if_icmplt 53
end local 11 58: StackMap locals:
StackMap stack:
iload 10
ifeq 64
59: aload 7
iconst_1
invokevirtual java.lang.reflect.Constructor.setAccessible:(Z)V
60: aload 7
aload 4
invokeinterface java.util.List.toArray:()[Ljava/lang/Object;
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
61: areturn
62: StackMap locals:
StackMap stack: java.lang.Exception
astore 11
start local 11 63: new org.yaml.snakeyaml.error.YAMLException
dup
aload 11
invokespecial org.yaml.snakeyaml.error.YAMLException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 11 end local 10 end local 9 end local 7 64: StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructSequence org.yaml.snakeyaml.nodes.Node org.yaml.snakeyaml.nodes.SequenceNode java.util.List java.util.List java.lang.Class[] int top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 48
end local 6 end local 5 end local 4 65: StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructSequence org.yaml.snakeyaml.nodes.Node org.yaml.snakeyaml.nodes.SequenceNode java.util.List
StackMap stack:
new org.yaml.snakeyaml.error.YAMLException
dup
66: new java.lang.StringBuilder
dup
ldc "No suitable constructor with "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual org.yaml.snakeyaml.nodes.SequenceNode.getValue:()Ljava/util/List;
invokeinterface java.util.List.size:()I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
67: ldc " arguments found for "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual org.yaml.snakeyaml.nodes.Node.getType:()Ljava/lang/Class;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
68: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
69: invokespecial org.yaml.snakeyaml.error.YAMLException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 70 0 this Lorg/yaml/snakeyaml/constructor/Constructor$ConstructSequence;
0 70 1 node Lorg/yaml/snakeyaml/nodes/Node;
1 70 2 snode Lorg/yaml/snakeyaml/nodes/SequenceNode;
16 70 3 possibleConstructors Ljava/util/List<Ljava/lang/reflect/Constructor<*>;>;
19 21 4 constructor Ljava/lang/reflect/Constructor<*>;
26 39 4 argumentList [Ljava/lang/Object;
27 39 5 c Ljava/lang/reflect/Constructor<*>;
28 39 6 index I
30 33 7 argumentNode Lorg/yaml/snakeyaml/nodes/Node;
31 33 9 type Ljava/lang/Class<*>;
38 39 7 e Ljava/lang/Exception;
40 65 4 argumentList Ljava/util/List<Ljava/lang/Object;>;
41 65 5 parameterTypes [Ljava/lang/Class;
42 65 6 index I
44 46 7 parameter Ljava/lang/Object;
49 64 7 c Ljava/lang/reflect/Constructor<*>;
50 64 9 argTypes [Ljava/lang/Class;
51 64 10 foundConstructor Z
52 58 11 i I
63 64 11 e Ljava/lang/Exception;
Exception table:
from to target type
34 36 37 Class java.lang.Exception
59 61 62 Class java.lang.Exception
MethodParameters:
Name Flags
node
private final java.lang.Class<? extends java.lang.Object> wrapIfPrimitive(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Class;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.Class.isPrimitive:()Z
ifne 2
1: aload 1
areturn
2: StackMap locals:
StackMap stack:
aload 1
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
if_acmpne 4
3: ldc Ljava/lang/Integer;
areturn
4: StackMap locals:
StackMap stack:
aload 1
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
if_acmpne 6
5: ldc Ljava/lang/Float;
areturn
6: StackMap locals:
StackMap stack:
aload 1
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
if_acmpne 8
7: ldc Ljava/lang/Double;
areturn
8: StackMap locals:
StackMap stack:
aload 1
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
if_acmpne 10
9: ldc Ljava/lang/Boolean;
areturn
10: StackMap locals:
StackMap stack:
aload 1
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
if_acmpne 12
11: ldc Ljava/lang/Long;
areturn
12: StackMap locals:
StackMap stack:
aload 1
getstatic java.lang.Character.TYPE:Ljava/lang/Class;
if_acmpne 14
13: ldc Ljava/lang/Character;
areturn
14: StackMap locals:
StackMap stack:
aload 1
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
if_acmpne 16
15: ldc Ljava/lang/Short;
areturn
16: StackMap locals:
StackMap stack:
aload 1
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
if_acmpne 18
17: ldc Ljava/lang/Byte;
areturn
18: StackMap locals:
StackMap stack:
new org.yaml.snakeyaml.error.YAMLException
dup
new java.lang.StringBuilder
dup
ldc "Unexpected primitive "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.yaml.snakeyaml.error.YAMLException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/yaml/snakeyaml/constructor/Constructor$ConstructSequence;
0 19 1 clazz Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)Ljava/lang/Class<+Ljava/lang/Object;>;
MethodParameters:
Name Flags
clazz
public void construct2ndStep(org.yaml.snakeyaml.nodes.Node, java.lang.Object);
descriptor: (Lorg/yaml/snakeyaml/nodes/Node;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast org.yaml.snakeyaml.nodes.SequenceNode
astore 3
start local 3 1: ldc Ljava/util/List;
aload 1
invokevirtual org.yaml.snakeyaml.nodes.Node.getType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 5
2: aload 2
checkcast java.util.List
astore 4
start local 4 3: aload 0
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructSequence.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 3
aload 4
invokevirtual org.yaml.snakeyaml.constructor.Constructor.constructSequenceStep2:(Lorg/yaml/snakeyaml/nodes/SequenceNode;Ljava/util/Collection;)V
end local 4 4: goto 9
StackMap locals: org.yaml.snakeyaml.nodes.SequenceNode
StackMap stack:
5: aload 1
invokevirtual org.yaml.snakeyaml.nodes.Node.getType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isArray:()Z
ifeq 8
6: aload 0
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructSequence.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 3
aload 2
invokevirtual org.yaml.snakeyaml.constructor.Constructor.constructArrayStep2:(Lorg/yaml/snakeyaml/nodes/SequenceNode;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: goto 9
8: StackMap locals:
StackMap stack:
new org.yaml.snakeyaml.error.YAMLException
dup
ldc "Immutable objects cannot be recursive."
invokespecial org.yaml.snakeyaml.error.YAMLException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/yaml/snakeyaml/constructor/Constructor$ConstructSequence;
0 10 1 node Lorg/yaml/snakeyaml/nodes/Node;
0 10 2 object Ljava/lang/Object;
1 10 3 snode Lorg/yaml/snakeyaml/nodes/SequenceNode;
3 4 4 list Ljava/util/List<Ljava/lang/Object;>;
MethodParameters:
Name Flags
node
object
}
SourceFile: "Constructor.java"
NestHost: org.yaml.snakeyaml.constructor.Constructor
InnerClasses:
protected ConstructSequence = org.yaml.snakeyaml.constructor.Constructor$ConstructSequence of org.yaml.snakeyaml.constructor.Constructor