public class io.micronaut.core.reflect.ClassUtils
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.micronaut.core.reflect.ClassUtils
super_class: java.lang.Object
{
public static final java.lang.String PROPERTY_MICRONAUT_CLASSLOADER_LOGGING;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "micronaut.classloader.logging"
public static final int EMPTY_OBJECT_ARRAY_HASH_CODE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.util.Map<java.lang.String, java.lang.Class> COMMON_CLASS_MAP;
descriptor: Ljava/util/Map;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Class;>;
public static final java.util.Map<java.lang.String, java.lang.Class> BASIC_TYPE_MAP;
descriptor: Ljava/util/Map;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Class;>;
public static final java.lang.String CLASS_EXTENSION;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: ".class"
public static final org.slf4j.Logger REFLECTION_LOGGER;
descriptor: Lorg/slf4j/Logger;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private static final boolean ENABLE_CLASS_LOADER_LOGGING;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.Map<java.lang.String, java.lang.Class> PRIMITIVE_TYPE_MAP;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Class;>;
private static final java.util.Map<java.lang.String, java.lang.Class> PRIMITIVE_ARRAY_MAP;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Class;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: getstatic io.micronaut.core.util.ArrayUtils.EMPTY_OBJECT_ARRAY:[Ljava/lang/Object;
invokestatic java.util.Arrays.hashCode:([Ljava/lang/Object;)I
putstatic io.micronaut.core.reflect.ClassUtils.EMPTY_OBJECT_ARRAY_HASH_CODE:I
1: new java.util.HashMap
dup
bipush 34
invokespecial java.util.HashMap.<init>:(I)V
putstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
2: new java.util.HashMap
dup
bipush 18
invokespecial java.util.HashMap.<init>:(I)V
putstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
3: ldc "micronaut.classloader.logging"
invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
putstatic io.micronaut.core.reflect.ClassUtils.ENABLE_CLASS_LOADER_LOGGING:Z
4: ldc Lio/micronaut/core/reflect/ClassUtils;
invokestatic io.micronaut.core.reflect.ClassUtils.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
putstatic io.micronaut.core.reflect.ClassUtils.REFLECTION_LOGGER:Lorg/slf4j/Logger;
5: bipush 18
anewarray java.lang.Object
dup
iconst_0
6: ldc "int"
aastore
dup
iconst_1
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
aastore
dup
iconst_2
7: ldc "boolean"
aastore
dup
iconst_3
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
aastore
dup
iconst_4
8: ldc "long"
aastore
dup
iconst_5
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
aastore
dup
bipush 6
9: ldc "byte"
aastore
dup
bipush 7
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
aastore
dup
bipush 8
10: ldc "double"
aastore
dup
bipush 9
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
aastore
dup
bipush 10
11: ldc "float"
aastore
dup
bipush 11
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
aastore
dup
bipush 12
12: ldc "char"
aastore
dup
bipush 13
getstatic java.lang.Character.TYPE:Ljava/lang/Class;
aastore
dup
bipush 14
13: ldc "short"
aastore
dup
bipush 15
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
aastore
dup
bipush 16
14: ldc "void"
aastore
dup
bipush 17
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
aastore
15: invokestatic io.micronaut.core.util.CollectionUtils.mapOf:([Ljava/lang/Object;)Ljava/util/Map;
putstatic io.micronaut.core.reflect.ClassUtils.PRIMITIVE_TYPE_MAP:Ljava/util/Map;
16: bipush 16
anewarray java.lang.Object
dup
iconst_0
17: ldc "int"
aastore
dup
iconst_1
ldc [I
aastore
dup
iconst_2
18: ldc "boolean"
aastore
dup
iconst_3
ldc [Z
aastore
dup
iconst_4
19: ldc "long"
aastore
dup
iconst_5
ldc [J
aastore
dup
bipush 6
20: ldc "byte"
aastore
dup
bipush 7
ldc [B
aastore
dup
bipush 8
21: ldc "double"
aastore
dup
bipush 9
ldc [D
aastore
dup
bipush 10
22: ldc "float"
aastore
dup
bipush 11
ldc [F
aastore
dup
bipush 12
23: ldc "char"
aastore
dup
bipush 13
ldc [C
aastore
dup
bipush 14
24: ldc "short"
aastore
dup
bipush 15
ldc [S
aastore
25: invokestatic io.micronaut.core.util.CollectionUtils.mapOf:([Ljava/lang/Object;)Ljava/util/Map;
putstatic io.micronaut.core.reflect.ClassUtils.PRIMITIVE_ARRAY_MAP:Ljava/util/Map;
26: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
27: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
28: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
29: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
30: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
31: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
32: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
getstatic java.lang.Character.TYPE:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
getstatic java.lang.Character.TYPE:Ljava/lang/Class;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
33: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
34: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc [Z
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc [Z
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
35: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc [B
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc [B
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
36: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc [I
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc [I
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
37: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc [J
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc [J
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
38: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc [D
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc [D
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
39: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc [F
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc [F
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
40: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc [C
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc [C
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
41: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc [S
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc [S
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
42: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc Ljava/lang/Boolean;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/lang/Boolean;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
43: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc Ljava/lang/Byte;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/lang/Byte;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
44: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc Ljava/lang/Integer;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/lang/Integer;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
45: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc Ljava/lang/Long;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/lang/Long;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
46: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc Ljava/lang/Short;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/lang/Short;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
47: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc Ljava/lang/Double;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/lang/Double;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
48: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc Ljava/lang/Float;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/lang/Float;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
49: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc Ljava/lang/Character;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/lang/Character;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
50: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc Ljava/lang/String;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/lang/String;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
51: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
ldc Ljava/lang/CharSequence;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/lang/CharSequence;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
52: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/util/UUID;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/util/UUID;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
53: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/math/BigDecimal;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/math/BigDecimal;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
54: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/math/BigInteger;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/math/BigInteger;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
55: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/net/URL;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/net/URL;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
56: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/net/URI;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/net/URI;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
57: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/util/TimeZone;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/util/TimeZone;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
58: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/nio/charset/Charset;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/nio/charset/Charset;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
59: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/util/Locale;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/util/Locale;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
60: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/time/Duration;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/time/Duration;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
61: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/util/Date;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/util/Date;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
62: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/time/LocalDate;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/time/LocalDate;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
63: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/time/Instant;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/time/Instant;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
64: getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
ldc Ljava/time/ZonedDateTime;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc Ljava/time/ZonedDateTime;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
65: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/micronaut/core/reflect/ClassUtils;
public static org.slf4j.Logger getLogger(java.lang.Class);
descriptor: (Ljava/lang/Class;)Lorg/slf4j/Logger;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic io.micronaut.core.reflect.ClassUtils.ENABLE_CLASS_LOADER_LOGGING:Z
ifeq 2
1: aload 0
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
areturn
2: StackMap locals:
StackMap stack:
getstatic org.slf4j.helpers.NOPLogger.NOP_LOGGER:Lorg/slf4j/helpers/NOPLogger;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 type Ljava/lang/Class;
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
type
public static java.util.Optional<java.lang.Class> arrayTypeForPrimitive(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/Optional;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ifnull 2
1: getstatic io.micronaut.core.reflect.ClassUtils.PRIMITIVE_ARRAY_MAP:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Class
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
areturn
2: StackMap locals:
StackMap stack:
invokestatic java.util.Optional.empty:()Ljava/util/Optional;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 primitiveType Ljava/lang/String;
Signature: (Ljava/lang/String;)Ljava/util/Optional<Ljava/lang/Class;>;
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
primitiveType
public static java.lang.String pathToClassName(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
bipush 47
bipush 46
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
astore 0
1: aload 0
ldc ".class"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 3
2: aload 0
iconst_0
aload 0
invokevirtual java.lang.String.length:()I
ldc ".class"
invokevirtual java.lang.String.length:()I
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 0
3: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 path Ljava/lang/String;
MethodParameters:
Name Flags
path
public static boolean isPresent(java.lang.String, java.lang.ClassLoader);
descriptor: (Ljava/lang/String;Ljava/lang/ClassLoader;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic io.micronaut.core.reflect.ClassUtils.forName:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/util/Optional;
invokevirtual java.util.Optional.isPresent:()Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
0 1 1 classLoader Ljava/lang/ClassLoader;
RuntimeInvisibleParameterAnnotations:
0:
1:
edu.umd.cs.findbugs.annotations.Nullable()
MethodParameters:
Name Flags
name
classLoader
public static boolean isJavaLangType(java.lang.Class);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 1
start local 1 1: aload 1
invokestatic io.micronaut.core.reflect.ClassUtils.isJavaLangType:(Ljava/lang/String;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 type Ljava/lang/Class;
1 2 1 typeName Ljava/lang/String;
MethodParameters:
Name Flags
type
public static boolean isJavaLangType(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeName Ljava/lang/String;
MethodParameters:
Name Flags
typeName
public static boolean isJavaBasicType(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 1
start local 1 3: aload 1
invokestatic io.micronaut.core.reflect.ClassUtils.isJavaBasicType:(Ljava/lang/String;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 type Ljava/lang/Class<*>;
3 4 1 name Ljava/lang/String;
Signature: (Ljava/lang/Class<*>;)Z
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.Nullable()
MethodParameters:
Name Flags
type
public static boolean isJavaBasicType(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokestatic io.micronaut.core.util.StringUtils.isEmpty:(Ljava/lang/CharSequence;)Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokestatic io.micronaut.core.reflect.ClassUtils.isJavaLangType:(Ljava/lang/String;)Z
ifne 3
getstatic io.micronaut.core.reflect.ClassUtils.BASIC_TYPE_MAP:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 3
iconst_0
ireturn
StackMap locals:
StackMap stack:
3: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 name Ljava/lang/String;
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.Nullable()
MethodParameters:
Name Flags
name
public static java.util.Optional<java.lang.Class> getPrimitiveType(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/Optional;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic io.micronaut.core.reflect.ClassUtils.PRIMITIVE_TYPE_MAP:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Class
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 primitiveType Ljava/lang/String;
Signature: (Ljava/lang/String;)Ljava/util/Optional<Ljava/lang/Class;>;
MethodParameters:
Name Flags
primitiveType
public static java.util.Optional<java.lang.Class> forName(java.lang.String, java.lang.ClassLoader);
descriptor: (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/util/Optional;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
astore 1
2: StackMap locals:
StackMap stack:
aload 1
ifnonnull 4
3: invokestatic java.lang.ClassLoader.getSystemClassLoader:()Ljava/lang/ClassLoader;
astore 1
4: StackMap locals:
StackMap stack:
getstatic io.micronaut.core.reflect.ClassUtils.COMMON_CLASS_MAP:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Class
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
astore 2
start local 2 5: aload 2
invokevirtual java.util.Optional.isPresent:()Z
ifeq 8
6: aload 2
7: areturn
8: StackMap locals: java.util.Optional
StackMap stack:
getstatic io.micronaut.core.reflect.ClassUtils.REFLECTION_LOGGER:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 10
9: getstatic io.micronaut.core.reflect.ClassUtils.REFLECTION_LOGGER:Lorg/slf4j/Logger;
ldc "Attempting to dynamically load class {}"
aload 0
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
10: StackMap locals:
StackMap stack:
aload 0
iconst_1
aload 1
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
astore 3
start local 3 11: getstatic io.micronaut.core.reflect.ClassUtils.REFLECTION_LOGGER:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 13
12: getstatic io.micronaut.core.reflect.ClassUtils.REFLECTION_LOGGER:Lorg/slf4j/Logger;
ldc "Successfully loaded class {}"
aload 0
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
13: StackMap locals: java.lang.Class
StackMap stack:
aload 3
invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
14: areturn
end local 3 end local 2 15: StackMap locals: java.lang.String java.lang.ClassLoader
StackMap stack: java.lang.Throwable
pop
16: getstatic io.micronaut.core.reflect.ClassUtils.REFLECTION_LOGGER:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 18
17: getstatic io.micronaut.core.reflect.ClassUtils.REFLECTION_LOGGER:Lorg/slf4j/Logger;
ldc "Class {} is not present"
aload 0
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
18: StackMap locals:
StackMap stack:
invokestatic java.util.Optional.empty:()Ljava/util/Optional;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 name Ljava/lang/String;
0 19 1 classLoader Ljava/lang/ClassLoader;
5 15 2 commonType Ljava/util/Optional<Ljava/lang/Class;>;
11 15 3 type Ljava/lang/Class<*>;
Exception table:
from to target type
0 7 15 Class java.lang.ClassNotFoundException
8 14 15 Class java.lang.ClassNotFoundException
0 7 15 Class java.lang.NoClassDefFoundError
8 14 15 Class java.lang.NoClassDefFoundError
Signature: (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/util/Optional<Ljava/lang/Class;>;
RuntimeInvisibleParameterAnnotations:
0:
1:
edu.umd.cs.findbugs.annotations.Nullable()
MethodParameters:
Name Flags
name
classLoader
public static java.util.List<java.lang.Class> resolveHierarchy(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Ljava/util/List;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 1
start local 1 1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 2: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 3: aload 1
ifnull 14
4: aload 2
aload 0
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
5: aload 0
aload 3
invokestatic io.micronaut.core.reflect.ClassUtils.populateHierarchyInterfaces:(Ljava/lang/Class;Ljava/util/List;)V
6: goto 11
7: StackMap locals: java.lang.Class java.util.List java.util.List
StackMap stack:
aload 2
aload 1
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 9
8: aload 2
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
9: StackMap locals:
StackMap stack:
aload 1
aload 3
invokestatic io.micronaut.core.reflect.ClassUtils.populateHierarchyInterfaces:(Ljava/lang/Class;Ljava/util/List;)V
10: aload 1
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 1
11: StackMap locals:
StackMap stack:
aload 1
ldc Ljava/lang/Object;
if_acmpne 7
12: aload 2
aload 3
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
13: goto 17
StackMap locals:
StackMap stack:
14: aload 0
invokevirtual java.lang.Class.isInterface:()Z
ifeq 17
15: aload 2
aload 0
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
16: aload 0
aload 2
invokestatic io.micronaut.core.reflect.ClassUtils.populateHierarchyInterfaces:(Ljava/lang/Class;Ljava/util/List;)V
17: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Class.isArray:()Z
ifeq 21
18: aload 0
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isPrimitive:()Z
ifne 22
19: aload 2
ldc [Ljava/lang/Object;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
20: goto 22
21: StackMap locals:
StackMap stack:
aload 2
ldc Ljava/lang/Object;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
22: StackMap locals:
StackMap stack:
aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 type Ljava/lang/Class<*>;
1 23 1 superclass Ljava/lang/Class<*>;
2 23 2 hierarchy Ljava/util/List<Ljava/lang/Class;>;
3 23 3 interfaces Ljava/util/List<Ljava/lang/Class;>;
Signature: (Ljava/lang/Class<*>;)Ljava/util/List<Ljava/lang/Class;>;
MethodParameters:
Name Flags
type
private static void populateHierarchyInterfaces(java.lang.Class<?>, java.util.List<java.lang.Class>);
descriptor: (Ljava/lang/Class;Ljava/util/List;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 6
StackMap locals: java.lang.Class java.util.List top int int java.lang.Class[]
StackMap stack:
1: aload 5
iload 3
aaload
astore 2
start local 2 2: aload 1
aload 2
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 4
3: aload 1
aload 2
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: StackMap locals: java.lang.Class java.util.List java.lang.Class int int java.lang.Class[]
StackMap stack:
aload 2
aload 1
invokestatic io.micronaut.core.reflect.ClassUtils.populateHierarchyInterfaces:(Ljava/lang/Class;Ljava/util/List;)V
end local 2 5: iinc 3 1
StackMap locals: java.lang.Class java.util.List top int int java.lang.Class[]
StackMap stack:
6: iload 3
iload 4
if_icmplt 1
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 superclass Ljava/lang/Class<*>;
0 8 1 hierarchy Ljava/util/List<Ljava/lang/Class;>;
2 5 2 aClass Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;Ljava/util/List<Ljava/lang/Class;>;)V
MethodParameters:
Name Flags
superclass
hierarchy
}
SourceFile: "ClassUtils.java"