public class org.aspectj.weaver.patterns.DeclareParents extends org.aspectj.weaver.patterns.Declare
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.aspectj.weaver.patterns.DeclareParents
super_class: org.aspectj.weaver.patterns.Declare
{
protected org.aspectj.weaver.patterns.TypePattern child;
descriptor: Lorg/aspectj/weaver/patterns/TypePattern;
flags: (0x0004) ACC_PROTECTED
protected org.aspectj.weaver.patterns.TypePatternList parents;
descriptor: Lorg/aspectj/weaver/patterns/TypePatternList;
flags: (0x0004) ACC_PROTECTED
private boolean isWildChild;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
protected boolean isExtends;
descriptor: Z
flags: (0x0004) ACC_PROTECTED
public void <init>(org.aspectj.weaver.patterns.TypePattern, java.util.List<org.aspectj.weaver.patterns.TypePattern>, );
descriptor: (Lorg/aspectj/weaver/patterns/TypePattern;Ljava/util/List;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
new org.aspectj.weaver.patterns.TypePatternList
dup
aload 2
invokespecial org.aspectj.weaver.patterns.TypePatternList.<init>:(Ljava/util/List;)V
iload 3
invokespecial org.aspectj.weaver.patterns.DeclareParents.<init>:(Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/patterns/TypePatternList;Z)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 2 1 child Lorg/aspectj/weaver/patterns/TypePattern;
0 2 2 parents Ljava/util/List<Lorg/aspectj/weaver/patterns/TypePattern;>;
0 2 3 isExtends Z
Signature: (Lorg/aspectj/weaver/patterns/TypePattern;Ljava/util/List<Lorg/aspectj/weaver/patterns/TypePattern;>;Z)V
MethodParameters:
Name Flags
child
parents
isExtends
protected void <init>(org.aspectj.weaver.patterns.TypePattern, org.aspectj.weaver.patterns.TypePatternList, boolean);
descriptor: (Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/patterns/TypePatternList;Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial org.aspectj.weaver.patterns.Declare.<init>:()V
1: aload 0
iconst_0
putfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
2: aload 0
iconst_1
putfield org.aspectj.weaver.patterns.DeclareParents.isExtends:Z
3: aload 0
aload 1
putfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
4: aload 0
aload 2
putfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
5: aload 0
iload 3
putfield org.aspectj.weaver.patterns.DeclareParents.isExtends:Z
6: new org.aspectj.weaver.patterns.WildChildFinder
dup
invokespecial org.aspectj.weaver.patterns.WildChildFinder.<init>:()V
astore 4
start local 4 7: aload 1
aload 4
aconst_null
invokevirtual org.aspectj.weaver.patterns.TypePattern.accept:(Lorg/aspectj/weaver/patterns/PatternNodeVisitor;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: aload 0
aload 4
invokevirtual org.aspectj.weaver.patterns.WildChildFinder.containedWildChild:()Z
putfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
9: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 10 1 child Lorg/aspectj/weaver/patterns/TypePattern;
0 10 2 parents Lorg/aspectj/weaver/patterns/TypePatternList;
0 10 3 isExtends Z
7 10 4 wildChildFinder Lorg/aspectj/weaver/patterns/WildChildFinder;
MethodParameters:
Name Flags
child
parents
isExtends
public boolean match(org.aspectj.weaver.ResolvedType);
descriptor: (Lorg/aspectj/weaver/ResolvedType;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
aload 1
invokevirtual org.aspectj.weaver.patterns.TypePattern.matchesStatically:(Lorg/aspectj/weaver/ResolvedType;)Z
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getWorld:()Lorg/aspectj/weaver/World;
invokevirtual org.aspectj.weaver.World.getLint:()Lorg/aspectj/weaver/Lint;
getfield org.aspectj.weaver.Lint.typeNotExposedToWeaver:Lorg/aspectj/weaver/Lint$Kind;
invokevirtual org.aspectj.weaver.Lint$Kind.isEnabled:()Z
ifeq 4
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.isExposedToWeaver:()Z
ifne 4
3: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getWorld:()Lorg/aspectj/weaver/World;
invokevirtual org.aspectj.weaver.World.getLint:()Lorg/aspectj/weaver/Lint;
getfield org.aspectj.weaver.Lint.typeNotExposedToWeaver:Lorg/aspectj/weaver/Lint$Kind;
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
invokevirtual org.aspectj.weaver.Lint$Kind.signal:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;)V
4: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 5 1 typeX Lorg/aspectj/weaver/ResolvedType;
MethodParameters:
Name Flags
typeX
public java.lang.Object accept(org.aspectj.weaver.patterns.PatternNodeVisitor, java.lang.Object);
descriptor: (Lorg/aspectj/weaver/patterns/PatternNodeVisitor;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
aload 2
invokeinterface org.aspectj.weaver.patterns.PatternNodeVisitor.visit:(Lorg/aspectj/weaver/patterns/DeclareParents;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 1 1 visitor Lorg/aspectj/weaver/patterns/PatternNodeVisitor;
0 1 2 data Ljava/lang/Object;
MethodParameters:
Name Flags
visitor
data
public org.aspectj.weaver.patterns.Declare parameterizeWith(java.util.Map<java.lang.String, org.aspectj.weaver.UnresolvedType>, org.aspectj.weaver.World);
descriptor: (Ljava/util/Map;Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/patterns/Declare;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new org.aspectj.weaver.patterns.DeclareParents
dup
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
aload 1
aload 2
invokevirtual org.aspectj.weaver.patterns.TypePattern.parameterizeWith:(Ljava/util/Map;Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/patterns/TypePattern;
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
1: aload 1
aload 2
2: invokevirtual org.aspectj.weaver.patterns.TypePatternList.parameterizeWith:(Ljava/util/Map;Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/patterns/TypePatternList;
3: aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.isExtends:Z
4: invokespecial org.aspectj.weaver.patterns.DeclareParents.<init>:(Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/patterns/TypePatternList;Z)V
astore 3
start local 3 5: aload 3
aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.copyLocationFrom:(Lorg/aspectj/weaver/patterns/PatternNode;)V
6: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 7 1 typeVariableBindingMap Ljava/util/Map<Ljava/lang/String;Lorg/aspectj/weaver/UnresolvedType;>;
0 7 2 w Lorg/aspectj/weaver/World;
5 7 3 ret Lorg/aspectj/weaver/patterns/DeclareParents;
Signature: (Ljava/util/Map<Ljava/lang/String;Lorg/aspectj/weaver/UnresolvedType;>;Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/patterns/Declare;
MethodParameters:
Name Flags
typeVariableBindingMap
w
public java.lang.String toString();
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 "declare parents: "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
2: aload 1
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
pop
3: aload 1
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.isExtends:Z
ifeq 4
ldc " extends "
goto 5
StackMap locals: org.aspectj.weaver.patterns.DeclareParents java.lang.StringBuffer
StackMap stack: java.lang.StringBuffer
4: ldc " implements "
StackMap locals: org.aspectj.weaver.patterns.DeclareParents java.lang.StringBuffer
StackMap stack: java.lang.StringBuffer java.lang.String
5: invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
6: aload 1
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
pop
7: aload 1
ldc ";"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
8: aload 1
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
1 9 1 buf Ljava/lang/StringBuffer;
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.aspectj.weaver.patterns.DeclareParents
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
checkcast org.aspectj.weaver.patterns.DeclareParents
astore 2
start local 2 3: aload 2
getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 4
aload 2
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
invokevirtual org.aspectj.weaver.patterns.TypePatternList.equals:(Ljava/lang/Object;)Z
ifeq 4
iconst_1
ireturn
StackMap locals: org.aspectj.weaver.patterns.DeclareParents
StackMap stack:
4: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 5 1 other Ljava/lang/Object;
3 5 2 o Lorg/aspectj/weaver/patterns/DeclareParents;
MethodParameters:
Name Flags
other
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: bipush 23
istore 1
start local 1 1: bipush 37
iload 1
imul
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
invokevirtual java.lang.Object.hashCode:()I
iadd
istore 1
2: bipush 37
iload 1
imul
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
invokevirtual org.aspectj.weaver.patterns.TypePatternList.hashCode:()I
iadd
istore 1
3: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
1 4 1 result I
public void write(org.aspectj.weaver.CompressingDataOutputStream);
descriptor: (Lorg/aspectj/weaver/CompressingDataOutputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
iconst_2
invokevirtual org.aspectj.weaver.CompressingDataOutputStream.writeByte:(I)V
1: aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
aload 1
invokevirtual org.aspectj.weaver.patterns.TypePattern.write:(Lorg/aspectj/weaver/CompressingDataOutputStream;)V
2: aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
aload 1
invokevirtual org.aspectj.weaver.patterns.TypePatternList.write:(Lorg/aspectj/weaver/CompressingDataOutputStream;)V
3: aload 0
aload 1
invokevirtual org.aspectj.weaver.patterns.DeclareParents.writeLocation:(Ljava/io/DataOutputStream;)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 5 1 s Lorg/aspectj/weaver/CompressingDataOutputStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
s
public static org.aspectj.weaver.patterns.Declare read(org.aspectj.weaver.VersionedDataInputStream, org.aspectj.weaver.ISourceContext);
descriptor: (Lorg/aspectj/weaver/VersionedDataInputStream;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/patterns/Declare;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: new org.aspectj.weaver.patterns.DeclareParents
dup
aload 0
aload 1
invokestatic org.aspectj.weaver.patterns.TypePattern.read:(Lorg/aspectj/weaver/VersionedDataInputStream;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/patterns/TypePattern;
aload 0
aload 1
invokestatic org.aspectj.weaver.patterns.TypePatternList.read:(Lorg/aspectj/weaver/VersionedDataInputStream;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/patterns/TypePatternList;
iconst_1
invokespecial org.aspectj.weaver.patterns.DeclareParents.<init>:(Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/patterns/TypePatternList;Z)V
astore 2
start local 2 1: aload 2
aload 1
aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.readLocation:(Lorg/aspectj/weaver/ISourceContext;Ljava/io/DataInputStream;)V
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 s Lorg/aspectj/weaver/VersionedDataInputStream;
0 3 1 context Lorg/aspectj/weaver/ISourceContext;
1 3 2 ret Lorg/aspectj/weaver/patterns/DeclareParents;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
s
context
public boolean parentsIncludeInterface(org.aspectj.weaver.World);
descriptor: (Lorg/aspectj/weaver/World;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
iload 2
invokevirtual org.aspectj.weaver.patterns.TypePatternList.get:(I)Lorg/aspectj/weaver/patterns/TypePattern;
invokevirtual org.aspectj.weaver.patterns.TypePattern.getExactType:()Lorg/aspectj/weaver/UnresolvedType;
aload 1
invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
invokevirtual org.aspectj.weaver.ResolvedType.isInterface:()Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
invokevirtual org.aspectj.weaver.patterns.TypePatternList.size:()I
if_icmplt 2
end local 2 6: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 7 1 w Lorg/aspectj/weaver/World;
1 6 2 i I
MethodParameters:
Name Flags
w
public boolean parentsIncludeClass(org.aspectj.weaver.World);
descriptor: (Lorg/aspectj/weaver/World;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
iload 2
invokevirtual org.aspectj.weaver.patterns.TypePatternList.get:(I)Lorg/aspectj/weaver/patterns/TypePattern;
invokevirtual org.aspectj.weaver.patterns.TypePattern.getExactType:()Lorg/aspectj/weaver/UnresolvedType;
aload 1
invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
invokevirtual org.aspectj.weaver.ResolvedType.isClass:()Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
invokevirtual org.aspectj.weaver.patterns.TypePatternList.size:()I
if_icmplt 2
end local 2 6: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 7 1 w Lorg/aspectj/weaver/World;
1 6 2 i I
MethodParameters:
Name Flags
w
public void resolve(org.aspectj.weaver.patterns.IScope);
descriptor: (Lorg/aspectj/weaver/patterns/IScope;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
aload 1
getstatic org.aspectj.weaver.patterns.Bindings.NONE:Lorg/aspectj/weaver/patterns/Bindings;
iconst_0
iconst_0
invokevirtual org.aspectj.weaver.patterns.TypePattern.resolveBindings:(Lorg/aspectj/weaver/patterns/IScope;Lorg/aspectj/weaver/patterns/Bindings;ZZ)Lorg/aspectj/weaver/patterns/TypePattern;
astore 2
start local 2 1: aload 2
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 6
2: new org.aspectj.weaver.patterns.WildChildFinder
dup
invokespecial org.aspectj.weaver.patterns.WildChildFinder.<init>:()V
astore 3
start local 3 3: aload 2
aload 3
aconst_null
invokevirtual org.aspectj.weaver.patterns.TypePattern.accept:(Lorg/aspectj/weaver/patterns/PatternNodeVisitor;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 0
aload 3
invokevirtual org.aspectj.weaver.patterns.WildChildFinder.containedWildChild:()Z
putfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
5: aload 0
aload 2
putfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
end local 3 6: StackMap locals: org.aspectj.weaver.patterns.TypePattern
StackMap stack:
aload 0
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
aload 1
getstatic org.aspectj.weaver.patterns.Bindings.NONE:Lorg/aspectj/weaver/patterns/Bindings;
iconst_0
iconst_1
invokevirtual org.aspectj.weaver.patterns.TypePatternList.resolveBindings:(Lorg/aspectj/weaver/patterns/IScope;Lorg/aspectj/weaver/patterns/Bindings;ZZ)Lorg/aspectj/weaver/patterns/TypePatternList;
putfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 8 1 scope Lorg/aspectj/weaver/patterns/IScope;
1 8 2 resolvedChild Lorg/aspectj/weaver/patterns/TypePattern;
3 6 3 wildChildFinder Lorg/aspectj/weaver/patterns/WildChildFinder;
MethodParameters:
Name Flags
scope
public org.aspectj.weaver.patterns.TypePatternList getParents();
descriptor: ()Lorg/aspectj/weaver/patterns/TypePatternList;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
public org.aspectj.weaver.patterns.TypePattern getChild();
descriptor: ()Lorg/aspectj/weaver/patterns/TypePattern;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.child:Lorg/aspectj/weaver/patterns/TypePattern;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
public boolean isExtends();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.isExtends:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
public boolean isAdviceLike();
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/patterns/DeclareParents;
private org.aspectj.weaver.ResolvedType maybeGetNewParent(org.aspectj.weaver.ResolvedType, org.aspectj.weaver.patterns.TypePattern, org.aspectj.weaver.World, boolean);
descriptor: (Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/World;Z)Lorg/aspectj/weaver/ResolvedType;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
getstatic org.aspectj.weaver.patterns.TypePattern.NO:Lorg/aspectj/weaver/patterns/TypePattern;
if_acmpne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.aspectj.weaver.patterns.TypePattern.getExactType:()Lorg/aspectj/weaver/UnresolvedType;
astore 5
start local 5 3: aload 5
aload 3
invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
astore 6
start local 6 4: aload 1
aload 3
getstatic org.aspectj.weaver.UnresolvedType.OBJECT:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.World.getCoreType:(Lorg/aspectj/weaver/UnresolvedType;)Lorg/aspectj/weaver/ResolvedType;
invokevirtual org.aspectj.weaver.ResolvedType.equals:(Ljava/lang/Object;)Z
ifeq 7
5: aload 3
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
ldc "decpObject"
invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;)Ljava/lang/String;
aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
6: aconst_null
areturn
7: StackMap locals: org.aspectj.weaver.UnresolvedType org.aspectj.weaver.ResolvedType
StackMap stack:
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedType:()Z
ifne 8
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.isRawType:()Z
ifeq 11
8: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 6
aload 3
invokevirtual org.aspectj.weaver.patterns.DeclareParents.verifyNoInheritedAlternateParameterization:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/World;)Z
istore 7
start local 7 9: iload 7
ifne 11
10: aconst_null
areturn
end local 7 11: StackMap locals:
StackMap stack:
aload 6
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.isAssignableFrom:(Lorg/aspectj/weaver/ResolvedType;)Z
ifeq 13
12: aconst_null
areturn
13: StackMap locals:
StackMap stack:
iload 4
ifeq 15
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
ifeq 15
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.isEnum:()Z
ifeq 15
14: aload 3
invokevirtual org.aspectj.weaver.World.getLint:()Lorg/aspectj/weaver/Lint;
getfield org.aspectj.weaver.Lint.enumAsTargetForDecpIgnored:Lorg/aspectj/weaver/Lint$Kind;
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.toString:()Ljava/lang/String;
aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
invokevirtual org.aspectj.weaver.Lint$Kind.signal:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;)V
15: StackMap locals:
StackMap stack:
iload 4
ifeq 17
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
ifeq 17
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.isAnnotation:()Z
ifeq 17
16: aload 3
invokevirtual org.aspectj.weaver.World.getLint:()Lorg/aspectj/weaver/Lint;
getfield org.aspectj.weaver.Lint.annotationAsTargetForDecpIgnored:Lorg/aspectj/weaver/Lint$Kind;
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.toString:()Ljava/lang/String;
aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
invokevirtual org.aspectj.weaver.Lint$Kind.signal:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;)V
17: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.isEnum:()Z
ifeq 25
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.isInterface:()Z
ifeq 25
18: iload 4
ifeq 24
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
ifne 24
19: aload 3
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
ldc "cantDecpOnEnumToImplInterface"
20: aload 1
21: invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
22: aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
23: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
24: StackMap locals:
StackMap stack:
aconst_null
areturn
25: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.isAnnotation:()Z
ifeq 33
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.isInterface:()Z
ifeq 33
26: iload 4
ifeq 32
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
ifne 32
27: aload 3
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
ldc "cantDecpOnAnnotationToImplInterface"
28: aload 1
29: invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
30: aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
31: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
32: StackMap locals:
StackMap stack:
aconst_null
areturn
33: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.isEnum:()Z
ifeq 41
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.isClass:()Z
ifeq 41
34: iload 4
ifeq 40
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
ifne 40
35: aload 3
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
ldc "cantDecpOnEnumToExtendClass"
36: aload 1
37: invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
38: aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
39: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
40: StackMap locals:
StackMap stack:
aconst_null
areturn
41: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.isAnnotation:()Z
ifeq 49
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.isClass:()Z
ifeq 49
42: iload 4
ifeq 48
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
ifne 48
43: aload 3
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
ldc "cantDecpOnAnnotationToExtendClass"
44: aload 1
45: invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
46: aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
47: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
48: StackMap locals:
StackMap stack:
aconst_null
areturn
49: StackMap locals:
StackMap stack:
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.getSignature:()Ljava/lang/String;
getstatic org.aspectj.weaver.UnresolvedType.ENUM:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 55
50: iload 4
ifeq 54
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
ifne 54
51: aload 3
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
52: ldc "cantDecpToMakeEnumSupertype"
aload 1
invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
53: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
54: StackMap locals:
StackMap stack:
aconst_null
areturn
55: StackMap locals:
StackMap stack:
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.getSignature:()Ljava/lang/String;
getstatic org.aspectj.weaver.UnresolvedType.ANNOTATION:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 63
56: iload 4
ifeq 62
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.isWildChild:Z
ifne 62
57: aload 3
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
ldc "cantDecpToMakeAnnotationSupertype"
58: aload 1
59: invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
60: aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
61: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
62: StackMap locals:
StackMap stack:
aconst_null
areturn
63: StackMap locals:
StackMap stack:
aload 6
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.isAssignableFrom:(Lorg/aspectj/weaver/ResolvedType;)Z
ifeq 65
64: aconst_null
areturn
65: StackMap locals:
StackMap stack:
aload 1
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.isAssignableFrom:(Lorg/aspectj/weaver/ResolvedType;)Z
ifeq 70
66: aload 3
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
ldc "cantExtendSelf"
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
aload 0
67: invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
68: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
69: aconst_null
areturn
70: StackMap locals:
StackMap stack:
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.isClass:()Z
ifeq 84
71: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.isInterface:()Z
ifeq 76
72: aload 3
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
ldc "interfaceExtendClass"
invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;)Ljava/lang/String;
aload 0
73: invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
74: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
75: aconst_null
areturn
76: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getSuperclass:()Lorg/aspectj/weaver/ResolvedType;
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.isAssignableFrom:(Lorg/aspectj/weaver/ResolvedType;)Z
ifne 83
77: aload 3
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
ldc "decpHierarchy"
aload 5
invokevirtual org.aspectj.weaver.UnresolvedType.getName:()Ljava/lang/String;
78: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getSuperclass:()Lorg/aspectj/weaver/ResolvedType;
invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
79: invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/String;
80: aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
81: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
82: aconst_null
areturn
83: StackMap locals:
StackMap stack:
aload 6
areturn
84: StackMap locals:
StackMap stack:
aload 6
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 85 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 85 1 targetType Lorg/aspectj/weaver/ResolvedType;
0 85 2 typePattern Lorg/aspectj/weaver/patterns/TypePattern;
0 85 3 world Lorg/aspectj/weaver/World;
0 85 4 reportErrors Z
3 85 5 iType Lorg/aspectj/weaver/UnresolvedType;
4 85 6 parentType Lorg/aspectj/weaver/ResolvedType;
9 11 7 isOK Z
MethodParameters:
Name Flags
targetType
typePattern
world
reportErrors
private boolean verifyNoInheritedAlternateParameterization(org.aspectj.weaver.ResolvedType, org.aspectj.weaver.ResolvedType, org.aspectj.weaver.World);
descriptor: (Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/World;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
getstatic org.aspectj.weaver.ResolvedType.OBJECT:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.ResolvedType.equals:(Ljava/lang/Object;)Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.aspectj.weaver.ResolvedType.getGenericType:()Lorg/aspectj/weaver/ReferenceType;
astore 4
start local 4 3: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getDirectSupertypes:()Ljava/util/Iterator;
astore 5
start local 5 4: goto 33
5: StackMap locals: org.aspectj.weaver.ResolvedType java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.aspectj.weaver.ResolvedType
astore 6
start local 6 6: aload 6
invokevirtual org.aspectj.weaver.ResolvedType.isRawType:()Z
ifeq 7
aload 2
invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedType:()Z
ifne 9
StackMap locals: org.aspectj.weaver.ResolvedType
StackMap stack:
7: aload 6
invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedType:()Z
ifeq 19
aload 2
8: invokevirtual org.aspectj.weaver.ResolvedType.isRawType:()Z
ifeq 19
9: StackMap locals:
StackMap stack:
aload 4
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.getGenericType:()Lorg/aspectj/weaver/ReferenceType;
invokevirtual org.aspectj.weaver.ResolvedType.equals:(Ljava/lang/Object;)Z
ifeq 19
10: aload 3
invokevirtual org.aspectj.weaver.World.getMessageHandler:()Lorg/aspectj/bridge/IMessageHandler;
11: new org.aspectj.bridge.Message
dup
ldc "cantDecpMultipleParameterizations"
aload 2
invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
12: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
13: invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/String;
14: aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
iconst_1
15: iconst_1
anewarray org.aspectj.bridge.ISourceLocation
dup
iconst_0
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aastore
16: invokespecial org.aspectj.bridge.Message.<init>:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Z[Lorg/aspectj/bridge/ISourceLocation;)V
17: invokeinterface org.aspectj.bridge.IMessageHandler.handleMessage:(Lorg/aspectj/bridge/IMessage;)Z
pop
18: iconst_0
ireturn
19: StackMap locals:
StackMap stack:
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.isParameterizedType:()Z
ifeq 31
20: aload 6
invokevirtual org.aspectj.weaver.ResolvedType.getGenericType:()Lorg/aspectj/weaver/ReferenceType;
astore 7
start local 7 21: aload 7
aload 4
invokevirtual org.aspectj.weaver.ResolvedType.isAssignableFrom:(Lorg/aspectj/weaver/ResolvedType;)Z
ifeq 31
aload 6
aload 2
invokevirtual org.aspectj.weaver.ResolvedType.isAssignableFrom:(Lorg/aspectj/weaver/ResolvedType;)Z
ifne 31
22: aload 3
invokevirtual org.aspectj.weaver.World.getMessageHandler:()Lorg/aspectj/bridge/IMessageHandler;
23: new org.aspectj.bridge.Message
dup
ldc "cantDecpMultipleParameterizations"
aload 2
24: invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
aload 6
invokevirtual org.aspectj.weaver.ResolvedType.getName:()Ljava/lang/String;
25: invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/String;
26: aload 0
invokevirtual org.aspectj.weaver.patterns.DeclareParents.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
iconst_1
27: iconst_1
anewarray org.aspectj.bridge.ISourceLocation
dup
iconst_0
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aastore
28: invokespecial org.aspectj.bridge.Message.<init>:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Z[Lorg/aspectj/bridge/ISourceLocation;)V
29: invokeinterface org.aspectj.bridge.IMessageHandler.handleMessage:(Lorg/aspectj/bridge/IMessage;)Z
pop
30: iconst_0
ireturn
end local 7 31: StackMap locals:
StackMap stack:
aload 0
aload 6
aload 2
aload 3
invokevirtual org.aspectj.weaver.patterns.DeclareParents.verifyNoInheritedAlternateParameterization:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/World;)Z
ifne 33
32: iconst_0
ireturn
end local 6 33: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
34: iconst_1
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 35 1 typeToVerify Lorg/aspectj/weaver/ResolvedType;
0 35 2 newParent Lorg/aspectj/weaver/ResolvedType;
0 35 3 world Lorg/aspectj/weaver/World;
3 35 4 newParentGenericType Lorg/aspectj/weaver/ResolvedType;
4 35 5 iter Ljava/util/Iterator<Lorg/aspectj/weaver/ResolvedType;>;
6 33 6 supertype Lorg/aspectj/weaver/ResolvedType;
21 31 7 generictype Lorg/aspectj/weaver/ResolvedType;
MethodParameters:
Name Flags
typeToVerify
newParent
world
public java.util.List<org.aspectj.weaver.ResolvedType> findMatchingNewParents(org.aspectj.weaver.ResolvedType, boolean);
descriptor: (Lorg/aspectj/weaver/ResolvedType;Z)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.isRawType:()Z
ifeq 2
1: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getGenericType:()Lorg/aspectj/weaver/ReferenceType;
astore 1
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.aspectj.weaver.patterns.DeclareParents.match:(Lorg/aspectj/weaver/ResolvedType;)Z
ifne 4
3: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
4: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 5: iconst_0
istore 4
start local 4 6: goto 11
7: StackMap locals: java.util.List int
StackMap stack:
aload 0
aload 1
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
iload 4
invokevirtual org.aspectj.weaver.patterns.TypePatternList.get:(I)Lorg/aspectj/weaver/patterns/TypePattern;
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getWorld:()Lorg/aspectj/weaver/World;
iload 2
invokevirtual org.aspectj.weaver.patterns.DeclareParents.maybeGetNewParent:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/World;Z)Lorg/aspectj/weaver/ResolvedType;
astore 5
start local 5 8: aload 5
ifnull 10
9: aload 3
aload 5
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 5 10: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
11: iload 4
aload 0
getfield org.aspectj.weaver.patterns.DeclareParents.parents:Lorg/aspectj/weaver/patterns/TypePatternList;
invokevirtual org.aspectj.weaver.patterns.TypePatternList.size:()I
if_icmplt 7
end local 4 12: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
0 13 1 onType Lorg/aspectj/weaver/ResolvedType;
0 13 2 reportErrors Z
5 13 3 ret Ljava/util/List<Lorg/aspectj/weaver/ResolvedType;>;
6 12 4 i I
8 10 5 t Lorg/aspectj/weaver/ResolvedType;
Signature: (Lorg/aspectj/weaver/ResolvedType;Z)Ljava/util/List<Lorg/aspectj/weaver/ResolvedType;>;
MethodParameters:
Name Flags
onType
reportErrors
public java.lang.String getNameSuffix();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "parents"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/patterns/DeclareParents;
public boolean isMixin();
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/patterns/DeclareParents;
}
SourceFile: "DeclareParents.java"
InnerClasses:
public final Kind = org.aspectj.bridge.IMessage$Kind of org.aspectj.bridge.IMessage
public Kind = org.aspectj.weaver.Lint$Kind of org.aspectj.weaver.Lint