public class org.yaml.snakeyaml.constructor.Constructor$ConstructScalar extends org.yaml.snakeyaml.constructor.AbstractConstruct
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.yaml.snakeyaml.constructor.Constructor$ConstructScalar
super_class: org.yaml.snakeyaml.constructor.AbstractConstruct
{
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 // org.yaml.snakeyaml.constructor.Constructor$ConstructScalar this
0: .line 356
aload 0 /* this */
aload 1
putfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 0 /* this */
invokespecial org.yaml.snakeyaml.constructor.AbstractConstruct.<init>:()V
return
end local 0 // org.yaml.snakeyaml.constructor.Constructor$ConstructScalar this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/yaml/snakeyaml/constructor/Constructor$ConstructScalar;
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=7, locals=12, args_size=2
start local 0 // org.yaml.snakeyaml.constructor.Constructor$ConstructScalar this
start local 1 // org.yaml.snakeyaml.nodes.Node nnode
0: .line 358
aload 1 /* nnode */
checkcast org.yaml.snakeyaml.nodes.ScalarNode
astore 2 /* node */
start local 2 // org.yaml.snakeyaml.nodes.ScalarNode node
1: .line 359
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.nodes.ScalarNode.getType:()Ljava/lang/Class;
astore 3 /* type */
start local 3 // java.lang.Class type
2: .line 362
aload 0 /* this */
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 3 /* type */
aload 2 /* node */
iconst_0
invokevirtual org.yaml.snakeyaml.constructor.Constructor.newInstance:(Ljava/lang/Class;Lorg/yaml/snakeyaml/nodes/Node;Z)Ljava/lang/Object;
3: areturn
4: .line 363
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructScalar org.yaml.snakeyaml.nodes.Node org.yaml.snakeyaml.nodes.ScalarNode java.lang.Class
StackMap stack: java.lang.InstantiationException
pop
5: .line 367
aload 3 /* type */
invokevirtual java.lang.Class.isPrimitive:()Z
ifne 11
aload 3 /* type */
ldc Ljava/lang/String;
if_acmpeq 11
ldc Ljava/lang/Number;
aload 3 /* type */
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 11
6: .line 368
aload 3 /* type */
ldc Ljava/lang/Boolean;
if_acmpeq 11
ldc Ljava/util/Date;
aload 3 /* type */
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 11
7: .line 369
aload 3 /* type */
ldc Ljava/lang/Character;
if_acmpeq 11
aload 3 /* type */
ldc Ljava/math/BigInteger;
if_acmpeq 11
8: .line 370
aload 3 /* type */
ldc Ljava/math/BigDecimal;
if_acmpeq 11
ldc Ljava/lang/Enum;
aload 3 /* type */
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 11
9: .line 371
getstatic org.yaml.snakeyaml.nodes.Tag.BINARY:Lorg/yaml/snakeyaml/nodes/Tag;
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.nodes.ScalarNode.getTag:()Lorg/yaml/snakeyaml/nodes/Tag;
invokevirtual org.yaml.snakeyaml.nodes.Tag.equals:(Ljava/lang/Object;)Z
ifne 11
ldc Ljava/util/Calendar;
aload 3 /* type */
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 11
10: .line 372
aload 3 /* type */
ldc Ljava/util/UUID;
if_acmpne 13
11: .line 374
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 3 /* type */
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.constructStandardJavaInstance:(Ljava/lang/Class;Lorg/yaml/snakeyaml/nodes/ScalarNode;)Ljava/lang/Object;
astore 4 /* result */
start local 4 // java.lang.Object result
12: .line 375
goto 55
end local 4 // java.lang.Object result
13: .line 377
StackMap locals:
StackMap stack:
aload 3 /* type */
14: .line 378
invokevirtual java.lang.Class.getDeclaredConstructors:()[Ljava/lang/reflect/Constructor;
15: .line 377
astore 5 /* javaConstructors */
start local 5 // java.lang.reflect.Constructor[] javaConstructors
16: .line 379
iconst_0
istore 6 /* oneArgCount */
start local 6 // int oneArgCount
17: .line 380
aconst_null
astore 7 /* javaConstructor */
start local 7 // java.lang.reflect.Constructor javaConstructor
18: .line 381
aload 5 /* javaConstructors */
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 24
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructScalar org.yaml.snakeyaml.nodes.Node org.yaml.snakeyaml.nodes.ScalarNode java.lang.Class top java.lang.reflect.Constructor[] int java.lang.reflect.Constructor top int int java.lang.reflect.Constructor[]
StackMap stack:
19: aload 11
iload 9
aaload
astore 8 /* c */
start local 8 // java.lang.reflect.Constructor c
20: .line 382
aload 8 /* c */
invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
arraylength
iconst_1
if_icmpne 23
21: .line 383
iinc 6 /* oneArgCount */ 1
22: .line 384
aload 8 /* c */
astore 7 /* javaConstructor */
end local 8 // java.lang.reflect.Constructor c
23: .line 381
StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
24: iload 9
iload 10
if_icmplt 19
25: .line 388
aload 7 /* javaConstructor */
ifnonnull 32
26: .line 390
aload 0 /* this */
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 3 /* type */
aload 2 /* node */
iconst_0
invokevirtual org.yaml.snakeyaml.constructor.Constructor.newInstance:(Ljava/lang/Class;Lorg/yaml/snakeyaml/nodes/Node;Z)Ljava/lang/Object;
27: areturn
28: .line 391
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructScalar org.yaml.snakeyaml.nodes.Node org.yaml.snakeyaml.nodes.ScalarNode java.lang.Class top java.lang.reflect.Constructor[] int java.lang.reflect.Constructor
StackMap stack: java.lang.InstantiationException
astore 9 /* ie */
start local 9 // java.lang.InstantiationException ie
29: .line 392
new org.yaml.snakeyaml.error.YAMLException
dup
new java.lang.StringBuilder
dup
ldc "No single argument constructor found for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3 /* type */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
30: .line 393
ldc " : "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9 /* ie */
invokevirtual java.lang.InstantiationException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
31: .line 392
invokespecial org.yaml.snakeyaml.error.YAMLException.<init>:(Ljava/lang/String;)V
athrow
end local 9 // java.lang.InstantiationException ie
32: .line 395
StackMap locals:
StackMap stack:
iload 6 /* oneArgCount */
iconst_1
if_icmpne 37
33: .line 396
aload 0 /* this */
aload 7 /* javaConstructor */
invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
iconst_0
aaload
34: .line 397
aload 2 /* node */
35: .line 396
invokevirtual org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.constructStandardJavaInstance:(Ljava/lang/Class;Lorg/yaml/snakeyaml/nodes/ScalarNode;)Ljava/lang/Object;
astore 8 /* argument */
start local 8 // java.lang.Object argument
36: .line 398
goto 45
end local 8 // java.lang.Object argument
37: .line 405
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.constructor.Constructor.constructScalar:(Lorg/yaml/snakeyaml/nodes/ScalarNode;)Ljava/lang/String;
astore 8 /* argument */
start local 8 // java.lang.Object argument
38: .line 407
aload 3 /* type */
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/String;
aastore
invokevirtual java.lang.Class.getDeclaredConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 7 /* javaConstructor */
39: .line 408
goto 45
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructScalar org.yaml.snakeyaml.nodes.Node org.yaml.snakeyaml.nodes.ScalarNode java.lang.Class top java.lang.reflect.Constructor[] int java.lang.reflect.Constructor java.lang.Object
StackMap stack: java.lang.Exception
40: astore 9 /* e */
start local 9 // java.lang.Exception e
41: .line 409
new org.yaml.snakeyaml.error.YAMLException
dup
new java.lang.StringBuilder
dup
ldc "Can't construct a java object for scalar "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
42: .line 410
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.nodes.ScalarNode.getTag:()Lorg/yaml/snakeyaml/nodes/Tag;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "; No String constructor found. Exception="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
43: .line 411
aload 9 /* e */
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 9 /* e */
44: .line 409
invokespecial org.yaml.snakeyaml.error.YAMLException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 9 // java.lang.Exception e
45: .line 415
StackMap locals:
StackMap stack:
aload 7 /* javaConstructor */
iconst_1
invokevirtual java.lang.reflect.Constructor.setAccessible:(Z)V
46: .line 416
aload 7 /* javaConstructor */
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 8 /* argument */
aastore
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
astore 4 /* result */
start local 4 // java.lang.Object result
47: .line 417
goto 55
end local 4 // java.lang.Object result
StackMap locals:
StackMap stack: java.lang.Exception
48: astore 9 /* e */
start local 9 // java.lang.Exception e
49: .line 418
new org.yaml.snakeyaml.constructor.ConstructorException
dup
aconst_null
aconst_null
50: .line 419
new java.lang.StringBuilder
dup
ldc "Can't construct a java object for scalar "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.nodes.ScalarNode.getTag:()Lorg/yaml/snakeyaml/nodes/Tag;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
51: .line 420
ldc "; exception="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9 /* e */
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
52: .line 419
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
53: .line 421
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.nodes.ScalarNode.getStartMark:()Lorg/yaml/snakeyaml/error/Mark;
aload 9 /* e */
54: .line 418
invokespecial org.yaml.snakeyaml.constructor.ConstructorException.<init>:(Ljava/lang/String;Lorg/yaml/snakeyaml/error/Mark;Ljava/lang/String;Lorg/yaml/snakeyaml/error/Mark;Ljava/lang/Throwable;)V
athrow
end local 9 // java.lang.Exception e
end local 8 // java.lang.Object argument
end local 7 // java.lang.reflect.Constructor javaConstructor
end local 6 // int oneArgCount
end local 5 // java.lang.reflect.Constructor[] javaConstructors
start local 4 // java.lang.Object result
55: .line 424
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructScalar org.yaml.snakeyaml.nodes.Node org.yaml.snakeyaml.nodes.ScalarNode java.lang.Class java.lang.Object
StackMap stack:
aload 4 /* result */
areturn
end local 4 // java.lang.Object result
end local 3 // java.lang.Class type
end local 2 // org.yaml.snakeyaml.nodes.ScalarNode node
end local 1 // org.yaml.snakeyaml.nodes.Node nnode
end local 0 // org.yaml.snakeyaml.constructor.Constructor$ConstructScalar this
LocalVariableTable:
Start End Slot Name Signature
0 56 0 this Lorg/yaml/snakeyaml/constructor/Constructor$ConstructScalar;
0 56 1 nnode Lorg/yaml/snakeyaml/nodes/Node;
1 56 2 node Lorg/yaml/snakeyaml/nodes/ScalarNode;
2 56 3 type Ljava/lang/Class<*>;
12 13 4 result Ljava/lang/Object;
47 48 4 result Ljava/lang/Object;
55 56 4 result Ljava/lang/Object;
16 55 5 javaConstructors [Ljava/lang/reflect/Constructor;
17 55 6 oneArgCount I
18 55 7 javaConstructor Ljava/lang/reflect/Constructor<*>;
20 23 8 c Ljava/lang/reflect/Constructor<*>;
36 37 8 argument Ljava/lang/Object;
38 55 8 argument Ljava/lang/Object;
29 32 9 ie Ljava/lang/InstantiationException;
41 45 9 e Ljava/lang/Exception;
49 55 9 e Ljava/lang/Exception;
Exception table:
from to target type
2 3 4 Class java.lang.InstantiationException
26 27 28 Class java.lang.InstantiationException
38 39 40 Class java.lang.Exception
45 47 48 Class java.lang.Exception
MethodParameters:
Name Flags
nnode
private java.lang.Object constructStandardJavaInstance(java.lang.Class, org.yaml.snakeyaml.nodes.ScalarNode);
descriptor: (Ljava/lang/Class;Lorg/yaml/snakeyaml/nodes/ScalarNode;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=3
start local 0 // org.yaml.snakeyaml.constructor.Constructor$ConstructScalar this
start local 1 // java.lang.Class type
start local 2 // org.yaml.snakeyaml.nodes.ScalarNode node
0: .line 431
aload 1 /* type */
ldc Ljava/lang/String;
if_acmpne 4
1: .line 432
aload 0 /* this */
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
getfield org.yaml.snakeyaml.constructor.Constructor.yamlConstructors:Ljava/util/Map;
getstatic org.yaml.snakeyaml.nodes.Tag.STR:Lorg/yaml/snakeyaml/nodes/Tag;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.yaml.snakeyaml.constructor.Construct
astore 4 /* stringConstructor */
start local 4 // org.yaml.snakeyaml.constructor.Construct stringConstructor
2: .line 433
aload 4 /* stringConstructor */
aload 2 /* node */
invokeinterface org.yaml.snakeyaml.constructor.Construct.construct:(Lorg/yaml/snakeyaml/nodes/Node;)Ljava/lang/Object;
astore 3 /* result */
end local 4 // org.yaml.snakeyaml.constructor.Construct stringConstructor
start local 3 // java.lang.Object result
3: .line 434
goto 86
end local 3 // java.lang.Object result
StackMap locals:
StackMap stack:
4: aload 1 /* type */
ldc Ljava/lang/Boolean;
if_acmpeq 5
aload 1 /* type */
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
if_acmpne 8
5: .line 435
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
getfield org.yaml.snakeyaml.constructor.Constructor.yamlConstructors:Ljava/util/Map;
getstatic org.yaml.snakeyaml.nodes.Tag.BOOL:Lorg/yaml/snakeyaml/nodes/Tag;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.yaml.snakeyaml.constructor.Construct
astore 4 /* boolConstructor */
start local 4 // org.yaml.snakeyaml.constructor.Construct boolConstructor
6: .line 436
aload 4 /* boolConstructor */
aload 2 /* node */
invokeinterface org.yaml.snakeyaml.constructor.Construct.construct:(Lorg/yaml/snakeyaml/nodes/Node;)Ljava/lang/Object;
astore 3 /* result */
end local 4 // org.yaml.snakeyaml.constructor.Construct boolConstructor
start local 3 // java.lang.Object result
7: .line 437
goto 86
end local 3 // java.lang.Object result
StackMap locals:
StackMap stack:
8: aload 1 /* type */
ldc Ljava/lang/Character;
if_acmpeq 9
aload 1 /* type */
getstatic java.lang.Character.TYPE:Ljava/lang/Class;
if_acmpne 20
9: .line 438
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
getfield org.yaml.snakeyaml.constructor.Constructor.yamlConstructors:Ljava/util/Map;
getstatic org.yaml.snakeyaml.nodes.Tag.STR:Lorg/yaml/snakeyaml/nodes/Tag;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.yaml.snakeyaml.constructor.Construct
astore 4 /* charConstructor */
start local 4 // org.yaml.snakeyaml.constructor.Construct charConstructor
10: .line 439
aload 4 /* charConstructor */
aload 2 /* node */
invokeinterface org.yaml.snakeyaml.constructor.Construct.construct:(Lorg/yaml/snakeyaml/nodes/Node;)Ljava/lang/Object;
checkcast java.lang.String
astore 5 /* ch */
start local 5 // java.lang.String ch
11: .line 440
aload 5 /* ch */
invokevirtual java.lang.String.length:()I
ifne 14
12: .line 441
aconst_null
astore 3 /* result */
start local 3 // java.lang.Object result
13: .line 442
goto 86
end local 3 // java.lang.Object result
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructScalar java.lang.Class org.yaml.snakeyaml.nodes.ScalarNode top org.yaml.snakeyaml.constructor.Construct java.lang.String
StackMap stack:
14: aload 5 /* ch */
invokevirtual java.lang.String.length:()I
iconst_1
if_icmpeq 18
15: .line 443
new org.yaml.snakeyaml.error.YAMLException
dup
16: .line 444
new java.lang.StringBuilder
dup
ldc "Invalid node Character: '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5 /* ch */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'; length: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5 /* ch */
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
17: .line 443
invokespecial org.yaml.snakeyaml.error.YAMLException.<init>:(Ljava/lang/String;)V
athrow
18: .line 446
StackMap locals:
StackMap stack:
aload 5 /* ch */
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
astore 3 /* result */
end local 5 // java.lang.String ch
end local 4 // org.yaml.snakeyaml.constructor.Construct charConstructor
start local 3 // java.lang.Object result
19: .line 448
goto 86
end local 3 // java.lang.Object result
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructScalar java.lang.Class org.yaml.snakeyaml.nodes.ScalarNode
StackMap stack:
20: ldc Ljava/util/Date;
aload 1 /* type */
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 33
21: .line 449
aload 0 /* this */
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
getfield org.yaml.snakeyaml.constructor.Constructor.yamlConstructors:Ljava/util/Map;
getstatic org.yaml.snakeyaml.nodes.Tag.TIMESTAMP:Lorg/yaml/snakeyaml/nodes/Tag;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.yaml.snakeyaml.constructor.Construct
astore 4 /* dateConstructor */
start local 4 // org.yaml.snakeyaml.constructor.Construct dateConstructor
22: .line 450
aload 4 /* dateConstructor */
aload 2 /* node */
invokeinterface org.yaml.snakeyaml.constructor.Construct.construct:(Lorg/yaml/snakeyaml/nodes/Node;)Ljava/lang/Object;
checkcast java.util.Date
astore 5 /* date */
start local 5 // java.util.Date date
23: .line 451
aload 1 /* type */
ldc Ljava/util/Date;
if_acmpne 26
24: .line 452
aload 5 /* date */
astore 3 /* result */
start local 3 // java.lang.Object result
25: .line 453
goto 86
end local 3 // java.lang.Object result
26: .line 455
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructScalar java.lang.Class org.yaml.snakeyaml.nodes.ScalarNode top org.yaml.snakeyaml.constructor.Construct java.util.Date
StackMap stack:
aload 1 /* type */
iconst_1
anewarray java.lang.Class
dup
iconst_0
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
aastore
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 6 /* constr */
start local 6 // java.lang.reflect.Constructor constr
27: .line 456
aload 6 /* constr */
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 5 /* date */
invokevirtual java.util.Date.getTime:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
astore 3 /* result */
end local 6 // java.lang.reflect.Constructor constr
start local 3 // java.lang.Object result
28: .line 457
goto 86
end local 3 // java.lang.Object result
StackMap locals:
StackMap stack: java.lang.RuntimeException
29: astore 6 /* e */
start local 6 // java.lang.RuntimeException e
30: .line 458
aload 6 /* e */
athrow
end local 6 // java.lang.RuntimeException e
31: .line 459
StackMap locals:
StackMap stack: java.lang.Exception
pop
32: .line 460
new org.yaml.snakeyaml.error.YAMLException
dup
new java.lang.StringBuilder
dup
ldc "Cannot construct: '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1 /* type */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)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 5 // java.util.Date date
end local 4 // org.yaml.snakeyaml.constructor.Construct dateConstructor
33: .line 463
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructScalar java.lang.Class org.yaml.snakeyaml.nodes.ScalarNode
StackMap stack:
aload 1 /* type */
ldc Ljava/lang/Float;
if_acmpeq 35
aload 1 /* type */
ldc Ljava/lang/Double;
if_acmpeq 35
aload 1 /* type */
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
if_acmpeq 35
34: .line 464
aload 1 /* type */
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
if_acmpeq 35
aload 1 /* type */
ldc Ljava/math/BigDecimal;
if_acmpne 43
35: .line 465
StackMap locals:
StackMap stack:
aload 1 /* type */
ldc Ljava/math/BigDecimal;
if_acmpne 38
36: .line 466
new java.math.BigDecimal
dup
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.nodes.ScalarNode.getValue:()Ljava/lang/String;
invokespecial java.math.BigDecimal.<init>:(Ljava/lang/String;)V
astore 3 /* result */
start local 3 // java.lang.Object result
37: .line 467
goto 86
end local 3 // java.lang.Object result
38: .line 468
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
getfield org.yaml.snakeyaml.constructor.Constructor.yamlConstructors:Ljava/util/Map;
getstatic org.yaml.snakeyaml.nodes.Tag.FLOAT:Lorg/yaml/snakeyaml/nodes/Tag;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.yaml.snakeyaml.constructor.Construct
astore 4 /* doubleConstructor */
start local 4 // org.yaml.snakeyaml.constructor.Construct doubleConstructor
39: .line 469
aload 4 /* doubleConstructor */
aload 2 /* node */
invokeinterface org.yaml.snakeyaml.constructor.Construct.construct:(Lorg/yaml/snakeyaml/nodes/Node;)Ljava/lang/Object;
astore 3 /* result */
start local 3 // java.lang.Object result
40: .line 470
aload 1 /* type */
ldc Ljava/lang/Float;
if_acmpeq 41
aload 1 /* type */
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
if_acmpne 86
41: .line 471
StackMap locals: java.lang.Object org.yaml.snakeyaml.constructor.Construct
StackMap stack:
aload 3 /* result */
checkcast java.lang.Double
invokevirtual java.lang.Double.floatValue:()F
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
astore 3 /* result */
end local 4 // org.yaml.snakeyaml.constructor.Construct doubleConstructor
42: .line 474
goto 86
end local 3 // java.lang.Object result
StackMap locals:
StackMap stack:
43: aload 1 /* type */
ldc Ljava/lang/Byte;
if_acmpeq 46
aload 1 /* type */
ldc Ljava/lang/Short;
if_acmpeq 46
aload 1 /* type */
ldc Ljava/lang/Integer;
if_acmpeq 46
44: .line 475
aload 1 /* type */
ldc Ljava/lang/Long;
if_acmpeq 46
aload 1 /* type */
ldc Ljava/math/BigInteger;
if_acmpeq 46
aload 1 /* type */
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
if_acmpeq 46
45: .line 476
aload 1 /* type */
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
if_acmpeq 46
aload 1 /* type */
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
if_acmpeq 46
aload 1 /* type */
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
if_acmpne 62
46: .line 477
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
getfield org.yaml.snakeyaml.constructor.Constructor.yamlConstructors:Ljava/util/Map;
getstatic org.yaml.snakeyaml.nodes.Tag.INT:Lorg/yaml/snakeyaml/nodes/Tag;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.yaml.snakeyaml.constructor.Construct
astore 4 /* intConstructor */
start local 4 // org.yaml.snakeyaml.constructor.Construct intConstructor
47: .line 478
aload 4 /* intConstructor */
aload 2 /* node */
invokeinterface org.yaml.snakeyaml.constructor.Construct.construct:(Lorg/yaml/snakeyaml/nodes/Node;)Ljava/lang/Object;
astore 3 /* result */
start local 3 // java.lang.Object result
48: .line 479
aload 1 /* type */
ldc Ljava/lang/Byte;
if_acmpeq 49
aload 1 /* type */
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
if_acmpne 51
49: .line 480
StackMap locals: java.lang.Object org.yaml.snakeyaml.constructor.Construct
StackMap stack:
aload 3 /* result */
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokestatic java.lang.Integer.valueOf:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.byteValue:()B
invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
astore 3 /* result */
50: .line 481
goto 86
StackMap locals:
StackMap stack:
51: aload 1 /* type */
ldc Ljava/lang/Short;
if_acmpeq 52
aload 1 /* type */
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
if_acmpne 54
52: .line 482
StackMap locals:
StackMap stack:
aload 3 /* result */
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokestatic java.lang.Integer.valueOf:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.shortValue:()S
invokestatic java.lang.Short.valueOf:(S)Ljava/lang/Short;
astore 3 /* result */
53: .line 483
goto 86
StackMap locals:
StackMap stack:
54: aload 1 /* type */
ldc Ljava/lang/Integer;
if_acmpeq 55
aload 1 /* type */
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
if_acmpne 57
55: .line 484
StackMap locals:
StackMap stack:
aload 3 /* result */
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
astore 3 /* result */
56: .line 485
goto 86
StackMap locals:
StackMap stack:
57: aload 1 /* type */
ldc Ljava/lang/Long;
if_acmpeq 58
aload 1 /* type */
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
if_acmpne 60
58: .line 486
StackMap locals:
StackMap stack:
aload 3 /* result */
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokestatic java.lang.Long.valueOf:(Ljava/lang/String;)Ljava/lang/Long;
astore 3 /* result */
59: .line 487
goto 86
60: .line 489
StackMap locals:
StackMap stack:
new java.math.BigInteger
dup
aload 3 /* result */
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;)V
astore 3 /* result */
end local 4 // org.yaml.snakeyaml.constructor.Construct intConstructor
61: .line 491
goto 86
end local 3 // java.lang.Object result
StackMap locals:
StackMap stack:
62: ldc Ljava/lang/Enum;
aload 1 /* type */
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 70
63: .line 492
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.nodes.ScalarNode.getValue:()Ljava/lang/String;
astore 4 /* enumValueName */
start local 4 // java.lang.String enumValueName
64: .line 494
aload 1 /* type */
aload 4 /* enumValueName */
invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
astore 3 /* result */
start local 3 // java.lang.Object result
65: .line 495
goto 86
end local 3 // java.lang.Object result
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructScalar java.lang.Class org.yaml.snakeyaml.nodes.ScalarNode top java.lang.String
StackMap stack: java.lang.Exception
66: pop
67: .line 496
new org.yaml.snakeyaml.error.YAMLException
dup
new java.lang.StringBuilder
dup
ldc "Unable to find enum value '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4 /* enumValueName */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
68: .line 497
ldc "' for enum class: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1 /* type */
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
69: .line 496
invokespecial org.yaml.snakeyaml.error.YAMLException.<init>:(Ljava/lang/String;)V
athrow
end local 4 // java.lang.String enumValueName
70: .line 499
StackMap locals: org.yaml.snakeyaml.constructor.Constructor$ConstructScalar java.lang.Class org.yaml.snakeyaml.nodes.ScalarNode
StackMap stack:
ldc Ljava/util/Calendar;
aload 1 /* type */
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 75
71: .line 500
new org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlTimestamp
dup
invokespecial org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlTimestamp.<init>:()V
astore 4 /* contr */
start local 4 // org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlTimestamp contr
72: .line 501
aload 4 /* contr */
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlTimestamp.construct:(Lorg/yaml/snakeyaml/nodes/Node;)Ljava/lang/Object;
pop
73: .line 502
aload 4 /* contr */
invokevirtual org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlTimestamp.getCalendar:()Ljava/util/Calendar;
astore 3 /* result */
end local 4 // org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlTimestamp contr
start local 3 // java.lang.Object result
74: .line 503
goto 86
end local 3 // java.lang.Object result
StackMap locals:
StackMap stack:
75: ldc Ljava/lang/Number;
aload 1 /* type */
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 79
76: .line 505
new org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlFloat
dup
aload 0 /* this */
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
invokespecial org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlFloat.<init>:(Lorg/yaml/snakeyaml/constructor/SafeConstructor;)V
astore 4 /* contr */
start local 4 // org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlFloat contr
77: .line 506
aload 4 /* contr */
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlFloat.construct:(Lorg/yaml/snakeyaml/nodes/Node;)Ljava/lang/Object;
astore 3 /* result */
end local 4 // org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlFloat contr
start local 3 // java.lang.Object result
78: .line 507
goto 86
end local 3 // java.lang.Object result
StackMap locals:
StackMap stack:
79: ldc Ljava/util/UUID;
aload 1 /* type */
if_acmpne 82
80: .line 508
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.nodes.ScalarNode.getValue:()Ljava/lang/String;
invokestatic java.util.UUID.fromString:(Ljava/lang/String;)Ljava/util/UUID;
astore 3 /* result */
start local 3 // java.lang.Object result
81: .line 509
goto 86
end local 3 // java.lang.Object result
82: .line 510
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
getfield org.yaml.snakeyaml.constructor.Constructor.yamlConstructors:Ljava/util/Map;
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.nodes.ScalarNode.getTag:()Lorg/yaml/snakeyaml/nodes/Tag;
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 85
83: .line 511
aload 0 /* this */
getfield org.yaml.snakeyaml.constructor.Constructor$ConstructScalar.this$0:Lorg/yaml/snakeyaml/constructor/Constructor;
getfield org.yaml.snakeyaml.constructor.Constructor.yamlConstructors:Ljava/util/Map;
aload 2 /* node */
invokevirtual org.yaml.snakeyaml.nodes.ScalarNode.getTag:()Lorg/yaml/snakeyaml/nodes/Tag;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.yaml.snakeyaml.constructor.Construct
aload 2 /* node */
invokeinterface org.yaml.snakeyaml.constructor.Construct.construct:(Lorg/yaml/snakeyaml/nodes/Node;)Ljava/lang/Object;
astore 3 /* result */
start local 3 // java.lang.Object result
84: .line 512
goto 86
end local 3 // java.lang.Object result
85: .line 513
StackMap locals:
StackMap stack:
new org.yaml.snakeyaml.error.YAMLException
dup
new java.lang.StringBuilder
dup
ldc "Unsupported class: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1 /* type */
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
start local 3 // java.lang.Object result
86: .line 516
StackMap locals: java.lang.Object
StackMap stack:
aload 3 /* result */
areturn
end local 3 // java.lang.Object result
end local 2 // org.yaml.snakeyaml.nodes.ScalarNode node
end local 1 // java.lang.Class type
end local 0 // org.yaml.snakeyaml.constructor.Constructor$ConstructScalar this
LocalVariableTable:
Start End Slot Name Signature
0 87 0 this Lorg/yaml/snakeyaml/constructor/Constructor$ConstructScalar;
0 87 1 type Ljava/lang/Class;
0 87 2 node Lorg/yaml/snakeyaml/nodes/ScalarNode;
3 4 3 result Ljava/lang/Object;
7 8 3 result Ljava/lang/Object;
13 14 3 result Ljava/lang/Object;
19 20 3 result Ljava/lang/Object;
25 26 3 result Ljava/lang/Object;
28 29 3 result Ljava/lang/Object;
37 38 3 result Ljava/lang/Object;
40 43 3 result Ljava/lang/Object;
48 62 3 result Ljava/lang/Object;
65 66 3 result Ljava/lang/Object;
74 75 3 result Ljava/lang/Object;
78 79 3 result Ljava/lang/Object;
81 82 3 result Ljava/lang/Object;
84 85 3 result Ljava/lang/Object;
86 87 3 result Ljava/lang/Object;
2 3 4 stringConstructor Lorg/yaml/snakeyaml/constructor/Construct;
6 7 4 boolConstructor Lorg/yaml/snakeyaml/constructor/Construct;
10 19 4 charConstructor Lorg/yaml/snakeyaml/constructor/Construct;
11 19 5 ch Ljava/lang/String;
22 33 4 dateConstructor Lorg/yaml/snakeyaml/constructor/Construct;
23 33 5 date Ljava/util/Date;
27 28 6 constr Ljava/lang/reflect/Constructor<*>;
30 31 6 e Ljava/lang/RuntimeException;
39 42 4 doubleConstructor Lorg/yaml/snakeyaml/constructor/Construct;
47 61 4 intConstructor Lorg/yaml/snakeyaml/constructor/Construct;
64 70 4 enumValueName Ljava/lang/String;
72 74 4 contr Lorg/yaml/snakeyaml/constructor/SafeConstructor$ConstructYamlTimestamp;
77 78 4 contr Lorg/yaml/snakeyaml/constructor/SafeConstructor$ConstructYamlFloat;
Exception table:
from to target type
26 28 29 Class java.lang.RuntimeException
26 28 31 Class java.lang.Exception
64 65 66 Class java.lang.Exception
MethodParameters:
Name Flags
type
node
}
SourceFile: "Constructor.java"
NestHost: org.yaml.snakeyaml.constructor.Constructor
InnerClasses:
protected ConstructScalar = org.yaml.snakeyaml.constructor.Constructor$ConstructScalar of org.yaml.snakeyaml.constructor.Constructor
public ConstructYamlFloat = org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlFloat of org.yaml.snakeyaml.constructor.SafeConstructor
public ConstructYamlTimestamp = org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlTimestamp of org.yaml.snakeyaml.constructor.SafeConstructor