public class org.eclipse.yasson.internal.deserializer.DeserializationModelCreator extends java.lang.Object
{
private static final org.eclipse.yasson.internal.deserializer.ModelDeserializer NULL_PROVIDER;
private static final java.util.Map DEFAULT_CREATOR_VALUES;
private static final java.util.Set MAP_KEY_EVENTS;
private final java.util.Map models;
private final org.eclipse.yasson.internal.JsonbContext jsonbContext;
private final java.util.Map userTypeMapping;
public void <init>(org.eclipse.yasson.internal.JsonbContext)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.JsonbConfigProperties v;
java.util.Map v;
java.util.concurrent.ConcurrentHashMap v;
org.eclipse.yasson.internal.JsonbContext v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: org.eclipse.yasson.internal.JsonbContext;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models> = v;
v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext> = v;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.JsonbConfigProperties getConfigProperties()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbConfigProperties: java.util.Map getUserTypeMapping()>();
v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map userTypeMapping> = v;
return;
}
public org.eclipse.yasson.internal.deserializer.ModelDeserializer deserializerChain(java.lang.reflect.Type)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.model.ClassModel v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v;
org.eclipse.yasson.internal.model.customization.ClassCustomization v;
org.eclipse.yasson.internal.MappingContext v;
java.lang.reflect.Type v;
java.lang.Class v;
java.util.LinkedList v;
org.eclipse.yasson.internal.JsonbContext v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.lang.reflect.Type;
v = new java.util.LinkedList;
specialinvoke v.<java.util.LinkedList: void <init>()>();
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.MappingContext getMappingContext()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.lang.Class getRawType(java.lang.reflect.Type)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.MappingContext: org.eclipse.yasson.internal.model.ClassModel getOrCreateClassModel(java.lang.Class)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.ClassModel: org.eclipse.yasson.internal.model.customization.ClassCustomization getClassCustomization()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer deserializerChain(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.model.ClassModel)>(v, v, v, v);
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer deserializerChain(java.util.LinkedList, java.lang.reflect.Type, org.eclipse.yasson.internal.model.customization.Customization, org.eclipse.yasson.internal.model.ClassModel)
{
java.lang.Throwable v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.model.ClassModel v;
org.eclipse.yasson.internal.deserializer.CyclicReferenceDeserializer v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v;
java.lang.reflect.Type v;
org.eclipse.yasson.internal.model.customization.Customization v;
java.util.LinkedList v;
boolean v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.util.LinkedList;
v := @parameter: java.lang.reflect.Type;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v := @parameter: org.eclipse.yasson.internal.model.ClassModel;
v = virtualinvoke v.<java.util.LinkedList: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
v = new org.eclipse.yasson.internal.deserializer.CyclicReferenceDeserializer;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.CyclicReferenceDeserializer: void <init>(java.lang.reflect.Type)>(v);
return v;
label:
virtualinvoke v.<java.util.LinkedList: boolean add(java.lang.Object)>(v);
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer deserializerChainInternal(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.model.ClassModel)>(v, v, v, v);
label:
virtualinvoke v.<java.util.LinkedList: java.lang.Object removeLast()>();
return v;
label:
v := @caughtexception;
virtualinvoke v.<java.util.LinkedList: java.lang.Object removeLast()>();
throw v;
catch java.lang.Throwable from label to label with label;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer deserializerChainInternal(java.util.LinkedList, java.lang.reflect.Type, org.eclipse.yasson.internal.model.customization.Customization, org.eclipse.yasson.internal.model.ClassModel)
{
org.eclipse.yasson.internal.model.customization.ClassCustomization v;
org.eclipse.yasson.internal.deserializer.AdapterDeserializer v;
java.util.Map v, v, v, v, v, v, v;
org.eclipse.yasson.internal.model.customization.Customization v;
boolean v, v, v, v, v, v, v, v;
org.eclipse.yasson.internal.model.ClassModel v, v;
org.eclipse.yasson.internal.MappingContext v;
java.lang.reflect.Type v, v, v;
java.util.Optional v;
org.eclipse.yasson.internal.deserializer.JustReturn v, v, v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem v;
org.eclipse.yasson.internal.deserializer.OptionalDeserializer v;
java.util.LinkedList v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v, v, v, v, v, v, v, v, v;
java.lang.Class v, v, v, v, v;
java.lang.Object v, v, v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.util.LinkedList;
v := @parameter: java.lang.reflect.Type;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v := @parameter: org.eclipse.yasson.internal.model.ClassModel;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.ClassModel: java.lang.Class getType()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem createCachedItem(java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization)>(v, v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models>;
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
label:
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map userTypeMapping>;
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map userTypeMapping>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer deserializerChain(java.lang.reflect.Type)>(v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
label:
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Optional adapterBinding(java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.ComponentBoundCustomization)>(v, v);
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.components.AdapterBinding: java.lang.reflect.Type getToType()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.lang.Class getRawType(java.lang.reflect.Type)>(v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.MappingContext getMappingContext()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.MappingContext: org.eclipse.yasson.internal.model.ClassModel getOrCreateClassModel(java.lang.Class)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.ClassModel: org.eclipse.yasson.internal.model.customization.ClassCustomization getClassCustomization()>();
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeDeserializer(java.lang.Class,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v);
if v != null goto label;
v = virtualinvoke v.<org.eclipse.yasson.internal.components.AdapterBinding: java.lang.reflect.Type getToType()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer deserializerChain(java.lang.reflect.Type)>(v);
label:
v = new org.eclipse.yasson.internal.deserializer.AdapterDeserializer;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.AdapterDeserializer: void <init>(org.eclipse.yasson.internal.components.AdapterBinding,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v);
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_deserializerChainInternal_13__468: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$(org.eclipse.yasson.internal.deserializer.ModelDeserializer,org.eclipse.yasson.internal.deserializer.AdapterDeserializer)>(v, v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
label:
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeDeserializer(java.lang.Class,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v);
if v == null goto label;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
label:
v = class "Ljava/util/Collection;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer createCollectionDeserializer(org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem,java.lang.Class,java.util.LinkedList,org.eclipse.yasson.internal.model.customization.Customization)>(v, v, v, v);
return v;
label:
v = class "Ljava/util/Map;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer createMapDeserializer(org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem,java.lang.Class,java.util.LinkedList,org.eclipse.yasson.internal.model.customization.Customization)>(v, v, v, v);
return v;
label:
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer createArrayDeserializer(org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem,java.lang.Class,java.util.LinkedList,org.eclipse.yasson.internal.model.customization.Customization)>(v, v, v, v);
return v;
label:
v = v instanceof java.lang.reflect.GenericArrayType;
if v == 0 goto label;
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer createGenericArray(org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem,java.lang.Class,java.util.LinkedList,org.eclipse.yasson.internal.model.customization.Customization)>(v, v, v, v);
return v;
label:
v = class "Ljava/util/Optional;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.OptionalDeserializer createOptionalDeserializer(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem)>(v, v, v, v);
return v;
label:
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer createObjectDeserializer(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.model.ClassModel,java.lang.Class,org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem)>(v, v, v, v, v, v);
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer createObjectDeserializer(java.util.LinkedList, java.lang.reflect.Type, org.eclipse.yasson.internal.model.customization.Customization, org.eclipse.yasson.internal.model.ClassModel, java.lang.Class, org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem)
{
org.eclipse.yasson.internal.model.customization.ClassCustomization v;
org.eclipse.yasson.internal.deserializer.InheritanceInstanceCreator v;
java.util.Map v, v, v;
org.eclipse.yasson.internal.model.customization.Customization v;
org.eclipse.yasson.internal.deserializer.PositionChecker v, v, v;
org.eclipse.yasson.internal.deserializer.RequiredCreatorParameter v;
org.eclipse.yasson.internal.model.ClassModel v;
java.util.Set v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem v;
java.lang.reflect.Constructor v;
java.util.LinkedHashMap v;
java.lang.String v, v, v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v, v, v, v;
org.eclipse.yasson.internal.model.customization.CreatorCustomization v, v;
org.eclipse.yasson.internal.deserializer.JsonbCreatorDeserializer v;
org.eclipse.yasson.internal.model.CreatorModel v;
jakarta.json.stream.JsonParser$Event v, v;
org.eclipse.yasson.internal.model.JsonbCreator v;
org.eclipse.yasson.internal.deserializer.DefaultObjectInstanceCreator v;
jakarta.json.bind.serializer.JsonbDeserializer v;
boolean v, v, v, v, v, v, v, v, v;
org.eclipse.yasson.internal.deserializer.ObjectDeserializer v;
org.eclipse.yasson.internal.model.PropertyModel v;
java.util.List v, v;
java.lang.reflect.Type v, v, v;
org.eclipse.yasson.internal.JsonbConfigProperties v;
org.eclipse.yasson.internal.model.PropertyModel[] v;
org.eclipse.yasson.internal.deserializer.UserDefinedDeserializer v;
org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration v;
java.util.Optional v;
org.eclipse.yasson.internal.deserializer.JustReturn v, v, v;
org.eclipse.yasson.internal.JsonbContext v;
java.util.HashMap v;
java.util.function.Function v;
int v, v;
java.util.LinkedList v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
java.util.Iterator v;
jakarta.json.stream.JsonParser$Event[] v, v;
org.eclipse.yasson.internal.deserializer.NullCheckDeserializer v;
java.lang.Class v, v;
java.lang.Object v, v, v, v, v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.util.LinkedList;
v := @parameter: java.lang.reflect.Type;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v := @parameter: org.eclipse.yasson.internal.model.ClassModel;
v := @parameter: java.lang.Class;
v := @parameter: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.ClassModel: org.eclipse.yasson.internal.model.customization.ClassCustomization getClassCustomization()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Optional userDeserializer(java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.ComponentBoundCustomization)>(v, v);
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = new org.eclipse.yasson.internal.deserializer.UserDefinedDeserializer;
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.components.DeserializerBinding: jakarta.json.bind.serializer.JsonbDeserializer getJsonbDeserializer()>();
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.UserDefinedDeserializer: void <init>(jakarta.json.bind.serializer.JsonbDeserializer,org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization)>(v, v, v, v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization: org.eclipse.yasson.internal.model.JsonbCreator getCreator()>();
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
if v == 0 goto label;
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.List creatorParamsList(org.eclipse.yasson.internal.model.JsonbCreator)>(v);
goto label;
label:
v = staticinvoke <java.util.Collections: java.util.List emptyList()>();
label:
v = v;
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.function.Function propertyRenamer()>();
v = new java.util.LinkedHashMap;
specialinvoke v.<java.util.LinkedHashMap: void <init>()>();
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.ClassModel: org.eclipse.yasson.internal.model.PropertyModel[] getSortedProperties()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<org.eclipse.yasson.internal.model.PropertyModel: boolean isWritable()>();
if v == 0 goto label;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.PropertyModel: java.lang.String getReadName()>();
v = interfaceinvoke v.<java.util.List: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer memberTypeProcessor(java.util.LinkedList,org.eclipse.yasson.internal.model.PropertyModel,boolean)>(v, v, v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.PropertyModel: java.lang.String getReadName()>();
v = interfaceinvoke v.<java.util.function.Function: java.lang.Object apply(java.lang.Object)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = v + 1;
goto label;
label:
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbCreator: org.eclipse.yasson.internal.model.CreatorModel findByName(java.lang.String)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.CreatorModel: java.lang.reflect.Type getType()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.CreatorModel: org.eclipse.yasson.internal.model.customization.CreatorCustomization getCustomization()>();
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeProcessor(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v, v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.CreatorModel: java.lang.String getName()>();
v = interfaceinvoke v.<java.util.function.Function: java.lang.Object apply(java.lang.Object)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.CreatorModel: org.eclipse.yasson.internal.model.customization.CreatorCustomization getCustomization()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.CreatorCustomization: boolean isRequired()>();
if v == 0 goto label;
v = new org.eclipse.yasson.internal.deserializer.RequiredCreatorParameter;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.RequiredCreatorParameter: void <init>(java.lang.String)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.CreatorModel: java.lang.reflect.Type getType()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.lang.Class getRawType(java.lang.reflect.Type)>(v);
v = <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map DEFAULT_CREATOR_VALUES>;
v = <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer NULL_PROVIDER>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object getOrDefault(java.lang.Object,java.lang.Object)>(v, v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration getPolymorphismConfig()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Set collectIgnoredProperties(org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration)>(v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.JsonbConfigProperties getConfigProperties()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbConfigProperties: boolean getConfigFailOnUnknownProperties()>();
if v == 0 goto label;
v = new org.eclipse.yasson.internal.deserializer.JsonbCreatorDeserializer;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.JsonbCreatorDeserializer: void <init>(java.util.Map,java.util.Map,org.eclipse.yasson.internal.model.JsonbCreator,java.lang.Class,java.util.function.Function,boolean,java.util.Set)>(v, v, v, v, v, v, v);
v = v;
goto label;
label:
v = new org.eclipse.yasson.internal.deserializer.ObjectDeserializer;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.ObjectDeserializer: void <init>(java.util.Map,java.util.function.Function,java.lang.Class,boolean,java.util.Set)>(v, v, v, v, v);
v = new org.eclipse.yasson.internal.deserializer.DefaultObjectInstanceCreator;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.ClassModel: java.lang.reflect.Constructor getDefaultConstructor()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.DefaultObjectInstanceCreator: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.lang.Class,java.lang.reflect.Constructor)>(v, v, v);
v = v;
label:
v = new org.eclipse.yasson.internal.deserializer.PositionChecker;
v = newarray (jakarta.json.stream.JsonParser$Event)[1];
v = <jakarta.json.stream.JsonParser$Event: jakarta.json.stream.JsonParser$Event START_OBJECT>;
v[0] = v;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.PositionChecker: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.lang.reflect.Type,jakarta.json.stream.JsonParser$Event[])>(v, v, v);
v = v;
if v == null goto label;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration: boolean isInherited()>();
if v != 0 goto label;
v = new org.eclipse.yasson.internal.deserializer.InheritanceInstanceCreator;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.InheritanceInstanceCreator: void <init>(java.lang.Class,org.eclipse.yasson.internal.deserializer.DeserializationModelCreator,org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v, v);
v = new org.eclipse.yasson.internal.deserializer.PositionChecker;
v = newarray (jakarta.json.stream.JsonParser$Event)[1];
v = <jakarta.json.stream.JsonParser$Event: jakarta.json.stream.JsonParser$Event START_OBJECT>;
v[0] = v;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.PositionChecker: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.lang.reflect.Type,jakarta.json.stream.JsonParser$Event[])>(v, v, v);
v = v;
label:
v = new org.eclipse.yasson.internal.deserializer.NullCheckDeserializer;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.NullCheckDeserializer: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer createCollectionDeserializer(org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem, java.lang.Class, java.util.LinkedList, org.eclipse.yasson.internal.model.customization.Customization)
{
org.eclipse.yasson.internal.deserializer.CollectionDeserializer v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem v;
org.eclipse.yasson.internal.model.customization.ClassCustomization v;
java.util.Map v;
org.eclipse.yasson.internal.model.customization.Customization v;
org.eclipse.yasson.internal.deserializer.PositionChecker v;
java.util.LinkedList v;
boolean v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.model.ClassModel v;
jakarta.json.stream.JsonParser$Event[] v;
org.eclipse.yasson.internal.deserializer.NullCheckDeserializer v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v;
org.eclipse.yasson.internal.MappingContext v;
java.lang.reflect.Type v, v, v;
jakarta.json.stream.JsonParser$Event v;
java.lang.reflect.Type[] v;
org.eclipse.yasson.internal.deserializer.CollectionInstanceCreator v;
java.lang.Class v, v;
org.eclipse.yasson.internal.deserializer.JustReturn v, v;
org.eclipse.yasson.internal.JsonbContext v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem;
v := @parameter: java.lang.Class;
v := @parameter: java.util.LinkedList;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem: java.lang.reflect.Type type>;
v = v instanceof java.lang.reflect.ParameterizedType;
if v == 0 goto label;
v = interfaceinvoke v.<java.lang.reflect.ParameterizedType: java.lang.reflect.Type[] getActualTypeArguments()>();
v = v[0];
goto label;
label:
v = class "Ljava/lang/Object;";
label:
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.lang.reflect.Type resolveType(java.util.List,java.lang.reflect.Type)>(v, v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.MappingContext getMappingContext()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.lang.Class getRawType(java.lang.reflect.Type)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.MappingContext: org.eclipse.yasson.internal.model.ClassModel getOrCreateClassModel(java.lang.Class)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.ClassModel: org.eclipse.yasson.internal.model.customization.ClassCustomization getClassCustomization()>();
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeProcessor(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v, v);
v = new org.eclipse.yasson.internal.deserializer.CollectionDeserializer;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.CollectionDeserializer: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v);
v = new org.eclipse.yasson.internal.deserializer.CollectionInstanceCreator;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.CollectionInstanceCreator: void <init>(org.eclipse.yasson.internal.deserializer.CollectionDeserializer,java.lang.reflect.Type)>(v, v);
v = new org.eclipse.yasson.internal.deserializer.PositionChecker;
v = newarray (jakarta.json.stream.JsonParser$Event)[1];
v = <jakarta.json.stream.JsonParser$Event: jakarta.json.stream.JsonParser$Event START_ARRAY>;
v[0] = v;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.PositionChecker: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.lang.reflect.Type,jakarta.json.stream.JsonParser$Event[])>(v, v, v);
v = new org.eclipse.yasson.internal.deserializer.NullCheckDeserializer;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.NullCheckDeserializer: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer createMapDeserializer(org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem, java.lang.Class, java.util.LinkedList, org.eclipse.yasson.internal.model.customization.Customization)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem v;
org.eclipse.yasson.internal.model.customization.ClassCustomization v;
org.eclipse.yasson.internal.deserializer.MapDeserializer v;
java.util.Map v;
org.eclipse.yasson.internal.model.customization.Customization v;
org.eclipse.yasson.internal.deserializer.PositionChecker v;
java.util.LinkedList v;
boolean v, v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.deserializer.MapInstanceCreator v;
org.eclipse.yasson.internal.deserializer.NullCheckDeserializer v;
java.util.Set v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v, v;
java.lang.reflect.Type v, v, v, v;
org.eclipse.yasson.internal.JsonbConfigProperties v;
org.eclipse.yasson.internal.deserializer.PositionChecker$Checker v;
java.lang.reflect.Type[] v, v;
java.lang.Class v;
org.eclipse.yasson.internal.deserializer.JustReturn v, v, v;
org.eclipse.yasson.internal.JsonbContext v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem;
v := @parameter: java.lang.Class;
v := @parameter: java.util.LinkedList;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem: java.lang.reflect.Type type>;
v = v instanceof java.lang.reflect.ParameterizedType;
if v == 0 goto label;
v = interfaceinvoke v.<java.lang.reflect.ParameterizedType: java.lang.reflect.Type[] getActualTypeArguments()>();
v = v[0];
goto label;
label:
v = class "Ljava/lang/Object;";
label:
v = v;
v = v instanceof java.lang.reflect.ParameterizedType;
if v == 0 goto label;
v = interfaceinvoke v.<java.lang.reflect.ParameterizedType: java.lang.reflect.Type[] getActualTypeArguments()>();
v = v[1];
goto label;
label:
v = class "Ljava/lang/Object;";
label:
v = staticinvoke <org.eclipse.yasson.internal.model.customization.ClassCustomization: org.eclipse.yasson.internal.model.customization.ClassCustomization empty()>();
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
v = <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Set MAP_KEY_EVENTS>;
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeProcessor(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.util.Set)>(v, v, v, v, v);
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeProcessor(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v, v);
v = new org.eclipse.yasson.internal.deserializer.MapDeserializer;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.MapDeserializer: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v);
v = new org.eclipse.yasson.internal.deserializer.MapInstanceCreator;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.JsonbConfigProperties getConfigProperties()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.MapInstanceCreator: void <init>(org.eclipse.yasson.internal.deserializer.MapDeserializer,org.eclipse.yasson.internal.JsonbConfigProperties,java.lang.Class)>(v, v, v);
v = new org.eclipse.yasson.internal.deserializer.PositionChecker;
v = <org.eclipse.yasson.internal.deserializer.PositionChecker$Checker: org.eclipse.yasson.internal.deserializer.PositionChecker$Checker CONTAINER>;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.PositionChecker: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.lang.reflect.Type,org.eclipse.yasson.internal.deserializer.PositionChecker$Checker)>(v, v, v);
v = new org.eclipse.yasson.internal.deserializer.NullCheckDeserializer;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.NullCheckDeserializer: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer createArrayDeserializer(org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem, java.lang.Class, java.util.LinkedList, org.eclipse.yasson.internal.model.customization.Customization)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem v;
java.util.Map v;
org.eclipse.yasson.internal.model.customization.Customization v;
java.lang.String v, v;
java.util.LinkedList v;
boolean v, v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.deserializer.NullCheckDeserializer v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v, v, v, v;
org.eclipse.yasson.internal.JsonbConfigProperties v;
java.lang.Class v, v;
org.eclipse.yasson.internal.deserializer.JustReturn v, v, v;
org.eclipse.yasson.internal.JsonbContext v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem;
v := @parameter: java.lang.Class;
v := @parameter: java.util.LinkedList;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.JsonbConfigProperties getConfigProperties()>();
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(class "[B");
if v == 0 goto label;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbConfigProperties: java.lang.String getBinaryDataStrategy()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("BYTE");
if v != 0 goto label;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbConfigProperties: java.lang.String getBinaryDataStrategy()>();
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeProcessor(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, class "Ljava/lang/String;", v, v);
v = staticinvoke <org.eclipse.yasson.internal.deserializer.ArrayInstanceCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer createBase64Deserializer(java.lang.String,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v);
v = new org.eclipse.yasson.internal.deserializer.NullCheckDeserializer;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.NullCheckDeserializer: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeProcessor(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v, v);
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer createArrayCommonDeserializer(org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem,java.lang.Class,java.lang.Class,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v, v);
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer createGenericArray(org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem, java.lang.Class, java.util.LinkedList, org.eclipse.yasson.internal.model.customization.Customization)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v, v;
java.lang.reflect.Type v, v, v;
org.eclipse.yasson.internal.model.customization.Customization v;
java.lang.Class v, v;
org.eclipse.yasson.internal.deserializer.JustReturn v;
java.util.LinkedList v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem;
v := @parameter: java.lang.Class;
v := @parameter: java.util.LinkedList;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem: java.lang.reflect.Type type>;
v = interfaceinvoke v.<java.lang.reflect.GenericArrayType: java.lang.reflect.Type getGenericComponentType()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.lang.Class getRawType(java.lang.reflect.Type)>(v);
v = interfaceinvoke v.<java.lang.reflect.GenericArrayType: java.lang.reflect.Type getGenericComponentType()>();
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeProcessor(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v, v);
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer createArrayCommonDeserializer(org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem,java.lang.Class,java.lang.Class,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v, v);
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer createArrayCommonDeserializer(org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem, java.lang.Class, java.lang.Class, org.eclipse.yasson.internal.deserializer.ModelDeserializer)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem v;
jakarta.json.stream.JsonParser$Event[] v;
org.eclipse.yasson.internal.deserializer.NullCheckDeserializer v;
org.eclipse.yasson.internal.deserializer.ArrayDeserializer v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v;
jakarta.json.stream.JsonParser$Event v;
java.util.Map v;
org.eclipse.yasson.internal.deserializer.ArrayInstanceCreator v;
java.lang.Class v, v;
org.eclipse.yasson.internal.deserializer.JustReturn v;
org.eclipse.yasson.internal.deserializer.PositionChecker v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Class;
v := @parameter: org.eclipse.yasson.internal.deserializer.ModelDeserializer;
v = new org.eclipse.yasson.internal.deserializer.ArrayDeserializer;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.ArrayDeserializer: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v);
v = staticinvoke <org.eclipse.yasson.internal.deserializer.ArrayInstanceCreator: org.eclipse.yasson.internal.deserializer.ArrayInstanceCreator create(java.lang.Class,java.lang.Class,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v);
v = new org.eclipse.yasson.internal.deserializer.PositionChecker;
v = newarray (jakarta.json.stream.JsonParser$Event)[1];
v = <jakarta.json.stream.JsonParser$Event: jakarta.json.stream.JsonParser$Event START_ARRAY>;
v[0] = v;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.PositionChecker: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.lang.reflect.Type,jakarta.json.stream.JsonParser$Event[])>(v, v, v);
v = new org.eclipse.yasson.internal.deserializer.NullCheckDeserializer;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.NullCheckDeserializer: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
private org.eclipse.yasson.internal.deserializer.OptionalDeserializer createOptionalDeserializer(java.util.LinkedList, java.lang.reflect.Type, org.eclipse.yasson.internal.model.customization.Customization, org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v;
java.lang.reflect.Type v, v;
org.eclipse.yasson.internal.deserializer.OptionalDeserializer v;
java.util.Map v;
org.eclipse.yasson.internal.model.customization.Customization v;
java.lang.reflect.Type[] v;
org.eclipse.yasson.internal.deserializer.JustReturn v, v;
java.util.LinkedList v;
boolean v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.util.LinkedList;
v := @parameter: java.lang.reflect.Type;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v := @parameter: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem;
v = v instanceof java.lang.reflect.ParameterizedType;
if v == 0 goto label;
v = interfaceinvoke v.<java.lang.reflect.ParameterizedType: java.lang.reflect.Type[] getActualTypeArguments()>();
v = v[0];
goto label;
label:
v = class "Ljava/lang/Object;";
label:
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeProcessor(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v, v);
v = new org.eclipse.yasson.internal.deserializer.OptionalDeserializer;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.OptionalDeserializer: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v);
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map models>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
private java.util.Set collectIgnoredProperties(org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration)
{
java.util.HashSet v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration v, v;
java.lang.String v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
if v == null goto label;
v = v;
label:
if v == null goto label;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration: java.lang.String getFieldName()>();
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration getParentConfig()>();
goto label;
label:
return v;
}
private java.util.function.Function propertyRenamer()
{
jakarta.json.bind.JsonbConfig v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
java.util.function.Predicate v;
java.util.function.Function v;
java.util.Optional v, v;
org.eclipse.yasson.internal.JsonbContext v;
boolean v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: jakarta.json.bind.JsonbConfig getConfig()>();
v = virtualinvoke v.<jakarta.json.bind.JsonbConfig: java.util.Optional getProperty(java.lang.String)>("jsonb.property-naming-strategy");
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_propertyRenamer_14__469: java.util.function.Predicate bootstrap$()>();
v = virtualinvoke v.<java.util.Optional: java.util.Optional filter(java.util.function.Predicate)>(v);
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$toLowerCase__471: java.util.function.Function bootstrap$()>();
goto label;
label:
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_propertyRenamer_15__470: java.util.function.Function bootstrap$()>();
label:
return v;
}
private java.util.Optional adapterBinding(java.lang.reflect.Type, org.eclipse.yasson.internal.model.customization.ComponentBoundCustomization)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
java.lang.reflect.Type v;
org.eclipse.yasson.internal.model.customization.ComponentBoundCustomization v;
java.util.Optional v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.ComponentMatcher v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.lang.reflect.Type;
v := @parameter: org.eclipse.yasson.internal.model.customization.ComponentBoundCustomization;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.ComponentMatcher getComponentMatcher()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.ComponentMatcher: java.util.Optional getDeserializeAdapterBinding(java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.ComponentBoundCustomization)>(v, v);
return v;
}
private java.util.Optional userDeserializer(java.lang.reflect.Type, org.eclipse.yasson.internal.model.customization.ComponentBoundCustomization)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
java.lang.reflect.Type v;
org.eclipse.yasson.internal.model.customization.ComponentBoundCustomization v;
java.util.Optional v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.ComponentMatcher v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.lang.reflect.Type;
v := @parameter: org.eclipse.yasson.internal.model.customization.ComponentBoundCustomization;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.ComponentMatcher getComponentMatcher()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.ComponentMatcher: java.util.Optional getDeserializerBinding(java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.ComponentBoundCustomization)>(v, v);
return v;
}
private java.util.List creatorParamsList(org.eclipse.yasson.internal.model.JsonbCreator)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.model.CreatorModel[] v;
java.util.function.Function v;
java.util.stream.Stream v, v;
org.eclipse.yasson.internal.model.JsonbCreator v;
java.lang.Object v;
java.util.stream.Collector v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: org.eclipse.yasson.internal.model.JsonbCreator;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbCreator: org.eclipse.yasson.internal.model.CreatorModel[] getParams()>();
v = staticinvoke <java.util.Arrays: java.util.stream.Stream stream(java.lang.Object[])>(v);
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$getName__472: java.util.function.Function bootstrap$()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream map(java.util.function.Function)>(v);
v = staticinvoke <java.util.stream.Collectors: java.util.stream.Collector toList()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.lang.Object collect(java.util.stream.Collector)>(v);
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer memberTypeProcessor(java.util.LinkedList, org.eclipse.yasson.internal.model.PropertyModel, boolean)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.deserializer.ValueSetterDeserializer v;
java.lang.invoke.MethodHandle v;
org.eclipse.yasson.internal.model.PropertyModel v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v, v;
org.eclipse.yasson.internal.model.customization.PropertyCustomization v;
org.eclipse.yasson.internal.deserializer.DeferredDeserializer v;
java.lang.reflect.Type v;
java.util.LinkedList v;
boolean v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.util.LinkedList;
v := @parameter: org.eclipse.yasson.internal.model.PropertyModel;
v := @parameter: boolean;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.PropertyModel: java.lang.reflect.Type getPropertyDeserializationType()>();
v = new org.eclipse.yasson.internal.deserializer.ValueSetterDeserializer;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.PropertyModel: java.lang.invoke.MethodHandle getSetValueHandle()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.ValueSetterDeserializer: void <init>(java.lang.invoke.MethodHandle)>(v);
v = v;
if v == 0 goto label;
v = new org.eclipse.yasson.internal.deserializer.DeferredDeserializer;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeferredDeserializer: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v);
v = v;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.PropertyModel: org.eclipse.yasson.internal.model.customization.PropertyCustomization getCustomization()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeProcessor(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v, v, v);
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer typeProcessor(java.util.LinkedList, java.lang.reflect.Type, org.eclipse.yasson.internal.model.customization.Customization, org.eclipse.yasson.internal.deserializer.ModelDeserializer)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
java.util.Set v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v, v;
java.lang.reflect.Type v;
org.eclipse.yasson.internal.deserializer.PositionChecker$Checker v;
org.eclipse.yasson.internal.model.customization.Customization v;
java.util.LinkedList v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.util.LinkedList;
v := @parameter: java.lang.reflect.Type;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v := @parameter: org.eclipse.yasson.internal.deserializer.ModelDeserializer;
v = <org.eclipse.yasson.internal.deserializer.PositionChecker$Checker: org.eclipse.yasson.internal.deserializer.PositionChecker$Checker VALUES>;
v = virtualinvoke v.<org.eclipse.yasson.internal.deserializer.PositionChecker$Checker: java.util.Set getEvents()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeProcessor(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.util.Set)>(v, v, v, v, v);
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer typeProcessor(java.util.LinkedList, java.lang.reflect.Type, org.eclipse.yasson.internal.model.customization.Customization, org.eclipse.yasson.internal.deserializer.ModelDeserializer, java.util.Set)
{
org.eclipse.yasson.internal.deserializer.AdapterDeserializer v;
org.eclipse.yasson.internal.model.customization.Customization v;
java.util.LinkedList v;
jakarta.json.bind.serializer.JsonbDeserializer v;
boolean v, v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
java.util.Set v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v, v, v, v, v;
java.lang.reflect.Type v, v, v, v;
org.eclipse.yasson.internal.deserializer.UserDefinedDeserializer v;
java.util.Optional v, v;
java.lang.Class v, v, v;
java.lang.Object v, v;
org.eclipse.yasson.internal.deserializer.JustReturn v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.util.LinkedList;
v := @parameter: java.lang.reflect.Type;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v := @parameter: org.eclipse.yasson.internal.deserializer.ModelDeserializer;
v := @parameter: java.util.Set;
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.lang.reflect.Type resolveType(java.util.List,java.lang.reflect.Type)>(v, v);
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.lang.Class getRawType(java.lang.reflect.Type)>(v);
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Optional userDeserializer(java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.ComponentBoundCustomization)>(v, v);
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = new org.eclipse.yasson.internal.deserializer.UserDefinedDeserializer;
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.components.DeserializerBinding: jakarta.json.bind.serializer.JsonbDeserializer getJsonbDeserializer()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.UserDefinedDeserializer: void <init>(jakarta.json.bind.serializer.JsonbDeserializer,org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization)>(v, v, v, v);
return v;
label:
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Optional adapterBinding(java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.ComponentBoundCustomization)>(v, v);
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.components.AdapterBinding: java.lang.reflect.Type getToType()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.lang.Class getRawType(java.lang.reflect.Type)>(v);
v = staticinvoke <org.eclipse.yasson.internal.deserializer.JustReturn: org.eclipse.yasson.internal.deserializer.JustReturn instance()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeDeserializer(java.lang.Class,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.util.Set)>(v, v, v, v);
if v != null goto label;
v = virtualinvoke v.<org.eclipse.yasson.internal.components.AdapterBinding: java.lang.reflect.Type getToType()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer deserializerChain(java.lang.reflect.Type)>(v);
label:
v = new org.eclipse.yasson.internal.deserializer.AdapterDeserializer;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.AdapterDeserializer: void <init>(org.eclipse.yasson.internal.components.AdapterBinding,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v);
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_typeProcessor_16__473: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$(org.eclipse.yasson.internal.deserializer.ModelDeserializer,org.eclipse.yasson.internal.deserializer.AdapterDeserializer)>(v, v);
return v;
label:
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeDeserializer(java.lang.Class,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.util.Set)>(v, v, v, v);
if v != null goto label;
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.lang.Class resolveImplClass(java.lang.Class,org.eclipse.yasson.internal.model.customization.Customization)>(v, v);
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer createNewChain(java.util.LinkedList,org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.lang.Class,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization)>(v, v, v, v, v);
return v;
label:
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer createNewChain(java.util.LinkedList, org.eclipse.yasson.internal.deserializer.ModelDeserializer, java.lang.Class, java.lang.reflect.Type, org.eclipse.yasson.internal.model.customization.Customization)
{
org.eclipse.yasson.internal.deserializer.ContextSwitcher v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.model.ClassModel v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v, v;
org.eclipse.yasson.internal.MappingContext v;
java.lang.reflect.Type v;
org.eclipse.yasson.internal.model.customization.Customization v;
java.lang.Class v;
java.util.LinkedList v;
org.eclipse.yasson.internal.JsonbContext v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.util.LinkedList;
v := @parameter: org.eclipse.yasson.internal.deserializer.ModelDeserializer;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.reflect.Type;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.MappingContext getMappingContext()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.MappingContext: org.eclipse.yasson.internal.model.ClassModel getOrCreateClassModel(java.lang.Class)>(v);
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer deserializerChain(java.util.LinkedList,java.lang.reflect.Type,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.model.ClassModel)>(v, v, v, v);
v = new org.eclipse.yasson.internal.deserializer.ContextSwitcher;
specialinvoke v.<org.eclipse.yasson.internal.deserializer.ContextSwitcher: void <init>(org.eclipse.yasson.internal.deserializer.ModelDeserializer,org.eclipse.yasson.internal.deserializer.ModelDeserializer)>(v, v);
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer typeDeserializer(java.lang.Class, org.eclipse.yasson.internal.model.customization.Customization, org.eclipse.yasson.internal.deserializer.ModelDeserializer)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
org.eclipse.yasson.internal.deserializer.PositionChecker$Checker v;
org.eclipse.yasson.internal.model.customization.Customization v;
java.util.Set v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v, v;
java.lang.Class v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.lang.Class;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v := @parameter: org.eclipse.yasson.internal.deserializer.ModelDeserializer;
v = <org.eclipse.yasson.internal.deserializer.PositionChecker$Checker: org.eclipse.yasson.internal.deserializer.PositionChecker$Checker VALUES>;
v = virtualinvoke v.<org.eclipse.yasson.internal.deserializer.PositionChecker$Checker: java.util.Set getEvents()>();
v = specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer typeDeserializer(java.lang.Class,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.util.Set)>(v, v, v, v);
return v;
}
private org.eclipse.yasson.internal.deserializer.ModelDeserializer typeDeserializer(java.lang.Class, org.eclipse.yasson.internal.model.customization.Customization, org.eclipse.yasson.internal.deserializer.ModelDeserializer, java.util.Set)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
java.util.Set v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v, v;
org.eclipse.yasson.internal.JsonbConfigProperties v;
org.eclipse.yasson.internal.model.customization.Customization v;
java.lang.Class v;
org.eclipse.yasson.internal.JsonbContext v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.lang.Class;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v := @parameter: org.eclipse.yasson.internal.deserializer.ModelDeserializer;
v := @parameter: java.util.Set;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.JsonbConfigProperties getConfigProperties()>();
v = staticinvoke <org.eclipse.yasson.internal.deserializer.types.TypeDeserializers: org.eclipse.yasson.internal.deserializer.ModelDeserializer getTypeDeserializer(java.lang.Class,org.eclipse.yasson.internal.model.customization.Customization,org.eclipse.yasson.internal.JsonbConfigProperties,org.eclipse.yasson.internal.deserializer.ModelDeserializer,java.util.Set)>(v, v, v, v, v);
return v;
}
private java.lang.Class resolveImplClass(java.lang.Class, org.eclipse.yasson.internal.model.customization.Customization)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
java.lang.Object[] v;
org.eclipse.yasson.internal.properties.MessageKeys v;
org.eclipse.yasson.internal.JsonbConfigProperties v;
java.util.Map v;
org.eclipse.yasson.internal.model.customization.Customization v;
jakarta.json.bind.JsonbException v;
java.lang.Class v, v;
java.lang.Object v;
java.lang.String v;
org.eclipse.yasson.internal.JsonbContext v;
boolean v, v, v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.lang.Class;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v = virtualinvoke v.<java.lang.Class: boolean isInterface()>();
if v == 0 goto label;
v = null;
v = v instanceof org.eclipse.yasson.internal.model.customization.PropertyCustomization;
if v == 0 goto label;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.PropertyCustomization: java.lang.Class getImplementationClass()>();
label:
if v != null goto label;
v = v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.JsonbConfigProperties getConfigProperties()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbConfigProperties: java.util.Map getUserTypeMapping()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
label:
if v == null goto label;
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = new jakarta.json.bind.JsonbException;
v = <org.eclipse.yasson.internal.properties.MessageKeys: org.eclipse.yasson.internal.properties.MessageKeys IMPL_CLASS_INCOMPATIBLE>;
v = newarray (java.lang.Object)[2];
v[0] = v;
v[1] = v;
v = staticinvoke <org.eclipse.yasson.internal.properties.Messages: java.lang.String getMessage(org.eclipse.yasson.internal.properties.MessageKeys,java.lang.Object[])>(v, v);
specialinvoke v.<jakarta.json.bind.JsonbException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
label:
return v;
}
private org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem createCachedItem(java.lang.reflect.Type, org.eclipse.yasson.internal.model.customization.Customization)
{
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator v;
java.lang.reflect.Type v;
org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem v;
org.eclipse.yasson.internal.model.customization.Customization v;
org.eclipse.yasson.internal.JsonbDateFormatter v;
org.eclipse.yasson.internal.JsonbNumberFormatter v;
v := @this: org.eclipse.yasson.internal.deserializer.DeserializationModelCreator;
v := @parameter: java.lang.reflect.Type;
v := @parameter: org.eclipse.yasson.internal.model.customization.Customization;
v = new org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem;
v = interfaceinvoke v.<org.eclipse.yasson.internal.model.customization.Customization: org.eclipse.yasson.internal.JsonbNumberFormatter getDeserializeNumberFormatter()>();
v = interfaceinvoke v.<org.eclipse.yasson.internal.model.customization.Customization: org.eclipse.yasson.internal.JsonbDateFormatter getDeserializeDateFormatter()>();
specialinvoke v.<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$CachedItem: void <init>(java.lang.reflect.Type,org.eclipse.yasson.internal.JsonbNumberFormatter,org.eclipse.yasson.internal.JsonbDateFormatter)>(v, v, v);
return v;
}
static void <clinit>()
{
java.util.HashMap v;
java.util.HashSet v;
java.util.Map v;
java.util.Set v, v, v;
org.eclipse.yasson.internal.deserializer.ModelDeserializer v, v, v, v, v, v, v, v, v, v, v, v, v;
jakarta.json.stream.JsonParser$Event v;
org.eclipse.yasson.internal.deserializer.PositionChecker$Checker v;
java.lang.Class v, v, v, v, v, v, v, v;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_0__474: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: org.eclipse.yasson.internal.deserializer.ModelDeserializer NULL_PROVIDER> = v;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Set MAP_KEY_EVENTS> = v;
v = <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Set MAP_KEY_EVENTS>;
v = <jakarta.json.stream.JsonParser$Event: jakarta.json.stream.JsonParser$Event KEY_NAME>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Set MAP_KEY_EVENTS>;
v = <org.eclipse.yasson.internal.deserializer.PositionChecker$Checker: org.eclipse.yasson.internal.deserializer.PositionChecker$Checker VALUES>;
v = virtualinvoke v.<org.eclipse.yasson.internal.deserializer.PositionChecker$Checker: java.util.Set getEvents()>();
interfaceinvoke v.<java.util.Set: boolean addAll(java.util.Collection)>(v);
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = <java.lang.Byte: java.lang.Class TYPE>;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_1__475: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <java.lang.Short: java.lang.Class TYPE>;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_2__476: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <java.lang.Integer: java.lang.Class TYPE>;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_3__477: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <java.lang.Long: java.lang.Class TYPE>;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_4__478: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <java.lang.Float: java.lang.Class TYPE>;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_5__479: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <java.lang.Double: java.lang.Class TYPE>;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_6__480: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <java.lang.Character: java.lang.Class TYPE>;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_7__481: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <java.lang.Boolean: java.lang.Class TYPE>;
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_8__482: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_9__483: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/util/Optional;", v);
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_10__484: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/util/OptionalInt;", v);
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_11__485: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/util/OptionalLong;", v);
v = staticinvoke <org.eclipse.yasson.internal.deserializer.DeserializationModelCreator$lambda_static_12__486: org.eclipse.yasson.internal.deserializer.ModelDeserializer bootstrap$()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(class "Ljava/util/OptionalDouble;", v);
v = staticinvoke <java.util.Map: java.util.Map copyOf(java.util.Map)>(v);
<org.eclipse.yasson.internal.deserializer.DeserializationModelCreator: java.util.Map DEFAULT_CREATOR_VALUES> = v;
return;
}
}