class org.aspectj.weaver.ResolvedType$2 implements org.aspectj.weaver.Iterators$Getter<org.aspectj.weaver.ResolvedType, org.aspectj.weaver.ResolvedType>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.aspectj.weaver.ResolvedType$2
super_class: java.lang.Object
{
java.util.List<java.lang.String> alreadySeen;
descriptor: Ljava/util/List;
flags: (0x0000)
Signature: Ljava/util/List<Ljava/lang/String;>;
final org.aspectj.weaver.ResolvedType this$0;
descriptor: Lorg/aspectj/weaver/ResolvedType;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final boolean val$wantDeclaredParents;
descriptor: Z
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final boolean val$wantGenerics;
descriptor: Z
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(org.aspectj.weaver.ResolvedType, boolean, boolean);
descriptor: (Lorg/aspectj/weaver/ResolvedType;ZZ)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 0: aload 0
aload 1
putfield org.aspectj.weaver.ResolvedType$2.this$0:Lorg/aspectj/weaver/ResolvedType;
aload 0
iload 2
putfield org.aspectj.weaver.ResolvedType$2.val$wantDeclaredParents:Z
aload 0
iload 3
putfield org.aspectj.weaver.ResolvedType$2.val$wantGenerics:Z
aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.aspectj.weaver.ResolvedType$2.alreadySeen:Ljava/util/List;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/aspectj/weaver/ResolvedType$2;
MethodParameters:
Name Flags
this$0 final
val$wantDeclaredParents final
val$wantGenerics final
public java.util.Iterator<org.aspectj.weaver.ResolvedType> get(org.aspectj.weaver.ResolvedType);
descriptor: (Lorg/aspectj/weaver/ResolvedType;)Ljava/util/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getDeclaredInterfaces:()[Lorg/aspectj/weaver/ResolvedType;
astore 2
start local 2 1: aload 0
getfield org.aspectj.weaver.ResolvedType$2.val$wantDeclaredParents:Z
ifne 31
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.hasNewParentMungers:()Z
ifeq 31
2: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 3: aload 1
getfield org.aspectj.weaver.ResolvedType.interTypeMungers:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 20
StackMap locals: org.aspectj.weaver.ResolvedType$2 org.aspectj.weaver.ResolvedType org.aspectj.weaver.ResolvedType[] java.util.List top java.util.Iterator
StackMap stack:
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.aspectj.weaver.ConcreteTypeMunger
astore 4
start local 4 5: aload 4
invokevirtual org.aspectj.weaver.ConcreteTypeMunger.getMunger:()Lorg/aspectj/weaver/ResolvedTypeMunger;
ifnull 20
6: aload 4
invokevirtual org.aspectj.weaver.ConcreteTypeMunger.getMunger:()Lorg/aspectj/weaver/ResolvedTypeMunger;
astore 6
start local 6 7: aload 6
invokevirtual org.aspectj.weaver.ResolvedTypeMunger.getKind:()Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
getstatic org.aspectj.weaver.ResolvedTypeMunger.Parent:Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
if_acmpne 20
8: aload 6
checkcast org.aspectj.weaver.NewParentTypeMunger
invokevirtual org.aspectj.weaver.NewParentTypeMunger.getNewParent:()Lorg/aspectj/weaver/ResolvedType;
astore 7
start local 7 9: aload 0
getfield org.aspectj.weaver.ResolvedType$2.val$wantGenerics:Z
ifne 11
aload 7
invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedOrGenericType:()Z
ifeq 11
10: aload 7
invokevirtual org.aspectj.weaver.ResolvedType.getRawType:()Lorg/aspectj/weaver/ResolvedType;
astore 7
11: StackMap locals: org.aspectj.weaver.ResolvedType$2 org.aspectj.weaver.ResolvedType org.aspectj.weaver.ResolvedType[] java.util.List org.aspectj.weaver.ConcreteTypeMunger java.util.Iterator org.aspectj.weaver.ResolvedTypeMunger org.aspectj.weaver.ResolvedType
StackMap stack:
iconst_0
istore 8
start local 8 12: goto 19
13: StackMap locals: int
StackMap stack:
aload 2
iload 8
aaload
astore 9
start local 9 14: aload 0
getfield org.aspectj.weaver.ResolvedType$2.val$wantGenerics:Z
ifne 16
aload 9
invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedOrGenericType:()Z
ifeq 16
15: aload 9
invokevirtual org.aspectj.weaver.ResolvedType.getRawType:()Lorg/aspectj/weaver/ResolvedType;
astore 9
16: StackMap locals: org.aspectj.weaver.ResolvedType
StackMap stack:
aload 7
invokevirtual org.aspectj.weaver.ResolvedType.getSignature:()Ljava/lang/String;
aload 9
invokevirtual org.aspectj.weaver.ResolvedType.getSignature:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 18
17: aload 3
iload 8
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 9 18: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
19: iload 8
aload 2
arraylength
if_icmplt 13
end local 8 end local 7 end local 6 end local 4 20: StackMap locals: org.aspectj.weaver.ResolvedType$2 org.aspectj.weaver.ResolvedType org.aspectj.weaver.ResolvedType[] java.util.List top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
21: aload 3
invokeinterface java.util.List.size:()I
ifle 31
22: aload 2
arraylength
aload 3
invokeinterface java.util.List.size:()I
isub
anewarray org.aspectj.weaver.ResolvedType
astore 4
start local 4 23: iconst_0
istore 5
start local 5 24: iconst_0
istore 6
start local 6 25: goto 29
26: StackMap locals: org.aspectj.weaver.ResolvedType$2 org.aspectj.weaver.ResolvedType org.aspectj.weaver.ResolvedType[] java.util.List org.aspectj.weaver.ResolvedType[] int int
StackMap stack:
aload 3
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 28
27: aload 4
iload 5
iinc 5 1
aload 2
iload 6
aaload
aastore
28: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
29: iload 6
aload 2
arraylength
if_icmplt 26
end local 6 30: aload 4
astore 2
end local 5 end local 4 end local 3 31: StackMap locals: org.aspectj.weaver.ResolvedType$2 org.aspectj.weaver.ResolvedType org.aspectj.weaver.ResolvedType[]
StackMap stack:
new org.aspectj.weaver.Iterators$ResolvedTypeArrayIterator
dup
aload 2
aload 0
getfield org.aspectj.weaver.ResolvedType$2.alreadySeen:Ljava/util/List;
aload 0
getfield org.aspectj.weaver.ResolvedType$2.val$wantGenerics:Z
invokespecial org.aspectj.weaver.Iterators$ResolvedTypeArrayIterator.<init>:([Lorg/aspectj/weaver/ResolvedType;Ljava/util/List;Z)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lorg/aspectj/weaver/ResolvedType$2;
0 32 1 type Lorg/aspectj/weaver/ResolvedType;
1 32 2 interfaces [Lorg/aspectj/weaver/ResolvedType;
3 31 3 forRemoval Ljava/util/List<Ljava/lang/Integer;>;
5 20 4 munger Lorg/aspectj/weaver/ConcreteTypeMunger;
7 20 6 m Lorg/aspectj/weaver/ResolvedTypeMunger;
9 20 7 newType Lorg/aspectj/weaver/ResolvedType;
12 20 8 ii I
14 18 9 iface Lorg/aspectj/weaver/ResolvedType;
23 31 4 interfaces2 [Lorg/aspectj/weaver/ResolvedType;
24 31 5 p I
25 30 6 ii I
Signature: (Lorg/aspectj/weaver/ResolvedType;)Ljava/util/Iterator<Lorg/aspectj/weaver/ResolvedType;>;
MethodParameters:
Name Flags
type
public java.util.Iterator get(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/util/Iterator;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast org.aspectj.weaver.ResolvedType
invokevirtual org.aspectj.weaver.ResolvedType$2.get:(Lorg/aspectj/weaver/ResolvedType;)Ljava/util/Iterator;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lorg/aspectj/weaver/Iterators$Getter<Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;>;
SourceFile: "ResolvedType.java"
EnclosingMethod: org.aspectj.weaver.ResolvedType.getHierarchy:(ZZ)Ljava/util/Iterator;
NestHost: org.aspectj.weaver.ResolvedType
InnerClasses:
public abstract Getter = org.aspectj.weaver.Iterators$Getter of org.aspectj.weaver.Iterators
public ResolvedTypeArrayIterator = org.aspectj.weaver.Iterators$ResolvedTypeArrayIterator of org.aspectj.weaver.Iterators
org.aspectj.weaver.ResolvedType$2
public Kind = org.aspectj.weaver.ResolvedTypeMunger$Kind of org.aspectj.weaver.ResolvedTypeMunger