class org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor
super_class: java.lang.Object
{
private final org.glassfish.pfl.basic.contain.Display<java.lang.String, org.glassfish.gmbal.typelib.EvaluatedType> display;
descriptor: Lorg/glassfish/pfl/basic/contain/Display;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/glassfish/pfl/basic/contain/Display<Ljava/lang/String;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
private final org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions partialDefinitions;
descriptor: Lorg/glassfish/gmbal/typelib/TypeEvaluator$PartialDefinitions;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.glassfish.pfl.basic.contain.Display
dup
invokespecial org.glassfish.pfl.basic.contain.Display.<init>:()V
putfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.display:Lorg/glassfish/pfl/basic/contain/Display;
2: aload 0
new org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions
dup
invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions.<init>:()V
putfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.partialDefinitions:Lorg/glassfish/gmbal/typelib/TypeEvaluator$PartialDefinitions;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
public org.glassfish.gmbal.typelib.EvaluatedType evaluateType(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 1
ifnonnull 4
2: aconst_null
astore 2
3: goto 27
StackMap locals: org.glassfish.gmbal.typelib.EvaluatedType
StackMap stack:
4: aload 1
instanceof java.lang.Class
ifeq 8
5: aload 1
checkcast java.lang.Class
astore 3
start local 3 6: aload 0
aload 3
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitClassDeclaration:(Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 2
end local 3 7: goto 27
StackMap locals:
StackMap stack:
8: aload 1
instanceof java.lang.reflect.ParameterizedType
ifeq 12
9: aload 1
checkcast java.lang.reflect.ParameterizedType
astore 3
start local 3 10: aload 0
aload 3
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitParameterizedType:(Ljava/lang/reflect/ParameterizedType;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 2
end local 3 11: goto 27
StackMap locals:
StackMap stack:
12: aload 1
instanceof java.lang.reflect.TypeVariable
ifeq 16
13: aload 1
checkcast java.lang.reflect.TypeVariable
astore 3
start local 3 14: aload 0
aload 3
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitTypeVariable:(Ljava/lang/reflect/TypeVariable;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 2
end local 3 15: goto 27
StackMap locals:
StackMap stack:
16: aload 1
instanceof java.lang.reflect.GenericArrayType
ifeq 20
17: aload 1
checkcast java.lang.reflect.GenericArrayType
astore 3
start local 3 18: aload 0
aload 3
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitGenericArrayType:(Ljava/lang/reflect/GenericArrayType;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 2
end local 3 19: goto 27
StackMap locals:
StackMap stack:
20: aload 1
instanceof java.lang.reflect.WildcardType
ifeq 24
21: aload 1
checkcast java.lang.reflect.WildcardType
astore 3
start local 3 22: aload 0
aload 3
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitWildcardType:(Ljava/lang/reflect/WildcardType;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 2
end local 3 23: goto 27
StackMap locals:
StackMap stack:
24: aload 1
instanceof java.lang.reflect.Method
ifeq 26
25: getstatic org.glassfish.gmbal.typelib.Exceptions.self:Lorg/glassfish/gmbal/typelib/Exceptions;
aload 1
invokeinterface org.glassfish.gmbal.typelib.Exceptions.evaluateTypeCalledWithMethod:(Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;
athrow
26: StackMap locals:
StackMap stack:
getstatic org.glassfish.gmbal.typelib.Exceptions.self:Lorg/glassfish/gmbal/typelib/Exceptions;
aload 1
invokeinterface org.glassfish.gmbal.typelib.Exceptions.evaluateTypeCalledWithUnknownType:(Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;
athrow
27: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 28 1 type Ljava/lang/Object;
1 28 2 result Lorg/glassfish/gmbal/typelib/EvaluatedType;
6 7 3 cls Ljava/lang/Class;
10 11 3 pt Ljava/lang/reflect/ParameterizedType;
14 15 3 tvar Ljava/lang/reflect/TypeVariable;
18 19 3 gat Ljava/lang/reflect/GenericArrayType;
22 23 3 wt Ljava/lang/reflect/WildcardType;
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelibEval()
MethodParameters:
Name Flags
type
private void describe(java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=0, locals=3, args_size=3
start local 0 start local 1 start local 2 0: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 1 1 msg Ljava/lang/String;
0 1 2 data Ljava/lang/Object;
RuntimeVisibleAnnotations:
org.glassfish.pfl.tf.spi.annotation.InfoMethod()
MethodParameters:
Name Flags
msg
data
private void message(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 1 1 msg Ljava/lang/String;
RuntimeVisibleAnnotations:
org.glassfish.pfl.tf.spi.annotation.InfoMethod()
MethodParameters:
Name Flags
msg
private org.glassfish.gmbal.typelib.EvaluatedType visitClassDeclaration(java.lang.Class);
descriptor: (Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 1
invokevirtual java.lang.Class.isArray:()Z
ifeq 7
2: aload 0
ldc "decl is an array"
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.message:(Ljava/lang/String;)V
3: aload 0
4: aload 1
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
5: invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType:(Ljava/lang/Object;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
invokestatic org.glassfish.gmbal.typelib.DeclarationFactory.egat:(Lorg/glassfish/gmbal/typelib/EvaluatedType;)Lorg/glassfish/gmbal/typelib/EvaluatedArrayType;
6: areturn
7: StackMap locals: org.glassfish.gmbal.typelib.EvaluatedType
StackMap stack:
aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.partialDefinitions:Lorg/glassfish/gmbal/typelib/TypeEvaluator$PartialDefinitions;
aload 1
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions.get:(Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 2
8: aload 2
ifnonnull 20
9: aload 1
invokevirtual java.lang.Class.getModifiers:()I
aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aload 1
10: invokestatic org.glassfish.gmbal.typelib.DeclarationFactory.ecdecl:(ILjava/lang/String;Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
astore 3
start local 3 11: aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.partialDefinitions:Lorg/glassfish/gmbal/typelib/TypeEvaluator$PartialDefinitions;
aload 1
aload 3
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions.put:(Ljava/lang/Class;Lorg/glassfish/gmbal/typelib/EvaluatedType;)V
12: aload 0
aload 1
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.getBindings:(Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult;
13: astore 4
start local 4 14: aload 0
aload 4
aload 1
aload 3
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.getCorrectDeclaration:(Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult;Ljava/lang/Class;Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 2
end local 4 15: goto 19
StackMap locals: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor java.lang.Class org.glassfish.gmbal.typelib.EvaluatedType org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
StackMap stack: java.lang.Throwable
16: astore 5
17: aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.partialDefinitions:Lorg/glassfish/gmbal/typelib/TypeEvaluator$PartialDefinitions;
aload 1
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions.remove:(Ljava/lang/Class;)V
18: aload 5
athrow
19: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.partialDefinitions:Lorg/glassfish/gmbal/typelib/TypeEvaluator$PartialDefinitions;
aload 1
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions.remove:(Ljava/lang/Class;)V
end local 3 20: StackMap locals:
StackMap stack:
aload 1
ldc Lorg/glassfish/gmbal/typelib/ForceTypelibError;
invokevirtual java.lang.Class.isAnnotationPresent:(Ljava/lang/Class;)Z
ifeq 27
21: new java.lang.StackOverflowError
dup
22: ldc "Simulating stack overflow in test"
23: invokespecial java.lang.StackOverflowError.<init>:(Ljava/lang/String;)V
athrow
24: StackMap locals:
StackMap stack: java.lang.Error
astore 3
start local 3 25: invokestatic org.glassfish.pfl.basic.logex.OperationTracer.freeze:()V
26: aload 3
athrow
end local 3 27: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 28 1 decl Ljava/lang/Class;
1 28 2 result Lorg/glassfish/gmbal/typelib/EvaluatedType;
11 20 3 newDecl Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
14 15 4 bindings Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult<Ljava/lang/String;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
25 27 3 err Ljava/lang/Error;
Exception table:
from to target type
12 16 16 any
1 6 24 Class java.lang.Error
7 24 24 Class java.lang.Error
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
MethodParameters:
Name Flags
decl
private org.glassfish.gmbal.typelib.EvaluatedType visitParameterizedType(java.lang.reflect.ParameterizedType);
descriptor: (Ljava/lang/reflect/ParameterizedType;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface java.lang.reflect.ParameterizedType.getRawType:()Ljava/lang/reflect/Type;
checkcast java.lang.Class
astore 2
start local 2 1: aconst_null
astore 3
start local 3 2: aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.partialDefinitions:Lorg/glassfish/gmbal/typelib/TypeEvaluator$PartialDefinitions;
aload 1
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions.get:(Ljava/lang/reflect/ParameterizedType;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 3
3: aload 3
ifnonnull 15
4: aload 2
invokevirtual java.lang.Class.getModifiers:()I
aload 2
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aload 2
5: invokestatic org.glassfish.gmbal.typelib.DeclarationFactory.ecdecl:(ILjava/lang/String;Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
astore 4
start local 4 6: aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.partialDefinitions:Lorg/glassfish/gmbal/typelib/TypeEvaluator$PartialDefinitions;
aload 1
aload 4
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions.put:(Ljava/lang/reflect/ParameterizedType;Lorg/glassfish/gmbal/typelib/EvaluatedType;)V
7: aload 0
aload 1
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.getBindings:(Ljava/lang/reflect/ParameterizedType;)Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult;
8: astore 5
start local 5 9: aload 0
aload 5
aload 2
aload 4
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.getCorrectDeclaration:(Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult;Ljava/lang/Class;Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 3
end local 5 10: goto 14
StackMap locals: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor java.lang.reflect.ParameterizedType java.lang.Class org.glassfish.gmbal.typelib.EvaluatedType org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
StackMap stack: java.lang.Throwable
11: astore 6
12: aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.partialDefinitions:Lorg/glassfish/gmbal/typelib/TypeEvaluator$PartialDefinitions;
aload 1
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions.remove:(Ljava/lang/reflect/ParameterizedType;)V
13: aload 6
athrow
14: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.partialDefinitions:Lorg/glassfish/gmbal/typelib/TypeEvaluator$PartialDefinitions;
aload 1
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$PartialDefinitions.remove:(Ljava/lang/reflect/ParameterizedType;)V
end local 4 15: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 16 1 pt Ljava/lang/reflect/ParameterizedType;
1 16 2 decl Ljava/lang/Class<*>;
2 16 3 result Lorg/glassfish/gmbal/typelib/EvaluatedType;
6 15 4 newDecl Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
9 10 5 bindings Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult<Ljava/lang/String;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
Exception table:
from to target type
7 11 11 any
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
MethodParameters:
Name Flags
pt
private void fieldException(java.lang.Exception, java.lang.reflect.Field);
descriptor: (Ljava/lang/Exception;Ljava/lang/reflect/Field;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=0, locals=3, args_size=3
start local 0 start local 1 start local 2 0: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 1 1 exc Ljava/lang/Exception;
0 1 2 fld Ljava/lang/reflect/Field;
RuntimeVisibleAnnotations:
org.glassfish.pfl.tf.spi.annotation.InfoMethod()
RuntimeVisibleParameterAnnotations:
0:
org.glassfish.pfl.basic.logex.Chain()
1:
MethodParameters:
Name Flags
exc
fld
private org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration visitFieldDeclaration(org.glassfish.gmbal.typelib.EvaluatedClassDeclaration, java.lang.reflect.Field);
descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/reflect/Field;)Lorg/glassfish/gmbal/typelib/EvaluatedFieldDeclaration;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: aload 2
invokevirtual java.lang.reflect.Field.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isFinal:(I)Z
ifne 3
2: aconst_null
areturn
3: StackMap locals: org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration
StackMap stack:
aload 2
invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
astore 4
start local 4 4: aload 4
invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.getImmutableEvaluatedType:(Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 5
start local 5 5: aload 5
ifnonnull 7
6: aconst_null
areturn
7: StackMap locals: java.lang.Class org.glassfish.gmbal.typelib.EvaluatedType
StackMap stack:
aload 1
aload 2
invokevirtual java.lang.reflect.Field.getModifiers:()I
8: aload 5
aload 2
invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
aload 2
9: invokestatic org.glassfish.gmbal.typelib.DeclarationFactory.efdecl:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;ILorg/glassfish/gmbal/typelib/EvaluatedType;Ljava/lang/String;Ljava/lang/reflect/Field;)Lorg/glassfish/gmbal/typelib/EvaluatedFieldDeclaration;
astore 3
end local 5 end local 4 10: goto 17
StackMap locals: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor org.glassfish.gmbal.typelib.EvaluatedClassDeclaration java.lang.reflect.Field org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration
StackMap stack: java.lang.Exception
11: astore 4
start local 4 12: aload 0
aload 4
aload 2
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.fieldException:(Ljava/lang/Exception;Ljava/lang/reflect/Field;)V
end local 4 13: goto 17
14: StackMap locals:
StackMap stack: java.lang.Error
astore 4
start local 4 15: invokestatic org.glassfish.pfl.basic.logex.OperationTracer.freeze:()V
16: aload 4
athrow
end local 4 17: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 18 1 cdecl Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
0 18 2 fld Ljava/lang/reflect/Field;
1 18 3 result Lorg/glassfish/gmbal/typelib/EvaluatedFieldDeclaration;
4 10 4 fieldType Ljava/lang/Class;
5 10 5 ftype Lorg/glassfish/gmbal/typelib/EvaluatedType;
12 13 4 exc Ljava/lang/Exception;
15 17 4 err Ljava/lang/Error;
Exception table:
from to target type
1 2 11 Class java.lang.Exception
3 6 11 Class java.lang.Exception
7 10 11 Class java.lang.Exception
1 2 14 Class java.lang.Error
3 6 14 Class java.lang.Error
7 10 14 Class java.lang.Error
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
MethodParameters:
Name Flags
cdecl final
fld final
private org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration visitMethodDeclaration(org.glassfish.gmbal.typelib.EvaluatedClassDeclaration, java.lang.reflect.Method);
descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/reflect/Method;)Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual java.lang.reflect.Method.getGenericParameterTypes:()[Ljava/lang/reflect/Type;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
1: new org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$1
dup
aload 0
invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$1.<init>:(Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;)V
2: invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.map:(Ljava/util/List;Lorg/glassfish/pfl/basic/func/UnaryFunction;)Ljava/util/List;
3: astore 3
start local 3 4: aload 0
ldc "eptypes"
aload 3
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.describe:(Ljava/lang/String;Ljava/lang/Object;)V
5: aload 2
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
ldc "getThing"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
6: aload 0
ldc "processing getThing method from test"
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.message:(Ljava/lang/String;)V
7: StackMap locals: java.util.List
StackMap stack:
aconst_null
astore 4
start local 4 8: aload 1
aload 2
invokevirtual java.lang.reflect.Method.getModifiers:()I
9: aload 0
aload 2
invokevirtual java.lang.reflect.Method.getGenericReturnType:()Ljava/lang/reflect/Type;
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType:(Ljava/lang/Object;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
10: aload 2
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
aload 3
aload 2
11: 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;
astore 4
12: aload 2
ldc Lorg/glassfish/gmbal/typelib/ForceTypelibError;
invokevirtual java.lang.reflect.Method.isAnnotationPresent:(Ljava/lang/Class;)Z
ifeq 19
13: new java.lang.StackOverflowError
dup
14: ldc "Simulating stack overflow in test"
15: invokespecial java.lang.StackOverflowError.<init>:(Ljava/lang/String;)V
athrow
16: StackMap locals: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor org.glassfish.gmbal.typelib.EvaluatedClassDeclaration java.lang.reflect.Method java.util.List org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration
StackMap stack: java.lang.Error
astore 5
start local 5 17: invokestatic org.glassfish.pfl.basic.logex.OperationTracer.freeze:()V
18: aload 5
athrow
end local 5 19: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 20 1 cdecl Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
0 20 2 mdecl Ljava/lang/reflect/Method;
4 20 3 eptypes Ljava/util/List<Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
8 20 4 result Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;
17 19 5 err Ljava/lang/Error;
Exception table:
from to target type
8 16 16 Class java.lang.Error
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
MethodParameters:
Name Flags
cdecl final
mdecl final
private org.glassfish.gmbal.typelib.EvaluatedType visitTypeVariable(java.lang.reflect.TypeVariable);
descriptor: (Ljava/lang/reflect/TypeVariable;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 0
aload 1
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.lookup:(Ljava/lang/reflect/TypeVariable;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 2
2: goto 6
StackMap locals: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor java.lang.reflect.TypeVariable org.glassfish.gmbal.typelib.EvaluatedType
StackMap stack: java.lang.Error
3: astore 3
start local 3 4: invokestatic org.glassfish.pfl.basic.logex.OperationTracer.freeze:()V
5: aload 3
athrow
end local 3 6: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 7 1 tvar Ljava/lang/reflect/TypeVariable;
1 7 2 result Lorg/glassfish/gmbal/typelib/EvaluatedType;
4 6 3 err Ljava/lang/Error;
Exception table:
from to target type
1 2 3 Class java.lang.Error
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
MethodParameters:
Name Flags
tvar
private org.glassfish.gmbal.typelib.EvaluatedType visitGenericArrayType(java.lang.reflect.GenericArrayType);
descriptor: (Ljava/lang/reflect/GenericArrayType;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 0
aload 1
invokeinterface java.lang.reflect.GenericArrayType.getGenericComponentType:()Ljava/lang/reflect/Type;
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType:(Ljava/lang/Object;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
2: invokestatic org.glassfish.gmbal.typelib.DeclarationFactory.egat:(Lorg/glassfish/gmbal/typelib/EvaluatedType;)Lorg/glassfish/gmbal/typelib/EvaluatedArrayType;
astore 2
3: goto 7
StackMap locals: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor java.lang.reflect.GenericArrayType org.glassfish.gmbal.typelib.EvaluatedType
StackMap stack: java.lang.Error
4: astore 3
start local 3 5: invokestatic org.glassfish.pfl.basic.logex.OperationTracer.freeze:()V
6: aload 3
athrow
end local 3 7: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 8 1 at Ljava/lang/reflect/GenericArrayType;
1 8 2 result Lorg/glassfish/gmbal/typelib/EvaluatedType;
5 7 3 err Ljava/lang/Error;
Exception table:
from to target type
1 3 4 Class java.lang.Error
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
MethodParameters:
Name Flags
at
private org.glassfish.gmbal.typelib.EvaluatedType visitWildcardType(java.lang.reflect.WildcardType);
descriptor: (Ljava/lang/reflect/WildcardType;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 1
invokeinterface java.lang.reflect.WildcardType.getUpperBounds:()[Ljava/lang/reflect/Type;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
astore 3
start local 3 2: aload 3
invokeinterface java.util.List.size:()I
ifle 9
3: aload 3
invokeinterface java.util.List.size:()I
iconst_1
if_icmple 7
4: getstatic org.glassfish.gmbal.typelib.Exceptions.self:Lorg/glassfish/gmbal/typelib/Exceptions;
5: aload 1
6: invokeinterface org.glassfish.gmbal.typelib.Exceptions.multipleUpperBoundsNotSupported:(Ljava/lang/Object;)Ljava/lang/UnsupportedOperationException;
athrow
7: StackMap locals: org.glassfish.gmbal.typelib.EvaluatedType java.util.List
StackMap stack:
aload 0
aload 3
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType:(Ljava/lang/Object;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 2
8: goto 14
9: StackMap locals:
StackMap stack:
getstatic org.glassfish.gmbal.typelib.EvaluatedType.EOBJECT:Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
astore 2
end local 3 10: goto 14
StackMap locals: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor java.lang.reflect.WildcardType org.glassfish.gmbal.typelib.EvaluatedType
StackMap stack: java.lang.Error
11: astore 3
start local 3 12: invokestatic org.glassfish.pfl.basic.logex.OperationTracer.freeze:()V
13: aload 3
athrow
end local 3 14: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 15 1 wt Ljava/lang/reflect/WildcardType;
1 15 2 result Lorg/glassfish/gmbal/typelib/EvaluatedType;
2 10 3 ub Ljava/util/List<Ljava/lang/reflect/Type;>;
12 14 3 err Ljava/lang/Error;
Exception table:
from to target type
1 10 11 Class java.lang.Error
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
MethodParameters:
Name Flags
wt
private org.glassfish.gmbal.typelib.EvaluatedType lookup(java.lang.reflect.TypeVariable);
descriptor: (Ljava/lang/reflect/TypeVariable;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.display:Lorg/glassfish/pfl/basic/contain/Display;
aload 1
invokeinterface java.lang.reflect.TypeVariable.getName:()Ljava/lang/String;
invokevirtual org.glassfish.pfl.basic.contain.Display.lookup:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.glassfish.gmbal.typelib.EvaluatedType
astore 2
2: aload 2
ifnonnull 16
3: aload 1
invokeinterface java.lang.reflect.TypeVariable.getBounds:()[Ljava/lang/reflect/Type;
astore 3
start local 3 4: aload 3
arraylength
ifle 11
5: aload 3
arraylength
iconst_1
if_icmple 9
6: getstatic org.glassfish.gmbal.typelib.Exceptions.self:Lorg/glassfish/gmbal/typelib/Exceptions;
7: aload 1
invokeinterface org.glassfish.gmbal.typelib.Exceptions.multipleUpperBoundsNotSupported:(Ljava/lang/Object;)Ljava/lang/UnsupportedOperationException;
8: athrow
9: StackMap locals: org.glassfish.gmbal.typelib.EvaluatedType java.lang.reflect.Type[]
StackMap stack:
aload 0
aload 3
iconst_0
aaload
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType:(Ljava/lang/Object;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 2
10: goto 16
11: StackMap locals:
StackMap stack:
getstatic org.glassfish.gmbal.typelib.EvaluatedType.EOBJECT:Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
astore 2
end local 3 12: goto 16
StackMap locals: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor java.lang.reflect.TypeVariable org.glassfish.gmbal.typelib.EvaluatedType
StackMap stack: java.lang.Error
13: astore 3
start local 3 14: invokestatic org.glassfish.pfl.basic.logex.OperationTracer.freeze:()V
15: aload 3
athrow
end local 3 16: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 17 1 tvar Ljava/lang/reflect/TypeVariable;
1 17 2 result Lorg/glassfish/gmbal/typelib/EvaluatedType;
4 12 3 bounds [Ljava/lang/reflect/Type;
14 16 3 err Ljava/lang/Error;
Exception table:
from to target type
1 12 13 Class java.lang.Error
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
MethodParameters:
Name Flags
tvar
private org.glassfish.gmbal.typelib.EvaluatedType getCorrectDeclaration(org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult<java.lang.String, org.glassfish.gmbal.typelib.EvaluatedType>, java.lang.Class, org.glassfish.gmbal.typelib.EvaluatedClassDeclaration);
descriptor: (Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult;Ljava/lang/Class;Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aconst_null
astore 4
start local 4 1: aload 1
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult.getList:()Ljava/util/List;
astore 5
start local 5 2: new org.glassfish.gmbal.typelib.TypeEvaluator$EvalMapKey
dup
aload 2
aload 5
invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$EvalMapKey.<init>:(Ljava/lang/Class;Ljava/util/List;)V
astore 6
start local 6 3: aload 5
invokeinterface java.util.List.size:()I
ifle 5
4: aload 3
aload 5
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.instantiations:(Ljava/util/List;)V
5: StackMap locals: org.glassfish.gmbal.typelib.EvaluatedType java.util.List org.glassfish.gmbal.typelib.TypeEvaluator$EvalMapKey
StackMap stack:
getstatic org.glassfish.gmbal.typelib.TypeEvaluator.evalClassMap:Ljava/util/Map;
aload 6
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.glassfish.gmbal.typelib.EvaluatedType
astore 4
6: aload 4
ifnonnull 12
7: aload 0
ldc "No result in evalClassMap"
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.message:(Ljava/lang/String;)V
8: getstatic org.glassfish.gmbal.typelib.TypeEvaluator.evalClassMap:Ljava/util/Map;
aload 6
aload 3
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
9: aload 0
aload 3
aload 1
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult.getMap:()Ljava/util/Map;
aload 2
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.processClass:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/util/Map;Ljava/lang/Class;)V
10: aload 3
astore 4
11: goto 17
12: StackMap locals:
StackMap stack:
aload 0
ldc "Found result in evalClassMap"
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.message:(Ljava/lang/String;)V
end local 6 end local 5 13: goto 17
StackMap locals: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult java.lang.Class org.glassfish.gmbal.typelib.EvaluatedClassDeclaration org.glassfish.gmbal.typelib.EvaluatedType
StackMap stack: java.lang.Error
14: astore 5
start local 5 15: invokestatic org.glassfish.pfl.basic.logex.OperationTracer.freeze:()V
16: aload 5
athrow
end local 5 17: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 18 1 bindings Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult<Ljava/lang/String;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
0 18 2 decl Ljava/lang/Class;
0 18 3 newDecl Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
1 18 4 result Lorg/glassfish/gmbal/typelib/EvaluatedType;
2 13 5 blist Ljava/util/List<Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
3 13 6 key Lorg/glassfish/gmbal/typelib/TypeEvaluator$EvalMapKey;
15 17 5 err Ljava/lang/Error;
Exception table:
from to target type
1 13 14 Class java.lang.Error
Signature: (Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult<Ljava/lang/String;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;Ljava/lang/Class;Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
MethodParameters:
Name Flags
bindings
decl
newDecl
private void processClass(org.glassfish.gmbal.typelib.EvaluatedClassDeclaration, java.util.Map<java.lang.String, org.glassfish.gmbal.typelib.EvaluatedType>, java.lang.Class);
descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/util/Map;Ljava/lang/Class;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.display:Lorg/glassfish/pfl/basic/contain/Display;
invokevirtual org.glassfish.pfl.basic.contain.Display.enterScope:()V
1: aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.display:Lorg/glassfish/pfl/basic/contain/Display;
aload 2
invokevirtual org.glassfish.pfl.basic.contain.Display.bind:(Ljava/util/Map;)V
2: aload 0
aload 3
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.getInheritance:(Ljava/lang/Class;)Ljava/util/List;
3: new org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$2
dup
aload 0
invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$2.<init>:(Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;)V
4: invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.map:(Ljava/util/List;Lorg/glassfish/pfl/basic/func/UnaryFunction;)Ljava/util/List;
5: astore 4
start local 4 6: aload 0
ldc "inheritance"
aload 4
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.describe:(Ljava/lang/String;Ljava/lang/Object;)V
7: aload 1
aload 4
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.inheritance:(Ljava/util/List;)V
8: aload 3
invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.getDeclaredFields:(Ljava/lang/Class;)Ljava/util/List;
9: new org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$3
dup
aload 0
aload 1
invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$3.<init>:(Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;)V
10: invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.map:(Ljava/util/List;Lorg/glassfish/pfl/basic/func/UnaryFunction;)Ljava/util/List;
astore 5
start local 5 11: aload 1
aload 5
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.fields:(Ljava/util/List;)V
12: aload 3
invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.getDeclaredMethods:(Ljava/lang/Class;)Ljava/util/List;
13: new org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$4
dup
aload 0
aload 1
invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$4.<init>:(Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;)V
14: invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.map:(Ljava/util/List;Lorg/glassfish/pfl/basic/func/UnaryFunction;)Ljava/util/List;
astore 6
start local 6 15: aload 1
aload 6
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.methods:(Ljava/util/List;)V
16: aload 1
invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.freeze:()V
17: aload 0
ldc "newDecl"
aload 1
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.describe:(Ljava/lang/String;Ljava/lang/Object;)V
end local 6 end local 5 end local 4 18: goto 25
StackMap locals:
StackMap stack: java.lang.Error
19: astore 4
start local 4 20: invokestatic org.glassfish.pfl.basic.logex.OperationTracer.freeze:()V
21: aload 4
athrow
end local 4 22: StackMap locals:
StackMap stack: java.lang.Throwable
astore 7
23: aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.display:Lorg/glassfish/pfl/basic/contain/Display;
invokevirtual org.glassfish.pfl.basic.contain.Display.exitScope:()V
24: aload 7
athrow
25: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.display:Lorg/glassfish/pfl/basic/contain/Display;
invokevirtual org.glassfish.pfl.basic.contain.Display.exitScope:()V
26: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 27 1 newDecl Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
0 27 2 bindings Ljava/util/Map<Ljava/lang/String;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
0 27 3 decl Ljava/lang/Class;
6 18 4 inheritance Ljava/util/List<Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;>;
11 18 5 newFields Ljava/util/List<Lorg/glassfish/gmbal/typelib/EvaluatedFieldDeclaration;>;
15 18 6 newMethods Ljava/util/List<Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;>;
20 22 4 err Ljava/lang/Error;
Exception table:
from to target type
2 18 19 Class java.lang.Error
2 22 22 any
Signature: (Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/util/Map<Ljava/lang/String;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;Ljava/lang/Class;)V
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
MethodParameters:
Name Flags
newDecl final
bindings final
decl final
private java.util.List<java.lang.reflect.Type> getInheritance(java.lang.Class);
descriptor: (Ljava/lang/Class;)Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
iconst_0
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
start local 2 1: aload 2
aload 1
invokevirtual java.lang.Class.getGenericSuperclass:()Ljava/lang/reflect/Type;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
2: aload 2
aload 1
invokevirtual java.lang.Class.getGenericInterfaces:()[Ljava/lang/reflect/Type;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
3: goto 7
StackMap locals: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor java.lang.Class java.util.List
StackMap stack: java.lang.Error
4: astore 3
start local 3 5: invokestatic org.glassfish.pfl.basic.logex.OperationTracer.freeze:()V
6: aload 3
athrow
end local 3 7: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 8 1 cls Ljava/lang/Class;
1 8 2 result Ljava/util/List<Ljava/lang/reflect/Type;>;
5 7 3 err Ljava/lang/Error;
Exception table:
from to target type
1 3 4 Class java.lang.Error
Signature: (Ljava/lang/Class;)Ljava/util/List<Ljava/lang/reflect/Type;>;
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelib()
MethodParameters:
Name Flags
cls
private org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult<java.lang.String, org.glassfish.gmbal.typelib.EvaluatedType> getBindings(java.lang.Class);
descriptor: (Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: new org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult
dup
1: invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult.<init>:()V
astore 2
start local 2 2: aload 1
invokevirtual java.lang.Class.getTypeParameters:()[Ljava/lang/reflect/TypeVariable;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 7
StackMap locals: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor java.lang.Class org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult top int int java.lang.reflect.TypeVariable[]
StackMap stack:
3: aload 6
iload 4
aaload
astore 3
start local 3 4: aload 0
aload 3
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.lookup:(Ljava/lang/reflect/TypeVariable;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
astore 7
start local 7 5: aload 2
aload 3
invokeinterface java.lang.reflect.TypeVariable.getName:()Ljava/lang/String;
aload 7
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult.add:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 7 end local 3 6: iinc 4 1
StackMap locals:
StackMap stack:
7: iload 4
iload 5
if_icmplt 3
8: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 9 1 decl Ljava/lang/Class;
2 9 2 result Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult<Ljava/lang/String;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
4 6 3 tv Ljava/lang/reflect/TypeVariable;
5 6 7 res Lorg/glassfish/gmbal/typelib/EvaluatedType;
Signature: (Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult<Ljava/lang/String;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
MethodParameters:
Name Flags
decl
private org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult<java.lang.String, org.glassfish.gmbal.typelib.EvaluatedType> getBindings(java.lang.reflect.ParameterizedType);
descriptor: (Ljava/lang/reflect/ParameterizedType;)Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: new org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult
dup
1: invokespecial org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult.<init>:()V
astore 2
start local 2 2: aload 1
invokeinterface java.lang.reflect.ParameterizedType.getActualTypeArguments:()[Ljava/lang/reflect/Type;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
3: astore 3
start local 3 4: aload 1
invokeinterface java.lang.reflect.ParameterizedType.getRawType:()Ljava/lang/reflect/Type;
checkcast java.lang.Class
invokevirtual java.lang.Class.getTypeParameters:()[Ljava/lang/reflect/TypeVariable;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
5: astore 4
start local 4 6: goto 10
7: StackMap locals: org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult java.util.Iterator java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.reflect.Type
astore 5
start local 5 8: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.reflect.TypeVariable
astore 6
start local 6 9: aload 2
aload 6
invokeinterface java.lang.reflect.TypeVariable.getName:()Ljava/lang/String;
aload 0
aload 5
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType:(Ljava/lang/Object;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
invokevirtual org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult.add:(Ljava/lang/Object;Ljava/lang/Object;)V
end local 6 end local 5 10: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifeq 11
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
11: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
if_icmpeq 13
12: getstatic org.glassfish.gmbal.typelib.Exceptions.self:Lorg/glassfish/gmbal/typelib/Exceptions;
aload 1
invokeinterface org.glassfish.gmbal.typelib.Exceptions.listsNotTheSameLengthInParamType:(Ljava/lang/reflect/ParameterizedType;)Ljava/lang/IllegalArgumentException;
athrow
13: StackMap locals:
StackMap stack:
aload 2
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor;
0 14 1 pt Ljava/lang/reflect/ParameterizedType;
2 14 2 result Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult<Ljava/lang/String;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
4 14 3 types Ljava/util/Iterator<Ljava/lang/reflect/Type;>;
6 14 4 tvars Ljava/util/Iterator<Ljava/lang/reflect/TypeVariable;>;
8 10 5 type Ljava/lang/reflect/Type;
9 10 6 tvar Ljava/lang/reflect/TypeVariable;
Signature: (Ljava/lang/reflect/ParameterizedType;)Lorg/glassfish/gmbal/typelib/TypeEvaluator$TypeEvaluationVisitor$OrderedResult<Ljava/lang/String;Lorg/glassfish/gmbal/typelib/EvaluatedType;>;
MethodParameters:
Name Flags
pt
}
SourceFile: "TypeEvaluator.java"
NestHost: org.glassfish.gmbal.typelib.TypeEvaluator
InnerClasses:
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
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
public OrderedResult = org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$OrderedResult of org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor
RuntimeVisibleAnnotations:
org.glassfish.gmbal.impl.trace.TraceTypelibEval()
org.glassfish.gmbal.impl.trace.TraceTypelib()