public class org.aspectj.weaver.TypeVariableReferenceType extends org.aspectj.weaver.ReferenceType implements org.aspectj.weaver.TypeVariableReference
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.aspectj.weaver.TypeVariableReferenceType
super_class: org.aspectj.weaver.ReferenceType
{
private org.aspectj.weaver.TypeVariable typeVariable;
descriptor: Lorg/aspectj/weaver/TypeVariable;
flags: (0x0002) ACC_PRIVATE
public void <init>(org.aspectj.weaver.TypeVariable, org.aspectj.weaver.World);
descriptor: (Lorg/aspectj/weaver/TypeVariable;Lorg/aspectj/weaver/World;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.aspectj.weaver.TypeVariable.getGenericSignature:()Ljava/lang/String;
aload 1
invokevirtual org.aspectj.weaver.TypeVariable.getErasureSignature:()Ljava/lang/String;
aload 2
invokespecial org.aspectj.weaver.ReferenceType.<init>:(Ljava/lang/String;Ljava/lang/String;Lorg/aspectj/weaver/World;)V
1: aload 0
aload 1
putfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
0 3 1 typeVariable Lorg/aspectj/weaver/TypeVariable;
0 3 2 world Lorg/aspectj/weaver/World;
MethodParameters:
Name Flags
typeVariable
world
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.aspectj.weaver.TypeVariableReferenceType
ifeq 3
1: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
aload 1
checkcast org.aspectj.weaver.TypeVariableReferenceType
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
if_acmpne 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
0 4 1 other Ljava/lang/Object;
MethodParameters:
Name Flags
other
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
invokevirtual java.lang.Object.hashCode:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
public org.aspectj.weaver.ReferenceTypeDelegate getDelegate();
descriptor: ()Lorg/aspectj/weaver/ReferenceTypeDelegate;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.delegate:Lorg/aspectj/weaver/ReferenceTypeDelegate;
ifnonnull 13
1: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
invokevirtual org.aspectj.weaver.TypeVariable.getFirstBound:()Lorg/aspectj/weaver/UnresolvedType;
aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.world:Lorg/aspectj/weaver/World;
invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
astore 1
start local 1 2: aconst_null
astore 2
start local 2 3: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.isMissing:()Z
ifeq 11
4: new org.aspectj.weaver.BoundedReferenceTypeDelegate
dup
aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.world:Lorg/aspectj/weaver/World;
getstatic org.aspectj.weaver.UnresolvedType.OBJECT:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.World.resolve:(Lorg/aspectj/weaver/UnresolvedType;)Lorg/aspectj/weaver/ResolvedType;
checkcast org.aspectj.weaver.ReferenceType
invokespecial org.aspectj.weaver.BoundedReferenceTypeDelegate.<init>:(Lorg/aspectj/weaver/ReferenceType;)V
astore 2
5: aload 0
aload 2
invokevirtual org.aspectj.weaver.TypeVariableReferenceType.setDelegate:(Lorg/aspectj/weaver/ReferenceTypeDelegate;)V
6: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.world:Lorg/aspectj/weaver/World;
invokevirtual org.aspectj.weaver.World.getLint:()Lorg/aspectj/weaver/Lint;
getfield org.aspectj.weaver.Lint.cantFindType:Lorg/aspectj/weaver/Lint$Kind;
7: new java.lang.StringBuilder
dup
ldc "Unable to find type for generic bound. Missing type is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
8: aload 0
invokevirtual org.aspectj.weaver.TypeVariableReferenceType.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
9: invokevirtual org.aspectj.weaver.Lint$Kind.signal:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;)V
10: goto 13
11: StackMap locals: org.aspectj.weaver.ResolvedType org.aspectj.weaver.BoundedReferenceTypeDelegate
StackMap stack:
new org.aspectj.weaver.BoundedReferenceTypeDelegate
dup
aload 1
checkcast org.aspectj.weaver.ReferenceType
invokespecial org.aspectj.weaver.BoundedReferenceTypeDelegate.<init>:(Lorg/aspectj/weaver/ReferenceType;)V
astore 2
12: aload 0
aload 2
invokevirtual org.aspectj.weaver.TypeVariableReferenceType.setDelegate:(Lorg/aspectj/weaver/ReferenceTypeDelegate;)V
end local 2 end local 1 13: StackMap locals:
StackMap stack:
aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.delegate:Lorg/aspectj/weaver/ReferenceTypeDelegate;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
2 13 1 resolvedFirstBound Lorg/aspectj/weaver/ResolvedType;
3 13 2 brtd Lorg/aspectj/weaver/BoundedReferenceTypeDelegate;
public org.aspectj.weaver.UnresolvedType parameterize(java.util.Map<java.lang.String, org.aspectj.weaver.UnresolvedType>);
descriptor: (Ljava/util/Map;)Lorg/aspectj/weaver/UnresolvedType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual org.aspectj.weaver.TypeVariableReferenceType.getName:()Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.aspectj.weaver.UnresolvedType
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.world:Lorg/aspectj/weaver/World;
aload 2
invokevirtual org.aspectj.weaver.World.resolve:(Lorg/aspectj/weaver/UnresolvedType;)Lorg/aspectj/weaver/ResolvedType;
areturn
3: StackMap locals: org.aspectj.weaver.UnresolvedType
StackMap stack:
aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
0 4 1 typeBindings Ljava/util/Map<Ljava/lang/String;Lorg/aspectj/weaver/UnresolvedType;>;
1 4 2 ut Lorg/aspectj/weaver/UnresolvedType;
Signature: (Ljava/util/Map<Ljava/lang/String;Lorg/aspectj/weaver/UnresolvedType;>;)Lorg/aspectj/weaver/UnresolvedType;
MethodParameters:
Name Flags
typeBindings
public org.aspectj.weaver.TypeVariable getTypeVariable();
descriptor: ()Lorg/aspectj/weaver/TypeVariable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
public boolean isTypeVariableReference();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
invokevirtual org.aspectj.weaver.TypeVariable.getName:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
public boolean isGenericWildcard();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
public boolean isAnnotation();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
invokevirtual org.aspectj.weaver.TypeVariable.getUpperBound:()Lorg/aspectj/weaver/UnresolvedType;
checkcast org.aspectj.weaver.ReferenceType
astore 1
start local 1 1: aload 1
invokevirtual org.aspectj.weaver.ReferenceType.isAnnotation:()Z
ifeq 3
2: iconst_1
ireturn
3: StackMap locals: org.aspectj.weaver.ReferenceType
StackMap stack:
aload 1
invokevirtual org.aspectj.weaver.ReferenceType.getWorld:()Lorg/aspectj/weaver/World;
astore 2
start local 2 4: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
aload 2
invokevirtual org.aspectj.weaver.TypeVariable.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/TypeVariable;
pop
5: getstatic org.aspectj.weaver.ResolvedType.ANNOTATION:Lorg/aspectj/weaver/UnresolvedType;
aload 2
invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
astore 3
start local 3 6: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
invokevirtual org.aspectj.weaver.TypeVariable.getSuperInterfaces:()[Lorg/aspectj/weaver/UnresolvedType;
astore 4
start local 4 7: iconst_0
istore 5
start local 5 8: goto 14
9: StackMap locals: org.aspectj.weaver.TypeVariableReferenceType org.aspectj.weaver.ReferenceType org.aspectj.weaver.World org.aspectj.weaver.ResolvedType org.aspectj.weaver.UnresolvedType[] int
StackMap stack:
aload 4
iload 5
aaload
checkcast org.aspectj.weaver.ReferenceType
invokevirtual org.aspectj.weaver.ReferenceType.isAnnotation:()Z
ifeq 11
10: iconst_1
ireturn
11: StackMap locals:
StackMap stack:
aload 4
iload 5
aaload
aload 3
invokevirtual org.aspectj.weaver.UnresolvedType.equals:(Ljava/lang/Object;)Z
ifeq 13
12: iconst_1
ireturn
13: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
14: iload 5
aload 4
arraylength
if_icmplt 9
end local 5 15: iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
1 16 1 upper Lorg/aspectj/weaver/ReferenceType;
4 16 2 world Lorg/aspectj/weaver/World;
6 16 3 annotationType Lorg/aspectj/weaver/ResolvedType;
7 16 4 ifBounds [Lorg/aspectj/weaver/UnresolvedType;
8 15 5 i I
public java.lang.String getSignature();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 1
start local 1 1: aload 1
ldc "T"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
2: aload 1
aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
invokevirtual org.aspectj.weaver.TypeVariable.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
3: aload 1
ldc ";"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
4: aload 1
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
1 5 1 sb Ljava/lang/StringBuffer;
public java.lang.String getTypeVariableName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
invokevirtual org.aspectj.weaver.TypeVariable.getName:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
public org.aspectj.weaver.ReferenceType getUpperBound();
descriptor: ()Lorg/aspectj/weaver/ReferenceType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.world:Lorg/aspectj/weaver/World;
invokevirtual org.aspectj.weaver.TypeVariable.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/TypeVariable;
invokevirtual org.aspectj.weaver.TypeVariable.getUpperBound:()Lorg/aspectj/weaver/UnresolvedType;
checkcast org.aspectj.weaver.ReferenceType
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
public org.aspectj.weaver.ResolvedType resolve(org.aspectj.weaver.World);
descriptor: (Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
aload 1
invokevirtual org.aspectj.weaver.TypeVariable.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/TypeVariable;
pop
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
0 2 1 world Lorg/aspectj/weaver/World;
MethodParameters:
Name Flags
world
public boolean isTypeVariableResolved();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.TypeVariableReferenceType.typeVariable:Lorg/aspectj/weaver/TypeVariable;
getfield org.aspectj.weaver.TypeVariable.isResolved:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/TypeVariableReferenceType;
}
SourceFile: "TypeVariableReferenceType.java"
InnerClasses:
public Kind = org.aspectj.weaver.Lint$Kind of org.aspectj.weaver.Lint