public class org.glassfish.gmbal.typelib.TypeEvaluator
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.glassfish.gmbal.typelib.TypeEvaluator
super_class: java.lang.Object
{
private static java.util.Map<java.lang.Class<?>, org.glassfish.gmbal.typelib.EvaluatedType> immutableTypes;
descriptor: Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/Map<Ljava/lang/Class<*>;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
private static java.util.Map<org.glassfish.gmbal.typelib.TypeEvaluator$EvalMapKey, org.glassfish.gmbal.typelib.EvaluatedClassDeclaration> evalClassMap;
descriptor: Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/Map<Lorg/glassfish/gmbal/typelib/TypeEvaluator$EvalMapKey;Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;>;
private static java.util.List<org.glassfish.gmbal.typelib.EvaluatedType> emptyETList;
descriptor: Ljava/util/List;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/List<Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
private static java.util.Map<java.lang.Class, org.glassfish.gmbal.typelib.EvaluatedType> classMap;
descriptor: Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/Map<Ljava/lang/Class;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=16, args_size=0
0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
1: putstatic org.glassfish.gmbal.typelib.TypeEvaluator.immutableTypes:Ljava/util/Map;
2: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
3: putstatic org.glassfish.gmbal.typelib.TypeEvaluator.evalClassMap:Ljava/util/Map;
4: new java.util.ArrayList
dup
iconst_0
invokespecial java.util.ArrayList.<init>:(I)V
5: putstatic org.glassfish.gmbal.typelib.TypeEvaluator.emptyETList:Ljava/util/List;
6: bipush 23
anewarray java.lang.Class
dup
iconst_0
7: getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
aastore
dup
iconst_1
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
aastore
dup
iconst_2
getstatic java.lang.Character.TYPE:Ljava/lang/Class;
aastore
dup
iconst_3
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
aastore
dup
iconst_4
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
aastore
dup
iconst_5
8: getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
aastore
dup
bipush 6
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
aastore
dup
bipush 7
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
aastore
dup
bipush 8
9: getstatic java.lang.Void.TYPE:Ljava/lang/Class;
aastore
dup
bipush 9
ldc Ljava/lang/Integer;
aastore
dup
bipush 10
ldc Ljava/lang/Byte;
aastore
dup
bipush 11
ldc Ljava/lang/Character;
aastore
dup
bipush 12
10: ldc Ljava/lang/Short;
aastore
dup
bipush 13
ldc Ljava/lang/Boolean;
aastore
dup
bipush 14
ldc Ljava/lang/Float;
aastore
dup
bipush 15
ldc Ljava/lang/Double;
aastore
dup
bipush 16
11: ldc Ljava/lang/Long;
aastore
dup
bipush 17
ldc Ljava/math/BigDecimal;
aastore
dup
bipush 18
ldc Ljava/math/BigInteger;
aastore
dup
bipush 19
12: ldc Ljava/util/Date;
aastore
dup
bipush 20
ldc Ljavax/management/ObjectName;
aastore
dup
bipush 21
ldc Ljava/lang/Class;
aastore
dup
bipush 22
13: ldc Ljava/lang/Number;
aastore
14: astore 0
start local 0 15: ldc Ljava/lang/Object;
astore 1
start local 1 16: ldc Ljava/lang/String;
astore 2
start local 2 17: ldc Ljava/lang/Void;
astore 3
start local 3 18: aload 1
19: ldc "toString"
iconst_0
anewarray java.lang.Class
20: invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.getDeclaredMethod:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 4
start local 4 21: aload 1
invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.getECD:(Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
astore 5
start local 5 22: aload 3
invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.getECD:(Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
astore 6
start local 6 23: aload 2
invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.getECD:(Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
astore 7
start local 7 24: aload 5
iconst_1
aload 7
ldc "toString"
25: getstatic org.glassfish.gmbal.typelib.TypeEvaluator.emptyETList:Ljava/util/List;
aload 4
26: invokestatic org.glassfish.gmbal.typelib.DeclarationFactory.emdecl:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;ILorg/glassfish/gmbal/typelib/EvaluatedType;Ljava/lang/String;Ljava/util/List;Ljava/lang/reflect/Method;)Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;
27: astore 8
start local 8 28: iconst_1
anewarray org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration
dup
iconst_0
29: aload 8
aastore
invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.list:([Ljava/lang/Object;)Ljava/util/List;
astore 9
start local 9 30: iconst_1
anewarray org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
dup
iconst_0
31: aload 5
aastore
invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.list:([Ljava/lang/Object;)Ljava/util/List;
astore 10
start local 10 32: aload 6
aload 10
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.inheritance:(Ljava/util/List;)V
33: aload 6
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.freeze:()V
34: aload 5
aload 9
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.methods:(Ljava/util/List;)V
35: aload 5
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.freeze:()V
36: aload 7
aload 10
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.inheritance:(Ljava/util/List;)V
37: aload 7
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.freeze:()V
38: aload 6
aload 3
invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.mapPut:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class;)V
39: aload 5
aload 1
invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.mapPut:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class;)V
40: aload 7
aload 2
invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.mapPut:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class;)V
41: aload 0
dup
astore 14
arraylength
istore 13
iconst_0
istore 12
goto 48
StackMap locals: java.lang.Class[] java.lang.Class java.lang.Class java.lang.Class java.lang.reflect.Method org.glassfish.gmbal.typelib.EvaluatedClassDeclaration org.glassfish.gmbal.typelib.EvaluatedClassDeclaration org.glassfish.gmbal.typelib.EvaluatedClassDeclaration org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration java.util.List java.util.List top int int java.lang.Class[]
StackMap stack:
42: aload 14
iload 12
aaload
astore 11
start local 11 43: aload 11
invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.getECD:(Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
astore 15
start local 15 44: aload 15
aload 10
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.inheritance:(Ljava/util/List;)V
45: aload 15
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.freeze:()V
46: aload 15
aload 11
invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.mapPut:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class;)V
end local 15 end local 11 47: iinc 12 1
StackMap locals:
StackMap stack:
48: iload 12
iload 13
if_icmplt 42
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 49: goto 52
StackMap locals:
StackMap stack: java.lang.Exception
50: astore 0
start local 0 51: getstatic org.glassfish.gmbal.typelib.Exceptions.self:Lorg/glassfish/gmbal/typelib/Exceptions;
aload 0
invokeinterface org.glassfish.gmbal.typelib.Exceptions.internalTypeEvaluatorError:(Ljava/lang/Exception;)Ljava/lang/IllegalStateException;
athrow
end local 0 52: StackMap locals:
StackMap stack:
ldc "org.glassfish.gmbal.TypelibDebugLevel"
iconst_0
invokestatic java.lang.Integer.getInteger:(Ljava/lang/String;I)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
53: invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.setDebugLevel:(I)V
54: new java.util.WeakHashMap
dup
invokespecial java.util.WeakHashMap.<init>:()V
55: putstatic org.glassfish.gmbal.typelib.TypeEvaluator.classMap:Ljava/util/Map;
56: return
LocalVariableTable:
Start End Slot Name Signature
15 49 0 classes [Ljava/lang/Class;
16 49 1 objectClass Ljava/lang/Class;
17 49 2 stringClass Ljava/lang/Class;
18 49 3 voidClass Ljava/lang/Class;
21 49 4 toStringMethod Ljava/lang/reflect/Method;
22 49 5 objectECD Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
23 49 6 voidECD Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
24 49 7 stringECD Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
28 49 8 toStringEMD Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;
30 49 9 toStringList Ljava/util/List<Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;>;
32 49 10 objectList Ljava/util/List<Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;>;
43 47 11 cls Ljava/lang/Class;
44 47 15 ecd Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
51 52 0 exc Ljava/lang/Exception;
Exception table:
from to target type
6 49 50 Class java.lang.Exception
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
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 Lorg/glassfish/gmbal/typelib/TypeEvaluator;
private static void mapPut(org.glassfish.gmbal.typelib.EvaluatedClassDeclaration, java.lang.Class);
descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: getstatic org.glassfish.gmbal.typelib.TypeEvaluator.immutableTypes:Ljava/util/Map;
aload 1
aload 0
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: new org.glassfish.gmbal.typelib.TypeEvaluator$EvalMapKey
dup
aload 1
getstatic org.glassfish.gmbal.typelib.TypeEvaluator.emptyETList:Ljava/util/List;
invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$EvalMapKey.<init>:(Ljava/lang/Class;Ljava/util/List;)V
astore 2
start local 2 2: getstatic org.glassfish.gmbal.typelib.TypeEvaluator.evalClassMap:Ljava/util/Map;
aload 2
aload 0
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 ecd Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
0 4 1 cls Ljava/lang/Class;
2 4 2 key Lorg/glassfish/gmbal/typelib/TypeEvaluator$EvalMapKey;
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
MethodParameters:
Name Flags
ecd
cls
private static org.glassfish.gmbal.typelib.EvaluatedType getImmutableEvaluatedType(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.glassfish.gmbal.typelib.TypeEvaluator.immutableTypes:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.glassfish.gmbal.typelib.EvaluatedType
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 cls Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
MethodParameters:
Name Flags
cls
public static synchronized void setDebugLevel(int);
descriptor: (I)V
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 level I
MethodParameters:
Name Flags
level
private static org.glassfish.gmbal.typelib.EvaluatedClassDeclaration getECD(java.lang.Class);
descriptor: (Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: iconst_1
1: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aload 0
iconst_1
2: invokestatic org.glassfish.gmbal.typelib.DeclarationFactory.ecdecl:(ILjava/lang/String;Ljava/lang/Class;Z)Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 cls Ljava/lang/Class;
MethodParameters:
Name Flags
cls
private static java.util.List<java.lang.reflect.Method> getDeclaredMethods(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Ljava/util/List;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aload 0
invokevirtual java.lang.Class.getDeclaredMethods:()[Ljava/lang/reflect/Method;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
areturn
3: StackMap locals: java.lang.SecurityManager
StackMap stack:
new org.glassfish.gmbal.typelib.TypeEvaluator$1
dup
aload 0
invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$1.<init>:(Ljava/lang/Class;)V
4: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.util.List
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 cls Ljava/lang/Class<*>;
1 5 1 sman Ljava/lang/SecurityManager;
Signature: (Ljava/lang/Class<*>;)Ljava/util/List<Ljava/lang/reflect/Method;>;
MethodParameters:
Name Flags
cls final
private static java.util.List<java.lang.reflect.Field> getDeclaredFields(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Ljava/util/List;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aload 0
invokevirtual java.lang.Class.getDeclaredFields:()[Ljava/lang/reflect/Field;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
areturn
3: StackMap locals: java.lang.SecurityManager
StackMap stack:
new org.glassfish.gmbal.typelib.TypeEvaluator$2
dup
aload 0
invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$2.<init>:(Ljava/lang/Class;)V
4: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.util.List
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 cls Ljava/lang/Class<*>;
1 5 1 sman Ljava/lang/SecurityManager;
Signature: (Ljava/lang/Class<*>;)Ljava/util/List<Ljava/lang/reflect/Field;>;
MethodParameters:
Name Flags
cls final
private static java.lang.reflect.Method getDeclaredMethod(java.lang.Class<?>, java.lang.String, java.lang.Class<?>[]);
descriptor: (Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 3
start local 3 1: aload 3
ifnonnull 3
2: aload 0
aload 1
aload 2
invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
areturn
3: StackMap locals: java.lang.SecurityManager
StackMap stack:
new org.glassfish.gmbal.typelib.TypeEvaluator$3
dup
aload 0
aload 1
aload 2
invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$3.<init>:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)V
4: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
checkcast java.lang.reflect.Method
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 cls Ljava/lang/Class<*>;
0 5 1 name Ljava/lang/String;
0 5 2 sig [Ljava/lang/Class;
1 5 3 sman Ljava/lang/SecurityManager;
Exceptions:
throws java.lang.NoSuchMethodException, java.security.PrivilegedActionException
Signature: (Ljava/lang/Class<*>;Ljava/lang/String;[Ljava/lang/Class<*>;)Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
cls final
name final
sig final
public static synchronized int evalClassMapSize();
descriptor: ()I
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=0, args_size=0
0: getstatic org.glassfish.gmbal.typelib.TypeEvaluator.evalClassMap:Ljava/util/Map;
invokeinterface java.util.Map.size:()I
ireturn
LocalVariableTable:
Start End Slot Name Signature
public static synchronized void dumpEvalClassMap();
descriptor: ()V
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=5, args_size=0
0: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "TypeEvaluator: dumping eval class map"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
1: iconst_0
istore 0
start local 0 2: iconst_0
istore 1
start local 1 3: getstatic org.glassfish.gmbal.typelib.TypeEvaluator.evalClassMap:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
goto 11
StackMap locals: int int top java.util.Iterator
StackMap stack:
4: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 2
start local 2 5: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "\tKey:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "=>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
6: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "\t\t"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
7: aload 2
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast org.glassfish.gmbal.typelib.TypeEvaluator$EvalMapKey
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$EvalMapKey.first:()Ljava/lang/Object;
checkcast java.lang.Class
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 4
start local 4 8: aload 4
ldc "org.glassfish.gmbal"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 10
9: iinc 0 1
10: StackMap locals: int int java.util.Map$Entry java.util.Iterator java.lang.String
StackMap stack:
iinc 1 1
end local 4 end local 2 11: StackMap locals: int int top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
12: getstatic java.lang.System.out:Ljava/io/PrintStream;
13: ldc "\nEvalClassMap contains %d entries, %d of which are system classes\n"
iconst_2
anewarray java.lang.Object
dup
iconst_0
14: iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
iload 0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
15: invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
pop
16: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
2 17 0 numSystem I
3 17 1 total I
5 11 2 entry Ljava/util/Map$Entry<Lorg/glassfish/gmbal/typelib/TypeEvaluator$EvalMapKey;Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;>;
8 11 4 name Ljava/lang/String;
public static synchronized org.glassfish.gmbal.typelib.EvaluatedType getEvaluatedType(java.lang.Class);
descriptor: (Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=4, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: getstatic org.glassfish.gmbal.typelib.TypeEvaluator.classMap:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.glassfish.gmbal.typelib.EvaluatedType
astore 1
2: aload 1
ifnonnull 13
3: new org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor
dup
invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.<init>:()V
astore 2
start local 2 4: aload 2
aload 0
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType:(Ljava/lang/Object;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 1
5: getstatic org.glassfish.gmbal.typelib.TypeEvaluator.classMap:Ljava/util/Map;
aload 0
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 2 6: goto 13
StackMap locals: java.lang.Class org.glassfish.gmbal.typelib.EvaluatedType
StackMap stack: java.lang.Error
7: astore 2
start local 2 8: getstatic org.glassfish.gmbal.typelib.Exceptions.self:Lorg/glassfish/gmbal/typelib/Exceptions;
aload 0
9: aload 2
10: invokeinterface org.glassfish.gmbal.typelib.Exceptions.errorInTypeEval:(Ljava/lang/Class;Ljava/lang/Error;)Ljava/lang/IllegalStateException;
astore 3
start local 3 11: invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.dumpEvalClassMap:()V
12: aload 3
athrow
end local 3 end local 2 13: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 cls Ljava/lang/Class;
1 14 1 etype Lorg/glassfish/gmbal/typelib/EvaluatedType;
4 6 2 visitor Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
8 13 2 err Ljava/lang/Error;
11 13 3 thr Ljava/lang/IllegalStateException;
Exception table:
from to target type
1 6 7 Class java.lang.Error
MethodParameters:
Name Flags
cls
}
SourceFile: "TypeEvaluator.java"
NestMembers:
org.glassfish.gmbal.typelib.TypeEvaluator$1 org.glassfish.gmbal.typelib.TypeEvaluator$2 org.glassfish.gmbal.typelib.TypeEvaluator$3 org.glassfish.gmbal.typelib.TypeEvaluator$EvalMapKey org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$1 org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$2 org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$3 org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$4 org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult
InnerClasses:
public abstract Entry = java.util.Map$Entry of java.util.Map
org.glassfish.gmbal.typelib.TypeEvaluator$1
org.glassfish.gmbal.typelib.TypeEvaluator$2
org.glassfish.gmbal.typelib.TypeEvaluator$3
private EvalMapKey = org.glassfish.gmbal.typelib.TypeEvaluator$EvalMapKey of org.glassfish.gmbal.typelib.TypeEvaluator
private PartialDefinitions = org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions of org.glassfish.gmbal.typelib.TypeEvaluator
private TypeEvaluationVisitor = org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor of org.glassfish.gmbal.typelib.TypeEvaluator
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
org.glassfish.gmbal.impl.trace.TraceTypelibEval()