public class org.aspectj.weaver.patterns.IfPointcut extends org.aspectj.weaver.patterns.Pointcut
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.aspectj.weaver.patterns.IfPointcut
super_class: org.aspectj.weaver.patterns.Pointcut
{
public org.aspectj.weaver.ResolvedMember testMethod;
descriptor: Lorg/aspectj/weaver/ResolvedMember;
flags: (0x0001) ACC_PUBLIC
public int ;
descriptor: I
flags: (0x0001) ACC_PUBLIC
private final java.lang.String enclosingPointcutHint;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public org.aspectj.weaver.patterns.Pointcut residueSource;
descriptor: Lorg/aspectj/weaver/patterns/Pointcut;
flags: (0x0001) ACC_PUBLIC
int baseArgsCount;
descriptor: I
flags: (0x0000)
private boolean findingResidue;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int ifLastMatchedShadowId;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.aspectj.weaver.ast.Test ifLastMatchedShadowResidue;
descriptor: Lorg/aspectj/weaver/ast/Test;
flags: (0x0002) ACC_PRIVATE
private org.aspectj.weaver.patterns.IfPointcut partiallyConcretized;
descriptor: Lorg/aspectj/weaver/patterns/IfPointcut;
flags: (0x0002) ACC_PRIVATE
public void <init>(org.aspectj.weaver.ResolvedMember, int);
descriptor: (Lorg/aspectj/weaver/ResolvedMember;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial org.aspectj.weaver.patterns.Pointcut.<init>:()V
1: aload 0
iconst_0
putfield org.aspectj.weaver.patterns.IfPointcut.findingResidue:Z
2: aload 0
aconst_null
putfield org.aspectj.weaver.patterns.IfPointcut.partiallyConcretized:Lorg/aspectj/weaver/patterns/IfPointcut;
3: aload 0
aload 1
putfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
4: aload 0
iload 2
putfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
5: aload 0
bipush 9
putfield org.aspectj.weaver.patterns.IfPointcut.pointcutKind:B
6: aload 0
aconst_null
putfield org.aspectj.weaver.patterns.IfPointcut.enclosingPointcutHint:Ljava/lang/String;
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/IfPointcut;
0 8 1 testMethod Lorg/aspectj/weaver/ResolvedMember;
0 8 2 extraParameterFlags I
MethodParameters:
Name Flags
testMethod
extraParameterFlags
public void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial org.aspectj.weaver.patterns.Pointcut.<init>:()V
1: aload 0
iconst_0
putfield org.aspectj.weaver.patterns.IfPointcut.findingResidue:Z
2: aload 0
aconst_null
putfield org.aspectj.weaver.patterns.IfPointcut.partiallyConcretized:Lorg/aspectj/weaver/patterns/IfPointcut;
3: aload 0
bipush 9
putfield org.aspectj.weaver.patterns.IfPointcut.pointcutKind:B
4: aload 0
aload 1
putfield org.aspectj.weaver.patterns.IfPointcut.enclosingPointcutHint:Ljava/lang/String;
5: aload 0
aconst_null
putfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
6: aload 0
iconst_m1
putfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
0 8 1 enclosingPointcutHint Ljava/lang/String;
MethodParameters:
Name Flags
enclosingPointcutHint
public int couldMatchKinds();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic org.aspectj.weaver.Shadow.ALL_SHADOW_KINDS_BITS:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
public org.aspectj.util.FuzzyBoolean fastMatch(org.aspectj.weaver.patterns.FastMatchInfo);
descriptor: (Lorg/aspectj/weaver/patterns/FastMatchInfo;)Lorg/aspectj/util/FuzzyBoolean;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.aspectj.util.FuzzyBoolean.MAYBE:Lorg/aspectj/util/FuzzyBoolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
0 1 1 type Lorg/aspectj/weaver/patterns/FastMatchInfo;
MethodParameters:
Name Flags
type
protected org.aspectj.util.FuzzyBoolean matchInternal(org.aspectj.weaver.Shadow);
descriptor: (Lorg/aspectj/weaver/Shadow;)Lorg/aspectj/util/FuzzyBoolean;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
bipush 16
iand
ifeq 4
1: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
bipush 32
iand
ifeq 3
2: getstatic org.aspectj.util.FuzzyBoolean.YES:Lorg/aspectj/util/FuzzyBoolean;
areturn
3: StackMap locals:
StackMap stack:
getstatic org.aspectj.util.FuzzyBoolean.NO:Lorg/aspectj/util/FuzzyBoolean;
areturn
4: StackMap locals:
StackMap stack:
getstatic org.aspectj.util.FuzzyBoolean.MAYBE:Lorg/aspectj/util/FuzzyBoolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
0 5 1 shadow Lorg/aspectj/weaver/Shadow;
MethodParameters:
Name Flags
shadow
public boolean alwaysFalse();
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/IfPointcut;
public boolean alwaysTrue();
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/IfPointcut;
public org.aspectj.weaver.patterns.Pointcut getResidueSource();
descriptor: ()Lorg/aspectj/weaver/patterns/Pointcut;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.residueSource:Lorg/aspectj/weaver/patterns/Pointcut;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
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
bipush 9
invokevirtual org.aspectj.weaver.CompressingDataOutputStream.writeByte:(I)V
1: aload 1
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
ifnull 2
iconst_1
goto 3
StackMap locals:
StackMap stack: org.aspectj.weaver.CompressingDataOutputStream
2: iconst_0
StackMap locals: org.aspectj.weaver.patterns.IfPointcut org.aspectj.weaver.CompressingDataOutputStream
StackMap stack: org.aspectj.weaver.CompressingDataOutputStream int
3: invokevirtual org.aspectj.weaver.CompressingDataOutputStream.writeBoolean:(Z)V
4: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
ifnull 6
5: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
aload 1
invokeinterface org.aspectj.weaver.ResolvedMember.write:(Lorg/aspectj/weaver/CompressingDataOutputStream;)V
6: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
invokevirtual org.aspectj.weaver.CompressingDataOutputStream.writeByte:(I)V
7: aload 0
aload 1
invokevirtual org.aspectj.weaver.patterns.IfPointcut.writeLocation:(Ljava/io/DataOutputStream;)V
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
0 9 1 s Lorg/aspectj/weaver/CompressingDataOutputStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
s
public static org.aspectj.weaver.patterns.Pointcut read(org.aspectj.weaver.VersionedDataInputStream, org.aspectj.weaver.ISourceContext);
descriptor: (Lorg/aspectj/weaver/VersionedDataInputStream;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/patterns/Pointcut;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.aspectj.weaver.VersionedDataInputStream.readBoolean:()Z
istore 2
start local 2 1: aconst_null
astore 3
start local 3 2: iload 2
ifeq 4
3: aload 0
aload 1
invokestatic org.aspectj.weaver.ResolvedMemberImpl.readResolvedMember:(Lorg/aspectj/weaver/VersionedDataInputStream;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/ResolvedMemberImpl;
astore 3
4: StackMap locals: int org.aspectj.weaver.ResolvedMember
StackMap stack:
new org.aspectj.weaver.patterns.IfPointcut
dup
aload 3
aload 0
invokevirtual org.aspectj.weaver.VersionedDataInputStream.readByte:()B
invokespecial org.aspectj.weaver.patterns.IfPointcut.<init>:(Lorg/aspectj/weaver/ResolvedMember;I)V
astore 4
start local 4 5: aload 4
aload 1
aload 0
invokevirtual org.aspectj.weaver.patterns.IfPointcut.readLocation:(Lorg/aspectj/weaver/ISourceContext;Ljava/io/DataInputStream;)V
6: 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 7 0 s Lorg/aspectj/weaver/VersionedDataInputStream;
0 7 1 context Lorg/aspectj/weaver/ISourceContext;
1 7 2 hasTestMethod Z
2 7 3 resolvedTestMethod Lorg/aspectj/weaver/ResolvedMember;
5 7 4 ret Lorg/aspectj/weaver/patterns/IfPointcut;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
s
context
public void resolveBindings(org.aspectj.weaver.patterns.IScope, org.aspectj.weaver.patterns.Bindings);
descriptor: (Lorg/aspectj/weaver/patterns/IScope;Lorg/aspectj/weaver/patterns/Bindings;)V
flags: (0x0001) ACC_PUBLIC
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/aspectj/weaver/patterns/IfPointcut;
0 1 1 scope Lorg/aspectj/weaver/patterns/IScope;
0 1 2 bindings Lorg/aspectj/weaver/patterns/Bindings;
MethodParameters:
Name Flags
scope
bindings
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.IfPointcut
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
checkcast org.aspectj.weaver.patterns.IfPointcut
astore 2
start local 2 3: aload 2
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
ifnonnull 6
4: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
ifnonnull 5
iconst_1
ireturn
StackMap locals: org.aspectj.weaver.patterns.IfPointcut
StackMap stack:
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
aload 2
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
0 7 1 other Ljava/lang/Object;
3 7 2 o Lorg/aspectj/weaver/patterns/IfPointcut;
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 17
istore 1
start local 1 1: bipush 37
iload 1
imul
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokevirtual java.lang.Object.hashCode:()I
iadd
istore 1
2: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
1 3 1 result I
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
ifge 2
1: ldc "if()"
areturn
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "if("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
protected org.aspectj.weaver.ast.Test findResidueInternal(org.aspectj.weaver.Shadow, org.aspectj.weaver.patterns.ExposedState);
descriptor: (Lorg/aspectj/weaver/Shadow;Lorg/aspectj/weaver/patterns/ExposedState;)Lorg/aspectj/weaver/ast/Test;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=12, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.findingResidue:Z
ifeq 2
1: getstatic org.aspectj.weaver.ast.Literal.TRUE:Lorg/aspectj/weaver/ast/Literal;
areturn
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.aspectj.weaver.patterns.IfPointcut.findingResidue:Z
3: aload 1
getfield org.aspectj.weaver.Shadow.shadowId:I
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.ifLastMatchedShadowId:I
if_icmpne 7
4: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.ifLastMatchedShadowResidue:Lorg/aspectj/weaver/ast/Test;
astore 11
5: aload 0
iconst_0
putfield org.aspectj.weaver.patterns.IfPointcut.findingResidue:Z
6: aload 11
areturn
7: StackMap locals:
StackMap stack:
getstatic org.aspectj.weaver.ast.Literal.TRUE:Lorg/aspectj/weaver/ast/Literal;
astore 3
start local 3 8: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 9: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
iflt 53
10: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
bipush 16
iand
ifeq 24
11: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
bipush 32
iand
ifeq 18
12: getstatic org.aspectj.weaver.ast.Literal.TRUE:Lorg/aspectj/weaver/ast/Literal;
astore 3
13: aload 0
aload 1
getfield org.aspectj.weaver.Shadow.shadowId:I
putfield org.aspectj.weaver.patterns.IfPointcut.ifLastMatchedShadowId:I
14: aload 0
aload 3
putfield org.aspectj.weaver.patterns.IfPointcut.ifLastMatchedShadowResidue:Lorg/aspectj/weaver/ast/Test;
15: aload 3
astore 11
16: aload 0
iconst_0
putfield org.aspectj.weaver.patterns.IfPointcut.findingResidue:Z
17: aload 11
areturn
18: StackMap locals: org.aspectj.weaver.ast.Test java.util.List
StackMap stack:
getstatic org.aspectj.weaver.ast.Literal.FALSE:Lorg/aspectj/weaver/ast/Literal;
astore 3
19: aload 0
aload 1
getfield org.aspectj.weaver.Shadow.shadowId:I
putfield org.aspectj.weaver.patterns.IfPointcut.ifLastMatchedShadowId:I
20: aload 0
aload 3
putfield org.aspectj.weaver.patterns.IfPointcut.ifLastMatchedShadowResidue:Lorg/aspectj/weaver/ast/Test;
21: aload 3
astore 11
22: aload 0
iconst_0
putfield org.aspectj.weaver.patterns.IfPointcut.findingResidue:Z
23: aload 11
areturn
24: StackMap locals:
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
ifle 44
25: new org.aspectj.weaver.patterns.ExposedState
dup
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
invokespecial org.aspectj.weaver.patterns.ExposedState.<init>:(I)V
astore 5
start local 5 26: aload 5
aload 2
invokevirtual org.aspectj.weaver.patterns.ExposedState.getConcreteAspect:()Lorg/aspectj/weaver/ResolvedType;
invokevirtual org.aspectj.weaver.patterns.ExposedState.setConcreteAspect:(Lorg/aspectj/weaver/ResolvedType;)V
27: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.residueSource:Lorg/aspectj/weaver/patterns/Pointcut;
aload 1
aload 5
invokevirtual org.aspectj.weaver.patterns.Pointcut.findResidue:(Lorg/aspectj/weaver/Shadow;Lorg/aspectj/weaver/patterns/ExposedState;)Lorg/aspectj/weaver/ast/Test;
pop
28: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
ifnonnull 29
aconst_null
goto 30
StackMap locals: org.aspectj.weaver.patterns.ExposedState
StackMap stack:
29: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
StackMap locals:
StackMap stack: org.aspectj.weaver.UnresolvedType[]
30: astore 6
start local 6 31: aload 6
ifnull 35
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
aload 6
arraylength
if_icmple 35
32: new org.aspectj.weaver.BCException
dup
new java.lang.StringBuilder
dup
ldc "Unexpected problem with testMethod "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ": expecting "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
33: ldc " arguments"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
34: invokespecial org.aspectj.weaver.BCException.<init>:(Ljava/lang/String;)V
athrow
35: StackMap locals: org.aspectj.weaver.UnresolvedType[]
StackMap stack:
iconst_0
istore 7
start local 7 36: goto 43
37: StackMap locals: int
StackMap stack:
aload 5
iload 7
invokevirtual org.aspectj.weaver.patterns.ExposedState.get:(I)Lorg/aspectj/weaver/ast/Var;
astore 8
start local 8 38: aload 8
ifnonnull 40
39: goto 42
40: StackMap locals: org.aspectj.weaver.ast.Var
StackMap stack:
aload 4
aload 8
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
41: aload 3
aload 8
aload 6
iload 7
aaload
aload 1
invokevirtual org.aspectj.weaver.Shadow.getIWorld:()Lorg/aspectj/weaver/World;
invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
invokestatic org.aspectj.weaver.ast.Test.makeInstanceof:(Lorg/aspectj/weaver/ast/Var;Lorg/aspectj/weaver/ResolvedType;)Lorg/aspectj/weaver/ast/Test;
invokestatic org.aspectj.weaver.ast.Test.makeAnd:(Lorg/aspectj/weaver/ast/Test;Lorg/aspectj/weaver/ast/Test;)Lorg/aspectj/weaver/ast/Test;
astore 3
end local 8 42: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
43: iload 7
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
if_icmplt 37
end local 7 end local 6 end local 5 44: StackMap locals:
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
iconst_2
iand
ifeq 46
45: aload 4
aload 1
invokevirtual org.aspectj.weaver.Shadow.getThisJoinPointVar:()Lorg/aspectj/weaver/ast/Var;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
46: StackMap locals:
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
iconst_4
iand
ifeq 48
47: aload 4
aload 1
invokevirtual org.aspectj.weaver.Shadow.getThisJoinPointStaticPartVar:()Lorg/aspectj/weaver/ast/Var;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
48: StackMap locals:
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
bipush 8
iand
ifeq 50
49: aload 4
aload 1
invokevirtual org.aspectj.weaver.Shadow.getThisEnclosingJoinPointStaticPartVar:()Lorg/aspectj/weaver/ast/Var;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
50: StackMap locals:
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
bipush 64
iand
ifeq 106
51: aload 4
aload 1
aload 2
invokevirtual org.aspectj.weaver.patterns.ExposedState.getConcreteAspect:()Lorg/aspectj/weaver/ResolvedType;
invokevirtual org.aspectj.weaver.Shadow.getThisAspectInstanceVar:(Lorg/aspectj/weaver/ResolvedType;)Lorg/aspectj/weaver/ast/Var;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
52: goto 106
53: StackMap locals:
StackMap stack:
iconst_0
istore 5
start local 5 54: iconst_0
istore 6
start local 6 55: goto 105
56: StackMap locals: int int
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
iload 6
aaload
invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
astore 7
start local 7 57: getstatic org.aspectj.weaver.AjcMemberMaker.TYPEX_JOINPOINT:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 60
58: aload 4
aload 1
invokevirtual org.aspectj.weaver.Shadow.getThisJoinPointVar:()Lorg/aspectj/weaver/ast/Var;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
59: goto 104
StackMap locals: java.lang.String
StackMap stack:
60: getstatic org.aspectj.weaver.AjcMemberMaker.TYPEX_PROCEEDINGJOINPOINT:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 63
61: aload 4
aload 1
invokevirtual org.aspectj.weaver.Shadow.getThisJoinPointVar:()Lorg/aspectj/weaver/ast/Var;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
62: goto 104
StackMap locals:
StackMap stack:
63: getstatic org.aspectj.weaver.AjcMemberMaker.TYPEX_STATICJOINPOINT:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 66
64: aload 4
aload 1
invokevirtual org.aspectj.weaver.Shadow.getThisJoinPointStaticPartVar:()Lorg/aspectj/weaver/ast/Var;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
65: goto 104
StackMap locals:
StackMap stack:
66: getstatic org.aspectj.weaver.AjcMemberMaker.TYPEX_ENCLOSINGSTATICJOINPOINT:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 69
67: aload 4
aload 1
invokevirtual org.aspectj.weaver.Shadow.getThisEnclosingJoinPointStaticPartVar:()Lorg/aspectj/weaver/ast/Var;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
68: goto 104
69: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.aspectj.weaver.patterns.ExposedState.size:()I
ifeq 70
iload 5
aload 2
invokevirtual org.aspectj.weaver.patterns.ExposedState.size:()I
if_icmple 96
70: StackMap locals:
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokeinterface org.aspectj.weaver.ResolvedMember.getParameterNames:()[Ljava/lang/String;
astore 8
start local 8 71: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 9
start local 9 72: aload 8
ifnull 85
73: aload 9
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
iload 6
aaload
invokevirtual org.aspectj.weaver.UnresolvedType.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
ldc " "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
74: aload 9
aload 8
iload 6
aaload
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
75: aload 1
invokevirtual org.aspectj.weaver.Shadow.getIWorld:()Lorg/aspectj/weaver/World;
76: invokevirtual org.aspectj.weaver.World.getMessageHandler:()Lorg/aspectj/bridge/IMessageHandler;
77: new java.lang.StringBuilder
dup
ldc "Missing binding for if() pointcut method. Parameter "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 6
iconst_1
iadd
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
78: ldc "("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
79: ldc ") must be bound - even in reference pointcuts (compiler limitation)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
80: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
81: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokeinterface org.aspectj.weaver.ResolvedMember.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
82: invokestatic org.aspectj.bridge.MessageUtil.error:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/IMessage;
83: invokeinterface org.aspectj.bridge.IMessageHandler.handleMessage:(Lorg/aspectj/bridge/IMessage;)Z
pop
84: goto 93
85: StackMap locals: java.lang.String[] java.lang.StringBuffer
StackMap stack:
aload 1
invokevirtual org.aspectj.weaver.Shadow.getIWorld:()Lorg/aspectj/weaver/World;
86: invokevirtual org.aspectj.weaver.World.getMessageHandler:()Lorg/aspectj/bridge/IMessageHandler;
87: new java.lang.StringBuilder
dup
ldc "Missing binding for if() pointcut method. Parameter "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 6
iconst_1
iadd
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
88: ldc " must be bound - even in reference pointcuts (compiler limitation)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
89: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
90: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokeinterface org.aspectj.weaver.ResolvedMember.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
91: invokestatic org.aspectj.bridge.MessageUtil.error:(Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;)Lorg/aspectj/bridge/IMessage;
92: invokeinterface org.aspectj.bridge.IMessageHandler.handleMessage:(Lorg/aspectj/bridge/IMessage;)Z
pop
93: StackMap locals:
StackMap stack:
getstatic org.aspectj.weaver.ast.Literal.TRUE:Lorg/aspectj/weaver/ast/Literal;
astore 11
94: aload 0
iconst_0
putfield org.aspectj.weaver.patterns.IfPointcut.findingResidue:Z
95: aload 11
areturn
end local 9 end local 8 96: StackMap locals:
StackMap stack:
aload 2
iload 5
iinc 5 1
invokevirtual org.aspectj.weaver.patterns.ExposedState.get:(I)Lorg/aspectj/weaver/ast/Var;
astore 8
start local 8 97: goto 99
98: StackMap locals: org.aspectj.weaver.ast.Var
StackMap stack:
aload 2
iload 5
iinc 5 1
invokevirtual org.aspectj.weaver.patterns.ExposedState.get:(I)Lorg/aspectj/weaver/ast/Var;
astore 8
99: StackMap locals:
StackMap stack:
aload 8
ifnonnull 100
iload 5
aload 2
invokevirtual org.aspectj.weaver.patterns.ExposedState.size:()I
if_icmplt 98
100: StackMap locals:
StackMap stack:
aload 4
aload 8
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
101: aload 3
102: aload 8
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
iload 6
aaload
aload 1
invokevirtual org.aspectj.weaver.Shadow.getIWorld:()Lorg/aspectj/weaver/World;
invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
invokestatic org.aspectj.weaver.ast.Test.makeInstanceof:(Lorg/aspectj/weaver/ast/Var;Lorg/aspectj/weaver/ResolvedType;)Lorg/aspectj/weaver/ast/Test;
103: invokestatic org.aspectj.weaver.ast.Test.makeAnd:(Lorg/aspectj/weaver/ast/Test;Lorg/aspectj/weaver/ast/Test;)Lorg/aspectj/weaver/ast/Test;
astore 3
end local 8 end local 7 104: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
105: iload 6
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
arraylength
if_icmplt 56
end local 6 end local 5 106: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
aload 4
aload 4
invokeinterface java.util.List.size:()I
anewarray org.aspectj.weaver.ast.Expr
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.aspectj.weaver.ast.Expr[]
invokestatic org.aspectj.weaver.ast.Test.makeCall:(Lorg/aspectj/weaver/Member;[Lorg/aspectj/weaver/ast/Expr;)Lorg/aspectj/weaver/ast/Test;
invokestatic org.aspectj.weaver.ast.Test.makeAnd:(Lorg/aspectj/weaver/ast/Test;Lorg/aspectj/weaver/ast/Test;)Lorg/aspectj/weaver/ast/Test;
astore 3
107: aload 0
aload 1
getfield org.aspectj.weaver.Shadow.shadowId:I
putfield org.aspectj.weaver.patterns.IfPointcut.ifLastMatchedShadowId:I
108: aload 0
aload 3
putfield org.aspectj.weaver.patterns.IfPointcut.ifLastMatchedShadowResidue:Lorg/aspectj/weaver/ast/Test;
109: aload 3
astore 11
110: aload 0
iconst_0
putfield org.aspectj.weaver.patterns.IfPointcut.findingResidue:Z
111: aload 11
areturn
end local 4 end local 3 112: StackMap locals: org.aspectj.weaver.patterns.IfPointcut org.aspectj.weaver.Shadow org.aspectj.weaver.patterns.ExposedState
StackMap stack: java.lang.Throwable
astore 10
113: aload 0
iconst_0
putfield org.aspectj.weaver.patterns.IfPointcut.findingResidue:Z
114: aload 10
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 115 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
0 115 1 shadow Lorg/aspectj/weaver/Shadow;
0 115 2 state Lorg/aspectj/weaver/patterns/ExposedState;
8 112 3 ret Lorg/aspectj/weaver/ast/Test;
9 112 4 args Ljava/util/List<Lorg/aspectj/weaver/ast/Var;>;
26 44 5 myState Lorg/aspectj/weaver/patterns/ExposedState;
31 44 6 pTypes [Lorg/aspectj/weaver/UnresolvedType;
36 44 7 i I
38 42 8 v Lorg/aspectj/weaver/ast/Var;
54 106 5 currentStateIndex I
55 106 6 i I
57 104 7 argSignature Ljava/lang/String;
71 96 8 paramNames [Ljava/lang/String;
72 96 9 errorParameter Ljava/lang/StringBuffer;
97 104 8 v Lorg/aspectj/weaver/ast/Var;
Exception table:
from to target type
3 5 112 any
7 16 112 any
18 22 112 any
24 94 112 any
96 110 112 any
MethodParameters:
Name Flags
shadow
state
protected boolean shouldCopyLocationForConcretize();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
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/IfPointcut;
public org.aspectj.weaver.patterns.Pointcut concretize1(org.aspectj.weaver.ResolvedType, org.aspectj.weaver.ResolvedType, org.aspectj.weaver.IntMap);
descriptor: (Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/IntMap;)Lorg/aspectj/weaver/patterns/Pointcut;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=12, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 3
invokevirtual org.aspectj.weaver.IntMap.getEnclosingAdvice:()Lorg/aspectj/weaver/ShadowMunger;
invokevirtual org.aspectj.weaver.patterns.IfPointcut.isDeclare:(Lorg/aspectj/weaver/ShadowMunger;)Z
ifeq 5
1: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getWorld:()Lorg/aspectj/weaver/World;
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
ldc "ifInDeclare"
invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;)Ljava/lang/String;
2: aload 3
invokevirtual org.aspectj.weaver.IntMap.getEnclosingAdvice:()Lorg/aspectj/weaver/ShadowMunger;
invokevirtual org.aspectj.weaver.ShadowMunger.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
3: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
4: getstatic org.aspectj.weaver.patterns.Pointcut.CONCRETE:Lorg/aspectj/weaver/patterns/Pointcut$State;
invokestatic org.aspectj.weaver.patterns.Pointcut.makeMatchesNothing:(Lorg/aspectj/weaver/patterns/Pointcut$State;)Lorg/aspectj/weaver/patterns/Pointcut;
areturn
5: StackMap locals:
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.partiallyConcretized:Lorg/aspectj/weaver/patterns/IfPointcut;
ifnull 7
6: aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.partiallyConcretized:Lorg/aspectj/weaver/patterns/IfPointcut;
areturn
7: StackMap locals:
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
ifge 39
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
ifnonnull 39
8: aload 3
invokevirtual org.aspectj.weaver.IntMap.peekEnclosingDefinition:()Lorg/aspectj/weaver/ResolvedPointcutDefinition;
astore 5
start local 5 9: aload 5
ifnull 35
10: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getWorld:()Lorg/aspectj/weaver/World;
aload 5
invokevirtual org.aspectj.weaver.ResolvedPointcutDefinition.getDeclaringType:()Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.World.resolve:(Lorg/aspectj/weaver/UnresolvedType;)Lorg/aspectj/weaver/ResolvedType;
astore 6
start local 6 11: aload 6
iconst_1
iconst_1
invokevirtual org.aspectj.weaver.ResolvedType.getMethods:(ZZ)Ljava/util/Iterator;
astore 7
start local 7 12: goto 28
13: StackMap locals: org.aspectj.weaver.patterns.IfPointcut org.aspectj.weaver.ResolvedType org.aspectj.weaver.ResolvedType org.aspectj.weaver.IntMap top org.aspectj.weaver.ResolvedPointcutDefinition org.aspectj.weaver.ResolvedType java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.aspectj.weaver.ResolvedMember
astore 8
start local 8 14: aload 5
invokevirtual org.aspectj.weaver.ResolvedPointcutDefinition.getName:()Ljava/lang/String;
aload 8
invokeinterface org.aspectj.weaver.ResolvedMember.getName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 28
15: aload 5
invokevirtual org.aspectj.weaver.ResolvedPointcutDefinition.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
arraylength
aload 8
invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
arraylength
if_icmpne 28
16: iconst_1
istore 9
start local 9 17: iconst_0
istore 10
start local 10 18: goto 24
19: StackMap locals: org.aspectj.weaver.ResolvedMember int int
StackMap stack:
aload 8
invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
iload 10
aaload
astore 11
start local 11 20: aload 11
aload 5
invokevirtual org.aspectj.weaver.ResolvedPointcutDefinition.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
iload 10
aaload
invokevirtual org.aspectj.weaver.UnresolvedType.equals:(Ljava/lang/Object;)Z
ifne 23
21: iconst_0
istore 9
22: goto 25
end local 11 23: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
24: iload 10
aload 8
invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
arraylength
if_icmplt 19
end local 10 25: StackMap locals:
StackMap stack:
iload 9
ifeq 28
26: aload 0
aload 8
putfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
27: goto 29
end local 9 end local 8 28: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 13
end local 7 29: StackMap locals:
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
ifnonnull 36
30: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getWorld:()Lorg/aspectj/weaver/World;
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
31: new java.lang.StringBuilder
dup
ldc "Cannot find if() body from '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual org.aspectj.weaver.ResolvedPointcutDefinition.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' for '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.enclosingPointcutHint:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
32: aload 0
invokevirtual org.aspectj.weaver.patterns.IfPointcut.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
33: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
34: getstatic org.aspectj.weaver.patterns.Pointcut.CONCRETE:Lorg/aspectj/weaver/patterns/Pointcut$State;
invokestatic org.aspectj.weaver.patterns.Pointcut.makeMatchesNothing:(Lorg/aspectj/weaver/patterns/Pointcut$State;)Lorg/aspectj/weaver/patterns/Pointcut;
areturn
end local 6 35: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getWorld:()Lorg/aspectj/weaver/World;
aload 3
invokevirtual org.aspectj.weaver.IntMap.getAdviceSignature:()Lorg/aspectj/weaver/Member;
invokevirtual org.aspectj.weaver.World.resolve:(Lorg/aspectj/weaver/Member;)Lorg/aspectj/weaver/ResolvedMember;
putfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
36: StackMap locals:
StackMap stack:
new org.aspectj.weaver.patterns.IfPointcut
dup
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.enclosingPointcutHint:Ljava/lang/String;
invokespecial org.aspectj.weaver.patterns.IfPointcut.<init>:(Ljava/lang/String;)V
astore 4
start local 4 37: aload 4
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
putfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
end local 5 38: goto 40
end local 4 39: StackMap locals: org.aspectj.weaver.patterns.IfPointcut org.aspectj.weaver.ResolvedType org.aspectj.weaver.ResolvedType org.aspectj.weaver.IntMap
StackMap stack:
new org.aspectj.weaver.patterns.IfPointcut
dup
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
invokespecial org.aspectj.weaver.patterns.IfPointcut.<init>:(Lorg/aspectj/weaver/ResolvedMember;I)V
astore 4
start local 4 40: StackMap locals: org.aspectj.weaver.patterns.IfPointcut
StackMap stack:
aload 4
aload 0
invokevirtual org.aspectj.weaver.patterns.IfPointcut.copyLocationFrom:(Lorg/aspectj/weaver/patterns/PatternNode;)V
41: aload 0
aload 4
putfield org.aspectj.weaver.patterns.IfPointcut.partiallyConcretized:Lorg/aspectj/weaver/patterns/IfPointcut;
42: aload 3
invokevirtual org.aspectj.weaver.IntMap.directlyInAdvice:()Z
ifeq 47
aload 3
invokevirtual org.aspectj.weaver.IntMap.getEnclosingAdvice:()Lorg/aspectj/weaver/ShadowMunger;
ifnonnull 47
43: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getWorld:()Lorg/aspectj/weaver/World;
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
ldc "ifInPerClause"
invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;)Ljava/lang/String;
44: aload 0
invokevirtual org.aspectj.weaver.patterns.IfPointcut.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
45: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
46: getstatic org.aspectj.weaver.patterns.Pointcut.CONCRETE:Lorg/aspectj/weaver/patterns/Pointcut$State;
invokestatic org.aspectj.weaver.patterns.Pointcut.makeMatchesNothing:(Lorg/aspectj/weaver/patterns/Pointcut$State;)Lorg/aspectj/weaver/patterns/Pointcut;
areturn
47: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.aspectj.weaver.IntMap.directlyInAdvice:()Z
ifeq 55
48: aload 3
invokevirtual org.aspectj.weaver.IntMap.getEnclosingAdvice:()Lorg/aspectj/weaver/ShadowMunger;
astore 5
start local 5 49: aload 5
instanceof org.aspectj.weaver.Advice
ifeq 52
50: aload 4
aload 5
checkcast org.aspectj.weaver.Advice
invokevirtual org.aspectj.weaver.Advice.getBaseParameterCount:()I
putfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
51: goto 53
52: StackMap locals: org.aspectj.weaver.ShadowMunger
StackMap stack:
aload 4
iconst_0
putfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
53: StackMap locals:
StackMap stack:
aload 4
aload 5
invokevirtual org.aspectj.weaver.ShadowMunger.getPointcut:()Lorg/aspectj/weaver/patterns/Pointcut;
aload 1
aload 1
aload 4
getfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
aload 5
invokevirtual org.aspectj.weaver.patterns.Pointcut.concretize:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;ILorg/aspectj/weaver/ShadowMunger;)Lorg/aspectj/weaver/patterns/Pointcut;
putfield org.aspectj.weaver.patterns.IfPointcut.residueSource:Lorg/aspectj/weaver/patterns/Pointcut;
end local 5 54: goto 77
55: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.aspectj.weaver.IntMap.peekEnclosingDefinition:()Lorg/aspectj/weaver/ResolvedPointcutDefinition;
astore 5
start local 5 56: aload 5
getstatic org.aspectj.weaver.patterns.CflowPointcut.CFLOW_MARKER:Lorg/aspectj/weaver/ResolvedPointcutDefinition;
if_acmpne 61
57: aload 1
invokevirtual org.aspectj.weaver.ResolvedType.getWorld:()Lorg/aspectj/weaver/World;
getstatic org.aspectj.bridge.IMessage.ERROR:Lorg/aspectj/bridge/IMessage$Kind;
ldc "ifLexicallyInCflow"
invokestatic org.aspectj.weaver.WeaverMessages.format:(Ljava/lang/String;)Ljava/lang/String;
58: aload 0
invokevirtual org.aspectj.weaver.patterns.IfPointcut.getSourceLocation:()Lorg/aspectj/bridge/ISourceLocation;
aconst_null
59: invokevirtual org.aspectj.weaver.World.showMessage:(Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/String;Lorg/aspectj/bridge/ISourceLocation;Lorg/aspectj/bridge/ISourceLocation;)V
60: getstatic org.aspectj.weaver.patterns.Pointcut.CONCRETE:Lorg/aspectj/weaver/patterns/Pointcut$State;
invokestatic org.aspectj.weaver.patterns.Pointcut.makeMatchesNothing:(Lorg/aspectj/weaver/patterns/Pointcut$State;)Lorg/aspectj/weaver/patterns/Pointcut;
areturn
61: StackMap locals: org.aspectj.weaver.ResolvedPointcutDefinition
StackMap stack:
aload 4
aload 5
invokevirtual org.aspectj.weaver.ResolvedPointcutDefinition.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
arraylength
putfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
62: aload 4
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
ifge 74
63: aload 4
iconst_0
putfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
64: iconst_0
istore 6
start local 6 65: goto 73
66: StackMap locals: int
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
iload 6
aaload
invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
astore 7
start local 7 67: getstatic org.aspectj.weaver.AjcMemberMaker.TYPEX_JOINPOINT:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 72
68: getstatic org.aspectj.weaver.AjcMemberMaker.TYPEX_PROCEEDINGJOINPOINT:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 72
69: getstatic org.aspectj.weaver.AjcMemberMaker.TYPEX_STATICJOINPOINT:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 72
70: getstatic org.aspectj.weaver.AjcMemberMaker.TYPEX_ENCLOSINGSTATICJOINPOINT:Lorg/aspectj/weaver/UnresolvedType;
invokevirtual org.aspectj.weaver.UnresolvedType.getSignature:()Ljava/lang/String;
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 72
71: aload 4
dup
getfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
iconst_1
iadd
putfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
end local 7 72: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
73: iload 6
aload 0
getfield org.aspectj.weaver.patterns.IfPointcut.testMethod:Lorg/aspectj/weaver/ResolvedMember;
invokeinterface org.aspectj.weaver.ResolvedMember.getParameterTypes:()[Lorg/aspectj/weaver/UnresolvedType;
arraylength
if_icmplt 66
end local 6 74: StackMap locals:
StackMap stack:
aload 4
getfield org.aspectj.weaver.patterns.IfPointcut.baseArgsCount:I
invokestatic org.aspectj.weaver.IntMap.idMap:(I)Lorg/aspectj/weaver/IntMap;
astore 6
start local 6 75: aload 6
aload 3
invokevirtual org.aspectj.weaver.IntMap.copyContext:(Lorg/aspectj/weaver/IntMap;)V
76: aload 4
aload 5
invokevirtual org.aspectj.weaver.ResolvedPointcutDefinition.getPointcut:()Lorg/aspectj/weaver/patterns/Pointcut;
aload 1
aload 2
aload 6
invokevirtual org.aspectj.weaver.patterns.Pointcut.concretize:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/IntMap;)Lorg/aspectj/weaver/patterns/Pointcut;
putfield org.aspectj.weaver.patterns.IfPointcut.residueSource:Lorg/aspectj/weaver/patterns/Pointcut;
end local 6 end local 5 77: 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 78 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
0 78 1 inAspect Lorg/aspectj/weaver/ResolvedType;
0 78 2 declaringType Lorg/aspectj/weaver/ResolvedType;
0 78 3 bindings Lorg/aspectj/weaver/IntMap;
37 39 4 ret Lorg/aspectj/weaver/patterns/IfPointcut;
40 78 4 ret Lorg/aspectj/weaver/patterns/IfPointcut;
9 38 5 def Lorg/aspectj/weaver/ResolvedPointcutDefinition;
11 35 6 aspect Lorg/aspectj/weaver/ResolvedType;
12 29 7 memberIter Ljava/util/Iterator;
14 28 8 method Lorg/aspectj/weaver/ResolvedMember;
17 28 9 sameSig Z
18 25 10 j I
20 23 11 argJ Lorg/aspectj/weaver/UnresolvedType;
49 54 5 advice Lorg/aspectj/weaver/ShadowMunger;
56 77 5 def Lorg/aspectj/weaver/ResolvedPointcutDefinition;
65 74 6 i I
67 72 7 argSignature Ljava/lang/String;
75 77 6 newBindings Lorg/aspectj/weaver/IntMap;
MethodParameters:
Name Flags
inAspect
declaringType
bindings
public org.aspectj.weaver.patterns.Pointcut parameterizeWith(java.util.Map, org.aspectj.weaver.World);
descriptor: (Ljava/util/Map;Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/patterns/Pointcut;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
0 1 1 typeVariableMap Ljava/util/Map;
0 1 2 w Lorg/aspectj/weaver/World;
MethodParameters:
Name Flags
typeVariableMap
w
public static org.aspectj.weaver.patterns.IfPointcut makeIfFalsePointcut(org.aspectj.weaver.patterns.Pointcut$State);
descriptor: (Lorg/aspectj/weaver/patterns/Pointcut$State;)Lorg/aspectj/weaver/patterns/IfPointcut;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new org.aspectj.weaver.patterns.IfPointcut$IfFalsePointcut
dup
invokespecial org.aspectj.weaver.patterns.IfPointcut$IfFalsePointcut.<init>:()V
astore 1
start local 1 1: aload 1
aload 0
putfield org.aspectj.weaver.patterns.IfPointcut.state:Lorg/aspectj/weaver/patterns/Pointcut$State;
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 state Lorg/aspectj/weaver/patterns/Pointcut$State;
1 3 1 ret Lorg/aspectj/weaver/patterns/IfPointcut;
MethodParameters:
Name Flags
state
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/IfPointcut;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/IfPointcut;
0 1 1 visitor Lorg/aspectj/weaver/patterns/PatternNodeVisitor;
0 1 2 data Ljava/lang/Object;
MethodParameters:
Name Flags
visitor
data
public static org.aspectj.weaver.patterns.IfPointcut makeIfTruePointcut(org.aspectj.weaver.patterns.Pointcut$State);
descriptor: (Lorg/aspectj/weaver/patterns/Pointcut$State;)Lorg/aspectj/weaver/patterns/IfPointcut;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new org.aspectj.weaver.patterns.IfPointcut$IfTruePointcut
dup
invokespecial org.aspectj.weaver.patterns.IfPointcut$IfTruePointcut.<init>:()V
astore 1
start local 1 1: aload 1
aload 0
putfield org.aspectj.weaver.patterns.IfPointcut.state:Lorg/aspectj/weaver/patterns/Pointcut$State;
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 state Lorg/aspectj/weaver/patterns/Pointcut$State;
1 3 1 ret Lorg/aspectj/weaver/patterns/IfPointcut;
MethodParameters:
Name Flags
state
public void setAlways(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
dup
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
bipush 16
ior
putfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
1: iload 1
ifeq 3
2: aload 0
dup
getfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
bipush 32
ior
putfield org.aspectj.weaver.patterns.IfPointcut.extraParameterFlags:I
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/aspectj/weaver/patterns/IfPointcut;
0 4 1 matches Z
MethodParameters:
Name Flags
matches
}
SourceFile: "IfPointcut.java"
NestMembers:
org.aspectj.weaver.patterns.IfPointcut$IfFalsePointcut org.aspectj.weaver.patterns.IfPointcut$IfTruePointcut
InnerClasses:
public final Kind = org.aspectj.bridge.IMessage$Kind of org.aspectj.bridge.IMessage
public IfFalsePointcut = org.aspectj.weaver.patterns.IfPointcut$IfFalsePointcut of org.aspectj.weaver.patterns.IfPointcut
public IfTruePointcut = org.aspectj.weaver.patterns.IfPointcut$IfTruePointcut of org.aspectj.weaver.patterns.IfPointcut
public final State = org.aspectj.weaver.patterns.Pointcut$State of org.aspectj.weaver.patterns.Pointcut