public final class com.fasterxml.jackson.databind.util.ClassUtil extends java.lang.Object
{
private static final java.lang.Class CLS_OBJECT;
private static final java.lang.'annotation'.Annotation[] NO_ANNOTATIONS;
private static final com.fasterxml.jackson.databind.util.ClassUtil$Ctor[] NO_CTORS;
private static final java.util.Iterator EMPTY_ITERATOR;
public void <init>()
{
com.fasterxml.jackson.databind.util.ClassUtil v;
v := @this: com.fasterxml.jackson.databind.util.ClassUtil;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static java.util.Iterator emptyIterator()
{
java.util.Iterator v;
v = <com.fasterxml.jackson.databind.util.ClassUtil: java.util.Iterator EMPTY_ITERATOR>;
return v;
}
public static java.util.List findSuperTypes(com.fasterxml.jackson.databind.JavaType, java.lang.Class, boolean)
{
java.util.List v;
java.lang.Class v;
com.fasterxml.jackson.databind.JavaType v;
boolean v, v, v;
java.util.ArrayList v;
v := @parameter: com.fasterxml.jackson.databind.JavaType;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
if v == null goto label;
v = virtualinvoke v.<com.fasterxml.jackson.databind.JavaType: boolean hasRawClass(java.lang.Class)>(v);
if v != 0 goto label;
v = virtualinvoke v.<com.fasterxml.jackson.databind.JavaType: boolean hasRawClass(java.lang.Class)>(class "Ljava/lang/Object;");
if v == 0 goto label;
label:
v = staticinvoke <java.util.Collections: java.util.List emptyList()>();
return v;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>(int)>(8);
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void _addSuperTypes(com.fasterxml.jackson.databind.JavaType,java.lang.Class,java.util.Collection,boolean)>(v, v, v, v);
return v;
}
public static java.util.List findRawSuperTypes(java.lang.Class, java.lang.Class, boolean)
{
java.util.List v;
java.lang.Class v, v;
boolean v;
java.util.ArrayList v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
if v == null goto label;
if v == v goto label;
if v != class "Ljava/lang/Object;" goto label;
label:
v = staticinvoke <java.util.Collections: java.util.List emptyList()>();
return v;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>(int)>(8);
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void _addRawSuperTypes(java.lang.Class,java.lang.Class,java.util.Collection,boolean)>(v, v, v, v);
return v;
}
public static java.util.List findSuperClasses(java.lang.Class, java.lang.Class, boolean)
{
java.lang.Class v, v, v;
boolean v;
java.util.ArrayList v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>(int)>(8);
if v == null goto label;
if v == v goto label;
if v == 0 goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
v = v;
if v == null goto label;
if v == v goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
return v;
}
public static java.util.List findSuperTypes(java.lang.Class, java.lang.Class)
{
java.util.List v;
java.lang.Class v, v;
java.util.ArrayList v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Class;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>(int)>(8);
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.util.List findSuperTypes(java.lang.Class,java.lang.Class,java.util.List)>(v, v, v);
return v;
}
public static java.util.List findSuperTypes(java.lang.Class, java.lang.Class, java.util.List)
{
java.lang.Class v, v;
java.util.List v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Class;
v := @parameter: java.util.List;
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void _addRawSuperTypes(java.lang.Class,java.lang.Class,java.util.Collection,boolean)>(v, v, v, 0);
return v;
}
private static void _addSuperTypes(com.fasterxml.jackson.databind.JavaType, java.lang.Class, java.util.Collection, boolean)
{
java.util.Iterator v;
java.util.Collection v;
java.util.List v;
java.lang.Class v, v;
java.lang.Object v;
com.fasterxml.jackson.databind.JavaType v, v;
boolean v, v, v;
v := @parameter: com.fasterxml.jackson.databind.JavaType;
v := @parameter: java.lang.Class;
v := @parameter: java.util.Collection;
v := @parameter: boolean;
if v != null goto label;
return;
label:
v = virtualinvoke v.<com.fasterxml.jackson.databind.JavaType: java.lang.Class getRawClass()>();
if v == v goto label;
if v != class "Ljava/lang/Object;" goto label;
label:
return;
label:
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Collection: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
return;
label:
interfaceinvoke v.<java.util.Collection: boolean add(java.lang.Object)>(v);
label:
v = virtualinvoke v.<com.fasterxml.jackson.databind.JavaType: java.util.List getInterfaces()>();
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()>();
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void _addSuperTypes(com.fasterxml.jackson.databind.JavaType,java.lang.Class,java.util.Collection,boolean)>(v, v, v, 1);
goto label;
label:
v = virtualinvoke v.<com.fasterxml.jackson.databind.JavaType: com.fasterxml.jackson.databind.JavaType getSuperClass()>();
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void _addSuperTypes(com.fasterxml.jackson.databind.JavaType,java.lang.Class,java.util.Collection,boolean)>(v, v, v, 1);
return;
}
private static void _addRawSuperTypes(java.lang.Class, java.lang.Class, java.util.Collection, boolean)
{
java.util.Collection v;
java.lang.Class[] v;
int v, v;
java.lang.Class v, v, v, v;
boolean v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Class;
v := @parameter: java.util.Collection;
v := @parameter: boolean;
if v == v goto label;
if v == null goto label;
if v != class "Ljava/lang/Object;" goto label;
label:
return;
label:
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Collection: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
return;
label:
interfaceinvoke v.<java.util.Collection: boolean add(java.lang.Object)>(v);
label:
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Class[] _interfaces(java.lang.Class)>(v);
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void _addRawSuperTypes(java.lang.Class,java.lang.Class,java.util.Collection,boolean)>(v, v, v, 1);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void _addRawSuperTypes(java.lang.Class,java.lang.Class,java.util.Collection,boolean)>(v, v, v, 1);
return;
}
public static java.lang.String canBeABeanType(java.lang.Class)
{
java.lang.Class v, v;
boolean v, v, v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: boolean isAnnotation()>();
if v == 0 goto label;
return "annotation";
label:
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
return "array";
label:
v = class "Ljava/lang/Enum;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
return "enum";
label:
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
return "primitive";
label:
return null;
}
public static java.lang.String isLocalType(java.lang.Class, boolean)
{
java.lang.NullPointerException v;
int v;
java.lang.Class v, v;
java.lang.SecurityException v;
boolean v, v, v;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
label:
v = virtualinvoke v.<java.lang.Class: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isStatic(int)>(v);
if v != 0 goto label;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: boolean hasEnclosingMethod(java.lang.Class)>(v);
if v == 0 goto label;
label:
return "local/anonymous";
label:
if v != 0 goto label;
if v != 0 goto label;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Class getEnclosingClass(java.lang.Class)>(v);
if v == null goto label;
label:
return "non-static member class";
label:
v := @caughtexception;
goto label;
label:
v := @caughtexception;
label:
return null;
catch java.lang.SecurityException from label to label with label;
catch java.lang.SecurityException from label to label with label;
catch java.lang.NullPointerException from label to label with label;
catch java.lang.NullPointerException from label to label with label;
}
public static java.lang.Class getOuterClass(java.lang.Class)
{
int v;
java.lang.Class v, v;
java.lang.SecurityException v;
boolean v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isStatic(int)>(v);
if v != 0 goto label;
label:
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: boolean hasEnclosingMethod(java.lang.Class)>(v);
if v == 0 goto label;
label:
return null;
label:
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Class getEnclosingClass(java.lang.Class)>(v);
label:
return v;
label:
v := @caughtexception;
label:
return null;
catch java.lang.SecurityException from label to label with label;
catch java.lang.SecurityException from label to label with label;
}
public static boolean isProxyType(java.lang.Class)
{
java.lang.Class v;
java.lang.String v;
boolean v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("net.sf.cglib.proxy.");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("org.hibernate.proxy.");
if v == 0 goto label;
label:
return 1;
label:
return 0;
}
public static boolean isConcrete(java.lang.Class)
{
int v, v;
java.lang.Class v;
boolean v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: int getModifiers()>();
v = v & 1536;
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean isConcrete(java.lang.reflect.Member)
{
java.lang.reflect.Member v;
int v, v;
boolean v;
v := @parameter: java.lang.reflect.Member;
v = interfaceinvoke v.<java.lang.reflect.Member: int getModifiers()>();
v = v & 1536;
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean isCollectionMapOrArray(java.lang.Class)
{
java.lang.Class v, v, v;
boolean v, v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
return 1;
label:
v = class "Ljava/util/Collection;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
return 1;
label:
v = class "Ljava/util/Map;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
return 1;
label:
return 0;
}
public static boolean isBogusClass(java.lang.Class)
{
java.lang.Class v, v;
boolean v;
v := @parameter: java.lang.Class;
if v == class "Ljava/lang/Void;" goto label;
v = <java.lang.Void: java.lang.Class TYPE>;
if v == v goto label;
if v != class "Lcom/fasterxml/jackson/databind/annotation/NoClass;" goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean isRecordType(java.lang.Class)
{
java.lang.Class v, v;
java.lang.String v, v;
boolean v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
if v == null goto label;
v = "java.lang.Record";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean isObjectOrPrimitive(java.lang.Class)
{
java.lang.Class v, v;
boolean v, v;
v := @parameter: java.lang.Class;
v = <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Class CLS_OBJECT>;
if v == v goto label;
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean hasClass(java.lang.Object, java.lang.Class)
{
java.lang.Class v, v;
java.lang.Object v;
boolean v;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Class;
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
if v != v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static void verifyMustOverride(java.lang.Class, java.lang.Object, java.lang.String)
{
java.lang.IllegalStateException v;
java.lang.Object[] v;
java.lang.Class v, v, v;
java.lang.Object v;
java.lang.String v, v, v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
if v == v goto label;
v = new java.lang.IllegalStateException;
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v[0] = v;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v[1] = v;
v[2] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Sub-class %s (of class %s) must override method \'%s\'", v);
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
public static boolean hasGetterSignature(java.lang.reflect.Method)
{
int v, v;
java.lang.Class[] v;
java.lang.Class v, v;
java.lang.reflect.Method v;
boolean v;
v := @parameter: java.lang.reflect.Method;
v = virtualinvoke v.<java.lang.reflect.Method: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isStatic(int)>(v);
if v == 0 goto label;
return 0;
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
if v == null goto label;
v = lengthof v;
if v == 0 goto label;
return 0;
label:
v = <java.lang.Void: java.lang.Class TYPE>;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getReturnType()>();
if v != v goto label;
return 0;
label:
return 1;
}
public static java.lang.Throwable throwIfError(java.lang.Throwable)
{
java.lang.Throwable v;
boolean v;
v := @parameter: java.lang.Throwable;
v = v instanceof java.lang.Error;
if v == 0 goto label;
throw v;
label:
return v;
}
public static java.lang.Throwable throwIfRTE(java.lang.Throwable)
{
java.lang.Throwable v;
boolean v;
v := @parameter: java.lang.Throwable;
v = v instanceof java.lang.RuntimeException;
if v == 0 goto label;
throw v;
label:
return v;
}
public static java.lang.Throwable throwIfIOE(java.lang.Throwable) throws java.io.IOException
{
java.lang.Throwable v;
boolean v;
v := @parameter: java.lang.Throwable;
v = v instanceof java.io.IOException;
if v == 0 goto label;
throw v;
label:
return v;
}
public static java.lang.Throwable getRootCause(java.lang.Throwable)
{
java.lang.Throwable v, v;
v := @parameter: java.lang.Throwable;
label:
v = virtualinvoke v.<java.lang.Throwable: java.lang.Throwable getCause()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.Throwable: java.lang.Throwable getCause()>();
goto label;
label:
return v;
}
public static java.lang.Throwable throwRootCauseIfIOE(java.lang.Throwable) throws java.io.IOException
{
java.lang.Throwable v, v, v;
v := @parameter: java.lang.Throwable;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Throwable getRootCause(java.lang.Throwable)>(v);
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Throwable throwIfIOE(java.lang.Throwable)>(v);
return v;
}
public static void throwAsIAE(java.lang.Throwable)
{
java.lang.Throwable v;
java.lang.String v;
v := @parameter: java.lang.Throwable;
v = virtualinvoke v.<java.lang.Throwable: java.lang.String getMessage()>();
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void throwAsIAE(java.lang.Throwable,java.lang.String)>(v, v);
return;
}
public static void throwAsIAE(java.lang.Throwable, java.lang.String)
{
java.lang.Throwable v;
java.lang.String v;
java.lang.IllegalArgumentException v;
v := @parameter: java.lang.Throwable;
v := @parameter: java.lang.String;
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Throwable throwIfRTE(java.lang.Throwable)>(v);
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Throwable throwIfError(java.lang.Throwable)>(v);
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
}
public static java.lang.Object throwAsMappingException(com.fasterxml.jackson.databind.DeserializationContext, java.io.IOException) throws com.fasterxml.jackson.databind.JsonMappingException
{
com.fasterxml.jackson.databind.DeserializationContext v;
java.io.IOException v;
com.fasterxml.jackson.databind.JsonMappingException v, v;
java.lang.String v;
boolean v;
v := @parameter: com.fasterxml.jackson.databind.DeserializationContext;
v := @parameter: java.io.IOException;
v = v instanceof com.fasterxml.jackson.databind.JsonMappingException;
if v == 0 goto label;
throw v;
label:
v = virtualinvoke v.<java.io.IOException: java.lang.String getMessage()>();
v = staticinvoke <com.fasterxml.jackson.databind.JsonMappingException: com.fasterxml.jackson.databind.JsonMappingException 'from'(com.fasterxml.jackson.databind.DeserializationContext,java.lang.String)>(v, v);
v = virtualinvoke v.<com.fasterxml.jackson.databind.JsonMappingException: com.fasterxml.jackson.databind.JsonMappingException withCause(java.lang.Throwable)>(v);
throw v;
}
public static void unwrapAndThrowAsIAE(java.lang.Throwable)
{
java.lang.Throwable v, v;
v := @parameter: java.lang.Throwable;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Throwable getRootCause(java.lang.Throwable)>(v);
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void throwAsIAE(java.lang.Throwable)>(v);
return;
}
public static void unwrapAndThrowAsIAE(java.lang.Throwable, java.lang.String)
{
java.lang.Throwable v, v;
java.lang.String v;
v := @parameter: java.lang.Throwable;
v := @parameter: java.lang.String;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Throwable getRootCause(java.lang.Throwable)>(v);
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void throwAsIAE(java.lang.Throwable,java.lang.String)>(v, v);
return;
}
public static void closeOnFailAndThrowAsIOE(com.fasterxml.jackson.core.JsonGenerator, java.lang.Exception) throws java.io.IOException
{
com.fasterxml.jackson.core.JsonGenerator$Feature v;
com.fasterxml.jackson.core.JsonGenerator v;
java.lang.RuntimeException v;
java.lang.Exception v;
v := @parameter: com.fasterxml.jackson.core.JsonGenerator;
v := @parameter: java.lang.Exception;
v = <com.fasterxml.jackson.core.JsonGenerator$Feature: com.fasterxml.jackson.core.JsonGenerator$Feature AUTO_CLOSE_JSON_CONTENT>;
virtualinvoke v.<com.fasterxml.jackson.core.JsonGenerator: com.fasterxml.jackson.core.JsonGenerator disable(com.fasterxml.jackson.core.JsonGenerator$Feature)>(v);
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Throwable throwIfIOE(java.lang.Throwable)>(v);
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Throwable throwIfRTE(java.lang.Throwable)>(v);
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.Throwable)>(v);
throw v;
}
public static void closeOnFailAndThrowAsIOE(com.fasterxml.jackson.core.JsonGenerator, java.io.Closeable, java.lang.Exception) throws java.io.IOException
{
com.fasterxml.jackson.core.JsonGenerator$Feature v;
com.fasterxml.jackson.core.JsonGenerator v;
java.io.Closeable v;
java.lang.RuntimeException v;
java.lang.Exception v;
v := @parameter: com.fasterxml.jackson.core.JsonGenerator;
v := @parameter: java.io.Closeable;
v := @parameter: java.lang.Exception;
if v == null goto label;
v = <com.fasterxml.jackson.core.JsonGenerator$Feature: com.fasterxml.jackson.core.JsonGenerator$Feature AUTO_CLOSE_JSON_CONTENT>;
virtualinvoke v.<com.fasterxml.jackson.core.JsonGenerator: com.fasterxml.jackson.core.JsonGenerator disable(com.fasterxml.jackson.core.JsonGenerator$Feature)>(v);
label:
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Throwable throwIfIOE(java.lang.Throwable)>(v);
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Throwable throwIfRTE(java.lang.Throwable)>(v);
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.Throwable)>(v);
throw v;
}
public static java.lang.Object createInstance(java.lang.Class, boolean) throws java.lang.IllegalArgumentException
{
java.lang.Object[] v;
java.lang.IllegalArgumentException v;
java.lang.reflect.Constructor v;
java.lang.Exception v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v, v, v, v, v;
boolean v;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.reflect.Constructor findConstructor(java.lang.Class,boolean)>(v, v);
if v != null goto label;
v = new java.lang.IllegalArgumentException;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Class \u has no default (no arg) constructor");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = newarray (java.lang.Object)[0];
v = virtualinvoke v.<java.lang.reflect.Constructor: java.lang.Object newInstance(java.lang.Object[])>(v);
label:
return v;
label:
v := @caughtexception;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.Exception: java.lang.String getMessage()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Failed to instantiate class \u, problem: \u0001");
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void unwrapAndThrowAsIAE(java.lang.Throwable,java.lang.String)>(v, v);
return null;
catch java.lang.Exception from label to label with label;
}
public static java.lang.reflect.Constructor findConstructor(java.lang.Class, boolean) throws java.lang.IllegalArgumentException
{
java.lang.NoSuchMethodException v;
java.lang.Class[] v;
java.lang.IllegalArgumentException v;
java.lang.reflect.Constructor v;
java.lang.Exception v;
int v;
java.lang.Class v;
java.lang.String v, v, v, v, v;
boolean v, v;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
label:
v = newarray (java.lang.Class)[0];
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Constructor getDeclaredConstructor(java.lang.Class[])>(v);
if v == 0 goto label;
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void checkAndFixAccess(java.lang.reflect.Member,boolean)>(v, v);
goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Constructor: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Default constructor for \u is not accessible (non-public?): not allowed to try modify access via Reflection: cannot instantiate type");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
label:
v := @caughtexception;
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.Exception: java.lang.String getMessage()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Failed to find default constructor of class \u, problem: \u0001");
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void unwrapAndThrowAsIAE(java.lang.Throwable,java.lang.String)>(v, v);
label:
return null;
catch java.lang.NoSuchMethodException from label to label with label;
catch java.lang.Exception from label to label with label;
}
public static java.lang.Class classOf(java.lang.Object)
{
java.lang.Class v;
java.lang.Object v;
v := @parameter: java.lang.Object;
if v != null goto label;
return null;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
return v;
}
public static java.lang.Class rawClass(com.fasterxml.jackson.databind.JavaType)
{
java.lang.Class v;
com.fasterxml.jackson.databind.JavaType v;
v := @parameter: com.fasterxml.jackson.databind.JavaType;
if v != null goto label;
return null;
label:
v = virtualinvoke v.<com.fasterxml.jackson.databind.JavaType: java.lang.Class getRawClass()>();
return v;
}
public static java.lang.Object nonNull(java.lang.Object, java.lang.Object)
{
java.lang.Object v, v, v;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
if v != null goto label;
v = v;
goto label;
label:
v = v;
label:
return v;
}
public static java.lang.String nullOrToString(java.lang.Object)
{
java.lang.Object v;
java.lang.String v;
v := @parameter: java.lang.Object;
if v != null goto label;
return null;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
return v;
}
public static java.lang.String nonNullString(java.lang.String)
{
java.lang.String v;
v := @parameter: java.lang.String;
if v != null goto label;
return "";
label:
return v;
}
public static java.lang.String quotedOr(java.lang.Object, java.lang.String)
{
java.lang.Object[] v;
java.lang.Object v;
java.lang.String v, v;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
if v != null goto label;
return v;
label:
v = newarray (java.lang.Object)[1];
v[0] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("\"%s\"", v);
return v;
}
public static java.lang.String getClassDescription(java.lang.Object)
{
java.lang.Object v;
java.lang.String v;
boolean v;
v := @parameter: java.lang.Object;
if v != null goto label;
return "unknown";
label:
v = v instanceof java.lang.Class;
if v != 0 goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.String nameOf(java.lang.Class)>(v);
return v;
}
public static java.lang.String getTypeDescription(com.fasterxml.jackson.databind.JavaType)
{
java.lang.StringBuilder v, v;
com.fasterxml.jackson.databind.JavaType v;
java.lang.String v, v;
v := @parameter: com.fasterxml.jackson.databind.JavaType;
if v != null goto label;
return "[null]";
label:
specialinvoke v.<java.lang.StringBuilder: void <init>(int)>(80);
v = virtualinvoke v.<com.fasterxml.jackson.databind.JavaType: java.lang.String toCanonical()>();
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String ()>() <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("``");
return v;
}
public static java.lang.String classNameOf(java.lang.Object)
{
java.lang.Object v;
java.lang.String v;
boolean v;
v := @parameter: java.lang.Object;
if v != null goto label;
return "[null]";
label:
v = v instanceof java.lang.Class;
if v != 0 goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.String nameOf(java.lang.Class)>(v);
return v;
}
public static java.lang.String nameOf(java.lang.Class)
{
int v;
java.lang.Class v;
java.lang.StringBuilder v;
java.lang.String v, v, v;
boolean v, v;
v := @parameter: java.lang.Class;
if v != null goto label;
return "[null]";
label:
v = 0;
label:
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = v + 1;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
goto label;
label:
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
goto label;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
label:
v = v;
if v <= 0 goto label;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>(java.lang.String)>(v);
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("[]");
v = v - 1;
if v > 0 goto label;
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
label:
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.String backticked(java.lang.String)>(v);
return v;
}
public static java.lang.String nameOf(com.fasterxml.jackson.databind.util.Named)
{
com.fasterxml.jackson.databind.util.Named v;
java.lang.String v, v;
v := @parameter: com.fasterxml.jackson.databind.util.Named;
if v != null goto label;
return "[null]";
label:
v = interfaceinvoke v.<com.fasterxml.jackson.databind.util.Named: java.lang.String getName()>();
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.String apostrophed(java.lang.String)>(v);
return v;
}
public static java.lang.String name(java.lang.String)
{
java.lang.String v, v;
v := @parameter: java.lang.String;
if v != null goto label;
return "[null]";
label:
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.String apostrophed(java.lang.String)>(v);
return v;
}
public static java.lang.String name(com.fasterxml.jackson.databind.PropertyName)
{
java.lang.String v, v;
com.fasterxml.jackson.databind.PropertyName v;
v := @parameter: com.fasterxml.jackson.databind.PropertyName;
if v != null goto label;
return "[null]";
label:
v = virtualinvoke v.<com.fasterxml.jackson.databind.PropertyName: java.lang.String getSimpleName()>();
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.String apostrophed(java.lang.String)>(v);
return v;
}
public static java.lang.String backticked(java.lang.String)
{
int v, v;
java.lang.StringBuilder v;
java.lang.String v, v;
v := @parameter: java.lang.String;
if v != null goto label;
return "[null]";
label:
v = virtualinvoke v.<java.lang.String: int length()>();
v = v + 2;
specialinvoke v.<java.lang.StringBuilder: void <init>(int)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("`\u0001`");
return v;
}
public static java.lang.String apostrophed(java.lang.String)
{
int v, v;
java.lang.StringBuilder v;
java.lang.String v, v;
v := @parameter: java.lang.String;
if v != null goto label;
return "[null]";
label:
v = virtualinvoke v.<java.lang.String: int length()>();
v = v + 2;
specialinvoke v.<java.lang.StringBuilder: void <init>(int)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\'\u0001\'");
return v;
}
public static java.lang.String exceptionMessage(java.lang.Throwable)
{
java.lang.Throwable v, v, v;
java.lang.String v, v, v;
boolean v, v;
v := @parameter: java.lang.Throwable;
v = v instanceof com.fasterxml.jackson.core.JacksonException;
if v == 0 goto label;
v = virtualinvoke v.<com.fasterxml.jackson.core.JacksonException: java.lang.String getOriginalMessage()>();
return v;
label:
v = v instanceof java.lang.reflect.InvocationTargetException;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Throwable: java.lang.Throwable getCause()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.Throwable: java.lang.Throwable getCause()>();
v = virtualinvoke v.<java.lang.Throwable: java.lang.String getMessage()>();
return v;
label:
v = virtualinvoke v.<java.lang.Throwable: java.lang.String getMessage()>();
return v;
}
public static java.lang.Object defaultValue(java.lang.Class)
{
java.lang.Float v;
java.lang.Double v;
java.lang.Integer v;
java.lang.Character v;
java.lang.Long v;
java.lang.Short v;
java.lang.Boolean v;
java.lang.String v, v;
java.lang.Byte v;
java.lang.IllegalArgumentException v;
java.lang.Class v, v, v, v, v, v, v, v, v;
v := @parameter: java.lang.Class;
v = <java.lang.Integer: java.lang.Class TYPE>;
if v != v goto label;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(0);
return v;
label:
v = <java.lang.Long: java.lang.Class TYPE>;
if v != v goto label;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(0L);
return v;
label:
v = <java.lang.Boolean: java.lang.Class TYPE>;
if v != v goto label;
v = <java.lang.Boolean: java.lang.Boolean FALSE>;
return v;
label:
v = <java.lang.Double: java.lang.Class TYPE>;
if v != v goto label;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(0.0);
return v;
label:
v = <java.lang.Float: java.lang.Class TYPE>;
if v != v goto label;
v = staticinvoke <java.lang.Float: java.lang.Float valueOf(float)>(0.0F);
return v;
label:
v = <java.lang.Byte: java.lang.Class TYPE>;
if v != v goto label;
v = staticinvoke <java.lang.Byte: java.lang.Byte valueOf(byte)>(0);
return v;
label:
v = <java.lang.Short: java.lang.Class TYPE>;
if v != v goto label;
v = staticinvoke <java.lang.Short: java.lang.Short valueOf(short)>(0);
return v;
label:
v = <java.lang.Character: java.lang.Class TYPE>;
if v != v goto label;
v = staticinvoke <java.lang.Character: java.lang.Character valueOf(char)>(0);
return v;
label:
v = new java.lang.IllegalArgumentException;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Class \u is not a primitive type");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
}
public static java.lang.Class wrapperType(java.lang.Class)
{
java.lang.IllegalArgumentException v;
java.lang.Class v, v, v, v, v, v, v, v, v;
java.lang.String v, v;
v := @parameter: java.lang.Class;
v = <java.lang.Integer: java.lang.Class TYPE>;
if v != v goto label;
return class "Ljava/lang/Integer;";
label:
v = <java.lang.Long: java.lang.Class TYPE>;
if v != v goto label;
return class "Ljava/lang/Long;";
label:
v = <java.lang.Boolean: java.lang.Class TYPE>;
if v != v goto label;
return class "Ljava/lang/Boolean;";
label:
v = <java.lang.Double: java.lang.Class TYPE>;
if v != v goto label;
return class "Ljava/lang/Double;";
label:
v = <java.lang.Float: java.lang.Class TYPE>;
if v != v goto label;
return class "Ljava/lang/Float;";
label:
v = <java.lang.Byte: java.lang.Class TYPE>;
if v != v goto label;
return class "Ljava/lang/Byte;";
label:
v = <java.lang.Short: java.lang.Class TYPE>;
if v != v goto label;
return class "Ljava/lang/Short;";
label:
v = <java.lang.Character: java.lang.Class TYPE>;
if v != v goto label;
return class "Ljava/lang/Character;";
label:
v = new java.lang.IllegalArgumentException;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Class \u is not a primitive type");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
}
public static java.lang.Class primitiveType(java.lang.Class)
{
java.lang.Class v, v, v, v, v, v, v, v, v;
boolean v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
return v;
label:
if v != class "Ljava/lang/Integer;" goto label;
v = <java.lang.Integer: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Long;" goto label;
v = <java.lang.Long: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Boolean;" goto label;
v = <java.lang.Boolean: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Double;" goto label;
v = <java.lang.Double: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Float;" goto label;
v = <java.lang.Float: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Byte;" goto label;
v = <java.lang.Byte: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Short;" goto label;
v = <java.lang.Short: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Character;" goto label;
v = <java.lang.Character: java.lang.Class TYPE>;
return v;
label:
return null;
}
public static void checkAndFixAccess(java.lang.reflect.Member)
{
java.lang.reflect.Member v;
v := @parameter: java.lang.reflect.Member;
staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: void checkAndFixAccess(java.lang.reflect.Member,boolean)>(v, 0);
return;
}
public static void checkAndFixAccess(java.lang.reflect.Member, boolean)
{
java.lang.SecurityException v;
boolean v, v, v, v, v, v, v;
java.lang.reflect.Member v;
java.lang.Object[] v;
int v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v;
java.lang.RuntimeException v;
java.lang.IllegalArgumentException v, v;
java.lang.Class v, v, v, v, v, v;
v := @parameter: java.lang.reflect.Member;
v := @parameter: boolean;
label:
v = interfaceinvoke v.<java.lang.reflect.Member: java.lang.Class getDeclaringClass()>();
v = interfaceinvoke v.<java.lang.reflect.Member: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Class: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
if v == 0 goto label;
if v == 0 goto label;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: boolean isJDKClass(java.lang.Class)>(v);
if v != 0 goto label;
label:
virtualinvoke v.<java.lang.reflect.AccessibleObject: void setAccessible(boolean)>(1);
label:
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<java.lang.reflect.AccessibleObject: boolean isAccessible()>();
if v != 0 goto label;
v = interfaceinvoke v.<java.lang.reflect.Member: java.lang.Class getDeclaringClass()>();
v = new java.lang.IllegalArgumentException;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.SecurityException: java.lang.String getMessage()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.reflect.Member,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Cannot access \u (from class \u; failed to set access: \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v := @caughtexception;
v = "InaccessibleObjectException";
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
v = newarray (java.lang.Object)[5];
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v[0] = v;
v = interfaceinvoke v.<java.lang.reflect.Member: java.lang.String getName()>();
v[1] = v;
v = interfaceinvoke v.<java.lang.reflect.Member: java.lang.Class getDeclaringClass()>();
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.String nameOf(java.lang.Class)>(v);
v[2] = v;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v[3] = v;
v = virtualinvoke v.<java.lang.RuntimeException: java.lang.String getMessage()>();
v[4] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Failed to call `setAccess()` on %s \'%s\' (of class %s) due to `%s`, problem: %s", v);
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
throw v;
label:
return;
catch java.lang.SecurityException from label to label with label;
catch java.lang.RuntimeException from label to label with label;
}
public static boolean isEnumType(java.lang.Class)
{
java.lang.Class v, v;
boolean v;
v := @parameter: java.lang.Class;
v = class "Ljava/lang/Enum;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
return v;
}
public static java.lang.Class findEnumType(java.util.EnumSet)
{
com.fasterxml.jackson.databind.util.ClassUtil$EnumTypeLocator v;
java.util.Iterator v;
java.lang.Class v, v;
java.lang.Object v;
java.util.EnumSet v;
boolean v;
v := @parameter: java.util.EnumSet;
v = virtualinvoke v.<java.util.EnumSet: boolean isEmpty()>();
if v != 0 goto label;
v = virtualinvoke v.<java.util.EnumSet: java.util.Iterator iterator()>();
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Class findEnumType(java.lang.Enum)>(v);
return v;
label:
v = <com.fasterxml.jackson.databind.util.ClassUtil$EnumTypeLocator: com.fasterxml.jackson.databind.util.ClassUtil$EnumTypeLocator instance>;
v = virtualinvoke v.<com.fasterxml.jackson.databind.util.ClassUtil$EnumTypeLocator: java.lang.Class enumTypeFor(java.util.EnumSet)>(v);
return v;
}
public static java.lang.Class findEnumType(java.util.EnumMap)
{
com.fasterxml.jackson.databind.util.ClassUtil$EnumTypeLocator v;
java.util.Iterator v;
java.util.EnumMap v;
java.util.Set v;
java.lang.Class v, v;
java.lang.Object v;
boolean v;
v := @parameter: java.util.EnumMap;
v = virtualinvoke v.<java.util.EnumMap: boolean isEmpty()>();
if v != 0 goto label;
v = virtualinvoke v.<java.util.EnumMap: java.util.Set keySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Class findEnumType(java.lang.Enum)>(v);
return v;
label:
v = <com.fasterxml.jackson.databind.util.ClassUtil$EnumTypeLocator: com.fasterxml.jackson.databind.util.ClassUtil$EnumTypeLocator instance>;
v = virtualinvoke v.<com.fasterxml.jackson.databind.util.ClassUtil$EnumTypeLocator: java.lang.Class enumTypeFor(java.util.EnumMap)>(v);
return v;
}
public static java.lang.Class findEnumType(java.lang.Enum)
{
java.lang.Class v;
java.lang.Enum v;
v := @parameter: java.lang.Enum;
v = virtualinvoke v.<java.lang.Enum: java.lang.Class getDeclaringClass()>();
return v;
}
public static java.lang.Class findEnumType(java.lang.Class)
{
java.lang.Class v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
if v == class "Ljava/lang/Enum;" goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
label:
return v;
}
public static java.lang.Enum findFirstAnnotatedEnumValue(java.lang.Class, java.lang.Class)
{
java.lang.Object[] v;
java.lang.reflect.Field v;
java.lang.reflect.Field[] v;
java.lang.Enum v;
int v, v, v, v;
java.lang.'annotation'.Annotation v;
java.lang.Class v, v;
java.lang.String v, v;
boolean v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Field[] getDeclaredFields()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.reflect.Field: boolean isEnumConstant()>();
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Field: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(v);
if v == null goto label;
v = virtualinvoke v.<java.lang.reflect.Field: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.Class: java.lang.Object[] getEnumConstants()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.Enum: java.lang.String name()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
return v;
label:
v = v + 1;
goto label;
label:
v = v + 1;
goto label;
label:
return null;
}
public static boolean isJacksonStdImpl(java.lang.Object)
{
java.lang.Class v;
java.lang.Object v;
boolean v, v;
v := @parameter: java.lang.Object;
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: boolean isJacksonStdImpl(java.lang.Class)>(v);
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean isJacksonStdImpl(java.lang.Class)
{
java.lang.'annotation'.Annotation v;
java.lang.Class v;
boolean v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lcom/fasterxml/jackson/databind/annotation/JacksonStdImpl;");
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean isJDKClass(java.lang.Class)
{
java.lang.Class v;
java.lang.String v;
boolean v, v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("java.");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("javax.");
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean isNonStaticInnerClass(java.lang.Class)
{
int v;
java.lang.Class v, v;
boolean v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isStatic(int)>(v);
if v != 0 goto label;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Class getEnclosingClass(java.lang.Class)>(v);
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static java.lang.String getPackageName(java.lang.Class)
{
java.lang.Class v;
java.lang.String v;
java.lang.Package v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.Package getPackage()>();
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Package: java.lang.String getName()>();
label:
return v;
}
public static boolean hasEnclosingMethod(java.lang.Class)
{
java.lang.Class v;
java.lang.reflect.Method v;
boolean v, v;
v := @parameter: java.lang.Class;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: boolean isObjectOrPrimitive(java.lang.Class)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getEnclosingMethod()>();
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static java.lang.reflect.Field[] getDeclaredFields(java.lang.Class)
{
java.lang.reflect.Field[] v;
java.lang.Class v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Field[] getDeclaredFields()>();
return v;
}
public static java.lang.reflect.Method[] getDeclaredMethods(java.lang.Class)
{
java.lang.Class v;
java.lang.reflect.Method[] v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method[] getDeclaredMethods()>();
return v;
}
public static java.lang.'annotation'.Annotation[] findClassAnnotations(java.lang.Class)
{
java.lang.Class v;
java.lang.'annotation'.Annotation[] v, v;
boolean v;
v := @parameter: java.lang.Class;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: boolean isObjectOrPrimitive(java.lang.Class)>(v);
if v == 0 goto label;
v = <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.'annotation'.Annotation[] NO_ANNOTATIONS>;
return v;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation[] getDeclaredAnnotations()>();
return v;
}
public static java.lang.reflect.Method[] getClassMethods(java.lang.Class)
{
java.lang.Throwable v, v;
java.lang.reflect.Method[] v, v, v, v, v, v;
java.lang.Thread v;
java.lang.Class v, v;
java.lang.ClassNotFoundException v;
java.lang.ClassLoader v;
java.lang.String v;
java.lang.NoClassDefFoundError v;
v := @parameter: java.lang.Class;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method[] getDeclaredMethods()>();
label:
return v;
label:
v := @caughtexception;
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
v = virtualinvoke v.<java.lang.Thread: java.lang.ClassLoader getContextClassLoader()>();
if v != null goto label;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.reflect.Method[] _failGetClassMethods(java.lang.Class,java.lang.Throwable)>(v, v);
return v;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.ClassLoader: java.lang.Class loadClass(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
virtualinvoke v.<java.lang.NoClassDefFoundError: void addSuppressed(java.lang.Throwable)>(v);
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.reflect.Method[] _failGetClassMethods(java.lang.Class,java.lang.Throwable)>(v, v);
return v;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method[] getDeclaredMethods()>();
label:
return v;
label:
v := @caughtexception;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.reflect.Method[] _failGetClassMethods(java.lang.Class,java.lang.Throwable)>(v, v);
return v;
label:
v := @caughtexception;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: java.lang.reflect.Method[] _failGetClassMethods(java.lang.Class,java.lang.Throwable)>(v, v);
return v;
catch java.lang.NoClassDefFoundError from label to label with label;
catch java.lang.ClassNotFoundException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
private static java.lang.reflect.Method[] _failGetClassMethods(java.lang.Class, java.lang.Throwable) throws java.lang.IllegalArgumentException
{
java.lang.Throwable v;
java.lang.Object[] v;
java.lang.IllegalArgumentException v;
java.lang.Class v, v;
java.lang.String v, v, v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Throwable;
v = new java.lang.IllegalArgumentException;
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v[0] = v;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v[1] = v;
v = virtualinvoke v.<java.lang.Throwable: java.lang.String getMessage()>();
v[2] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Failed on call to `getDeclaredMethods()` on class `%s`, problem: (%s) %s", v);
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
}
public static com.fasterxml.jackson.databind.util.ClassUtil$Ctor[] getConstructors(java.lang.Class)
{
com.fasterxml.jackson.databind.util.ClassUtil$Ctor[] v, v;
java.lang.reflect.Constructor v;
java.lang.reflect.Constructor[] v;
com.fasterxml.jackson.databind.util.ClassUtil$Ctor v;
int v, v;
java.lang.Class v;
boolean v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: boolean isInterface()>();
if v != 0 goto label;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: boolean isObjectOrPrimitive(java.lang.Class)>(v);
if v == 0 goto label;
label:
v = <com.fasterxml.jackson.databind.util.ClassUtil: com.fasterxml.jackson.databind.util.ClassUtil$Ctor[] NO_CTORS>;
return v;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Constructor[] getDeclaredConstructors()>();
v = lengthof v;
v = newarray (com.fasterxml.jackson.databind.util.ClassUtil$Ctor)[v];
v = 0;
label:
if v >= v goto label;
v = new com.fasterxml.jackson.databind.util.ClassUtil$Ctor;
v = v[v];
specialinvoke v.<com.fasterxml.jackson.databind.util.ClassUtil$Ctor: void <init>(java.lang.reflect.Constructor)>(v);
v[v] = v;
v = v + 1;
goto label;
label:
return v;
}
public static java.lang.Class getDeclaringClass(java.lang.Class)
{
java.lang.Class v, v;
boolean v;
v := @parameter: java.lang.Class;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: boolean isObjectOrPrimitive(java.lang.Class)>(v);
if v == 0 goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.Class getDeclaringClass()>();
label:
return v;
}
public static java.lang.reflect.Type getGenericSuperclass(java.lang.Class)
{
java.lang.Class v;
java.lang.reflect.Type v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Type getGenericSuperclass()>();
return v;
}
public static java.lang.reflect.Type[] getGenericInterfaces(java.lang.Class)
{
java.lang.reflect.Type[] v;
java.lang.Class v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Type[] getGenericInterfaces()>();
return v;
}
public static java.lang.Class getEnclosingClass(java.lang.Class)
{
java.lang.Class v, v;
boolean v;
v := @parameter: java.lang.Class;
v = staticinvoke <com.fasterxml.jackson.databind.util.ClassUtil: boolean isObjectOrPrimitive(java.lang.Class)>(v);
if v == 0 goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.Class getEnclosingClass()>();
label:
return v;
}
private static java.lang.Class[] _interfaces(java.lang.Class)
{
java.lang.Class[] v;
java.lang.Class v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.Class[] getInterfaces()>();
return v;
}
static void <clinit>()
{
java.lang.'annotation'.Annotation[] v;
java.util.Iterator v;
com.fasterxml.jackson.databind.util.ClassUtil$Ctor[] v;
<com.fasterxml.jackson.databind.util.ClassUtil: java.lang.Class CLS_OBJECT> = class "Ljava/lang/Object;";
v = newarray (java.lang.'annotation'.Annotation)[0];
<com.fasterxml.jackson.databind.util.ClassUtil: java.lang.'annotation'.Annotation[] NO_ANNOTATIONS> = v;
v = newarray (com.fasterxml.jackson.databind.util.ClassUtil$Ctor)[0];
<com.fasterxml.jackson.databind.util.ClassUtil: com.fasterxml.jackson.databind.util.ClassUtil$Ctor[] NO_CTORS> = v;
v = staticinvoke <java.util.Collections: java.util.Iterator emptyIterator()>();
<com.fasterxml.jackson.databind.util.ClassUtil: java.util.Iterator EMPTY_ITERATOR> = v;
return;
}
}