class org.junit.jupiter.params.converter.FallbackStringToObjectConverter extends java.lang.Object implements org.junit.jupiter.params.converter.DefaultArgumentConverter$StringToObjectConverter
{
private static final java.util.function.Function NULL_EXECUTABLE;
private static final java.util.concurrent.ConcurrentHashMap factoryExecutableCache;
void <init>()
{
org.junit.jupiter.params.converter.FallbackStringToObjectConverter v;
v := @this: org.junit.jupiter.params.converter.FallbackStringToObjectConverter;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public boolean canConvert(java.lang.Class)
{
java.lang.Class v;
org.junit.jupiter.params.converter.FallbackStringToObjectConverter v;
java.util.function.Function v, v;
boolean v;
v := @this: org.junit.jupiter.params.converter.FallbackStringToObjectConverter;
v := @parameter: java.lang.Class;
v = staticinvoke <org.junit.jupiter.params.converter.FallbackStringToObjectConverter: java.util.function.Function findFactoryExecutable(java.lang.Class)>(v);
v = <org.junit.jupiter.params.converter.FallbackStringToObjectConverter: java.util.function.Function NULL_EXECUTABLE>;
if v == v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public java.lang.Object convert(java.lang.String, java.lang.Class) throws java.lang.Exception
{
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
org.junit.jupiter.params.converter.FallbackStringToObjectConverter v;
java.util.function.Function v, v;
boolean v;
v := @this: org.junit.jupiter.params.converter.FallbackStringToObjectConverter;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Class;
v = staticinvoke <org.junit.jupiter.params.converter.FallbackStringToObjectConverter: java.util.function.Function findFactoryExecutable(java.lang.Class)>(v);
v = <org.junit.jupiter.params.converter.FallbackStringToObjectConverter: java.util.function.Function NULL_EXECUTABLE>;
if v == v goto label;
v = 1;
goto label;
label:
v = 0;
label:
staticinvoke <org.junit.platform.commons.util.Preconditions: void condition(boolean,java.lang.String)>(v, "Illegal state: convert() must not be called if canConvert() returned false");
v = interfaceinvoke v.<java.util.function.Function: java.lang.Object apply(java.lang.Object)>(v);
return v;
}
private static java.util.function.Function findFactoryExecutable(java.lang.Class)
{
java.util.concurrent.ConcurrentHashMap v;
java.lang.Class v;
java.lang.Object v;
java.util.function.Function v;
v := @parameter: java.lang.Class;
v = <org.junit.jupiter.params.converter.FallbackStringToObjectConverter: java.util.concurrent.ConcurrentHashMap factoryExecutableCache>;
v = staticinvoke <org.junit.jupiter.params.converter.FallbackStringToObjectConverter$lambda_findFactoryExecutable_3__66: java.util.function.Function bootstrap$()>();
v = virtualinvoke v.<java.util.concurrent.ConcurrentHashMap: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
return v;
}
private static java.lang.reflect.Method findFactoryMethod(java.lang.Class)
{
java.util.List v;
org.junit.platform.commons.util.ReflectionUtils$HierarchyTraversalMode v;
org.junit.jupiter.params.converter.FallbackStringToObjectConverter$IsFactoryMethod v;
int v;
java.lang.Class v;
java.lang.Object v;
v := @parameter: java.lang.Class;
v = new org.junit.jupiter.params.converter.FallbackStringToObjectConverter$IsFactoryMethod;
specialinvoke v.<org.junit.jupiter.params.converter.FallbackStringToObjectConverter$IsFactoryMethod: void <init>(java.lang.Class)>(v);
v = <org.junit.platform.commons.util.ReflectionUtils$HierarchyTraversalMode: org.junit.platform.commons.util.ReflectionUtils$HierarchyTraversalMode BOTTOM_UP>;
v = staticinvoke <org.junit.platform.commons.util.ReflectionUtils: java.util.List findMethods(java.lang.Class,java.util.function.Predicate,org.junit.platform.commons.util.ReflectionUtils$HierarchyTraversalMode)>(v, v, v);
v = interfaceinvoke v.<java.util.List: int size()>();
if v != 1 goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(0);
return v;
label:
return null;
}
private static java.lang.reflect.Constructor findFactoryConstructor(java.lang.Class)
{
org.junit.jupiter.params.converter.FallbackStringToObjectConverter$IsFactoryConstructor v;
java.util.List v;
int v;
java.lang.Class v;
java.lang.Object v;
v := @parameter: java.lang.Class;
v = new org.junit.jupiter.params.converter.FallbackStringToObjectConverter$IsFactoryConstructor;
specialinvoke v.<org.junit.jupiter.params.converter.FallbackStringToObjectConverter$IsFactoryConstructor: void <init>(java.lang.Class)>(v);
v = staticinvoke <org.junit.platform.commons.util.ReflectionUtils: java.util.List findConstructors(java.lang.Class,java.util.function.Predicate)>(v, v);
v = interfaceinvoke v.<java.util.List: int size()>();
if v != 1 goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(0);
return v;
label:
return null;
}
private static boolean isNotPrivateAndAcceptsSingleStringArgument(java.lang.reflect.Executable)
{
int v;
java.lang.Class[] v;
java.lang.reflect.Executable v;
java.lang.Class v;
boolean v, v;
v := @parameter: java.lang.reflect.Executable;
v = staticinvoke <org.junit.platform.commons.util.ReflectionUtils: boolean isNotPrivate(java.lang.reflect.Member)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Executable: int getParameterCount()>();
if v != 1 goto label;
v = virtualinvoke v.<java.lang.reflect.Executable: java.lang.Class[] getParameterTypes()>();
v = v[0];
if v != class "Ljava/lang/String;" goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
static void <clinit>()
{
java.util.concurrent.ConcurrentHashMap v;
java.util.function.Function v;
v = staticinvoke <org.junit.jupiter.params.converter.FallbackStringToObjectConverter$lambda_static_0__69: java.util.function.Function bootstrap$()>();
<org.junit.jupiter.params.converter.FallbackStringToObjectConverter: java.util.function.Function NULL_EXECUTABLE> = v;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>(int)>(64);
<org.junit.jupiter.params.converter.FallbackStringToObjectConverter: java.util.concurrent.ConcurrentHashMap factoryExecutableCache> = v;
return;
}
}