public class org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl extends org.aspectj.internal.lang.reflect.PerClauseImpl implements org.aspectj.lang.reflect.PointcutBasedPerClause
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl
  super_class: org.aspectj.internal.lang.reflect.PerClauseImpl
{
  private final org.aspectj.lang.reflect.PointcutExpression pointcutExpression;
    descriptor: Lorg/aspectj/lang/reflect/PointcutExpression;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$org$aspectj$lang$reflect$PerClauseKind;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  public void <init>(org.aspectj.lang.reflect.PerClauseKind, java.lang.String);
    descriptor: (Lorg/aspectj/lang/reflect/PerClauseKind;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl this
        start local 1 // org.aspectj.lang.reflect.PerClauseKind kind
        start local 2 // java.lang.String pointcutExpression
         0: .line 29
            aload 0 /* this */
            aload 1 /* kind */
            invokespecial org.aspectj.internal.lang.reflect.PerClauseImpl.<init>:(Lorg/aspectj/lang/reflect/PerClauseKind;)V
         1: .line 30
            aload 0 /* this */
            new org.aspectj.internal.lang.reflect.PointcutExpressionImpl
            dup
            aload 2 /* pointcutExpression */
            invokespecial org.aspectj.internal.lang.reflect.PointcutExpressionImpl.<init>:(Ljava/lang/String;)V
            putfield org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl.pointcutExpression:Lorg/aspectj/lang/reflect/PointcutExpression;
         2: .line 31
            return
        end local 2 // java.lang.String pointcutExpression
        end local 1 // org.aspectj.lang.reflect.PerClauseKind kind
        end local 0 // org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    3     0                this  Lorg/aspectj/internal/lang/reflect/PointcutBasedPerClauseImpl;
            0    3     1                kind  Lorg/aspectj/lang/reflect/PerClauseKind;
            0    3     2  pointcutExpression  Ljava/lang/String;
    MethodParameters:
                    Name  Flags
      kind                
      pointcutExpression  

  public org.aspectj.lang.reflect.PointcutExpression getPointcutExpression();
    descriptor: ()Lorg/aspectj/lang/reflect/PointcutExpression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl this
         0: .line 34
            aload 0 /* this */
            getfield org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl.pointcutExpression:Lorg/aspectj/lang/reflect/PointcutExpression;
            areturn
        end local 0 // org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/internal/lang/reflect/PointcutBasedPerClauseImpl;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl this
         0: .line 38
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuffer sb
         1: .line 39
            invokestatic org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl.$SWITCH_TABLE$org$aspectj$lang$reflect$PerClauseKind:()[I
            aload 0 /* this */
            invokevirtual org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl.getKind:()Lorg/aspectj/lang/reflect/PerClauseKind;
            invokevirtual org.aspectj.lang.reflect.PerClauseKind.ordinal:()I
            iaload
            tableswitch { // 2 - 5
                    2: 5
                    3: 4
                    4: 2
                    5: 3
              default: 6
          }
         2: .line 40
      StackMap locals: java.lang.StringBuffer
      StackMap stack:
            aload 1 /* sb */
            ldc "percflow("
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
            goto 6
         3: .line 41
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            ldc "percflowbelow("
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
            goto 6
         4: .line 42
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            ldc "pertarget("
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
            goto 6
         5: .line 43
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            ldc "perthis("
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 45
      StackMap locals:
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl.pointcutExpression:Lorg/aspectj/lang/reflect/PointcutExpression;
            invokeinterface org.aspectj.lang.reflect.PointcutExpression.asString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         7: .line 46
            aload 1 /* sb */
            ldc ")"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         8: .line 47
            aload 1 /* sb */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuffer sb
        end local 0 // org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/aspectj/internal/lang/reflect/PointcutBasedPerClauseImpl;
            1    9     1    sb  Ljava/lang/StringBuffer;

  static int[] $SWITCH_TABLE$org$aspectj$lang$reflect$PerClauseKind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 22
            getstatic org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl.$SWITCH_TABLE$org$aspectj$lang$reflect$PerClauseKind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.aspectj.lang.reflect.PerClauseKind.values:()[Lorg/aspectj/lang/reflect/PerClauseKind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.aspectj.lang.reflect.PerClauseKind.PERCFLOW:Lorg/aspectj/lang/reflect/PerClauseKind;
            invokevirtual org.aspectj.lang.reflect.PerClauseKind.ordinal:()I
            iconst_4
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.aspectj.lang.reflect.PerClauseKind.PERCFLOWBELOW:Lorg/aspectj/lang/reflect/PerClauseKind;
            invokevirtual org.aspectj.lang.reflect.PerClauseKind.ordinal:()I
            iconst_5
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.aspectj.lang.reflect.PerClauseKind.PERTARGET:Lorg/aspectj/lang/reflect/PerClauseKind;
            invokevirtual org.aspectj.lang.reflect.PerClauseKind.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.aspectj.lang.reflect.PerClauseKind.PERTHIS:Lorg/aspectj/lang/reflect/PerClauseKind;
            invokevirtual org.aspectj.lang.reflect.PerClauseKind.ordinal:()I
            iconst_2
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.aspectj.lang.reflect.PerClauseKind.PERTYPEWITHIN:Lorg/aspectj/lang/reflect/PerClauseKind;
            invokevirtual org.aspectj.lang.reflect.PerClauseKind.ordinal:()I
            bipush 6
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.aspectj.lang.reflect.PerClauseKind.SINGLETON:Lorg/aspectj/lang/reflect/PerClauseKind;
            invokevirtual org.aspectj.lang.reflect.PerClauseKind.ordinal:()I
            iconst_1
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            dup
            putstatic org.aspectj.internal.lang.reflect.PointcutBasedPerClauseImpl.$SWITCH_TABLE$org$aspectj$lang$reflect$PerClauseKind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
}
SourceFile: "PointcutBasedPerClauseImpl.java"