final class com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator
super_class: java.lang.Object
{
private final java.lang.Class<?> _valueType;
descriptor: Ljava/lang/Class;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/lang/Class<*>;
private java.util.Map<java.lang.Object, java.lang.Object> _result;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljava/lang/Object;Ljava/lang/Object;>;
private java.util.List<com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferring> _accumulator;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Lcom/fasterxml/jackson/databind/deser/std/MapDeserializer$MapReferring;>;
public void <init>(java.lang.Class<?>, java.util.Map<java.lang.Object, java.lang.Object>);
descriptor: (Ljava/lang/Class;Ljava/util/Map;)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.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator._accumulator:Ljava/util/List;
2: aload 0
aload 1
putfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator._valueType:Ljava/lang/Class;
3: aload 0
aload 2
putfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator._result:Ljava/util/Map;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/fasterxml/jackson/databind/deser/std/MapDeserializer$MapReferringAccumulator;
0 5 1 valueType Ljava/lang/Class<*>;
0 5 2 result Ljava/util/Map<Ljava/lang/Object;Ljava/lang/Object;>;
Signature: (Ljava/lang/Class<*>;Ljava/util/Map<Ljava/lang/Object;Ljava/lang/Object;>;)V
MethodParameters:
Name Flags
valueType
result
public void put(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator._accumulator:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 3
1: aload 0
getfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator._result:Ljava/util/Map;
aload 1
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
2: goto 5
3: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator._accumulator:Ljava/util/List;
aload 0
getfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator._accumulator:Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferring
astore 3
start local 3 4: aload 3
getfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferring.next:Ljava/util/Map;
aload 1
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 3 5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/fasterxml/jackson/databind/deser/std/MapDeserializer$MapReferringAccumulator;
0 6 1 key Ljava/lang/Object;
0 6 2 value Ljava/lang/Object;
4 5 3 ref Lcom/fasterxml/jackson/databind/deser/std/MapDeserializer$MapReferring;
MethodParameters:
Name Flags
key
value
public com.fasterxml.jackson.databind.deser.impl.ReadableObjectId$Referring handleUnresolvedReference(com.fasterxml.jackson.databind.deser.UnresolvedForwardReference, java.lang.Object);
descriptor: (Lcom/fasterxml/jackson/databind/deser/UnresolvedForwardReference;Ljava/lang/Object;)Lcom/fasterxml/jackson/databind/deser/impl/ReadableObjectId$Referring;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferring
dup
aload 0
aload 1
aload 0
getfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator._valueType:Ljava/lang/Class;
aload 2
invokespecial com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferring.<init>:(Lcom/fasterxml/jackson/databind/deser/std/MapDeserializer$MapReferringAccumulator;Lcom/fasterxml/jackson/databind/deser/UnresolvedForwardReference;Ljava/lang/Class;Ljava/lang/Object;)V
astore 3
start local 3 1: aload 0
getfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator._accumulator:Ljava/util/List;
aload 3
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
2: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/jackson/databind/deser/std/MapDeserializer$MapReferringAccumulator;
0 3 1 reference Lcom/fasterxml/jackson/databind/deser/UnresolvedForwardReference;
0 3 2 key Ljava/lang/Object;
1 3 3 id Lcom/fasterxml/jackson/databind/deser/std/MapDeserializer$MapReferring;
MethodParameters:
Name Flags
reference
key
public void resolveForwardReference(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator._accumulator:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
start local 3 1: aload 0
getfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator._result:Ljava/util/Map;
astore 4
start local 4 2: goto 10
3: StackMap locals: java.util.Iterator java.util.Map
StackMap stack:
aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferring
astore 5
start local 5 4: aload 5
aload 1
invokevirtual com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferring.hasId:(Ljava/lang/Object;)Z
ifeq 9
5: aload 3
invokeinterface java.util.Iterator.remove:()V
6: aload 4
aload 5
getfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferring.key:Ljava/lang/Object;
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: aload 4
aload 5
getfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferring.next:Ljava/util/Map;
invokeinterface java.util.Map.putAll:(Ljava/util/Map;)V
8: return
9: StackMap locals: com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferring
StackMap stack:
aload 5
getfield com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferring.next:Ljava/util/Map;
astore 4
end local 5 10: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
11: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Trying to resolve a forward reference with id ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
12: ldc "] that wasn't previously seen as unresolved."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/fasterxml/jackson/databind/deser/std/MapDeserializer$MapReferringAccumulator;
0 14 1 id Ljava/lang/Object;
0 14 2 value Ljava/lang/Object;
1 14 3 iterator Ljava/util/Iterator<Lcom/fasterxml/jackson/databind/deser/std/MapDeserializer$MapReferring;>;
2 14 4 previous Ljava/util/Map<Ljava/lang/Object;Ljava/lang/Object;>;
4 10 5 ref Lcom/fasterxml/jackson/databind/deser/std/MapDeserializer$MapReferring;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
id
value
}
SourceFile: "MapDeserializer.java"
NestHost: com.fasterxml.jackson.databind.deser.std.MapDeserializer
InnerClasses:
public abstract Referring = com.fasterxml.jackson.databind.deser.impl.ReadableObjectId$Referring of com.fasterxml.jackson.databind.deser.impl.ReadableObjectId
MapReferring = com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferring of com.fasterxml.jackson.databind.deser.std.MapDeserializer
private final MapReferringAccumulator = com.fasterxml.jackson.databind.deser.std.MapDeserializer$MapReferringAccumulator of com.fasterxml.jackson.databind.deser.std.MapDeserializer