public class org.aspectj.weaver.tools.PointcutParser
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.aspectj.weaver.tools.PointcutParser
  super_class: java.lang.Object
{
  private org.aspectj.weaver.reflect.ReflectionWorld world;
    descriptor: Lorg/aspectj/weaver/reflect/ReflectionWorld;
    flags: (0x0002) ACC_PRIVATE

  private org.aspectj.weaver.WeakClassLoaderReference classLoaderReference;
    descriptor: Lorg/aspectj/weaver/WeakClassLoaderReference;
    flags: (0x0002) ACC_PRIVATE

  private final java.util.Set<org.aspectj.weaver.tools.PointcutPrimitive> supportedPrimitives;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;

  private final java.util.Set<org.aspectj.weaver.tools.PointcutDesignatorHandler> pointcutDesignators;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutDesignatorHandler;>;

  public static java.util.Set<org.aspectj.weaver.tools.PointcutPrimitive> getAllSupportedPointcutPrimitives();
    descriptor: ()Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 70
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 0 /* primitives */
        start local 0 // java.util.Set primitives
         1: .line 71
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.ADVICE_EXECUTION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         2: .line 72
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.ARGS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         3: .line 73
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CALL:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         4: .line 74
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.EXECUTION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         5: .line 75
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.GET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         6: .line 76
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.HANDLER:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         7: .line 77
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         8: .line 78
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.PRE_INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         9: .line 79
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.SET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        10: .line 80
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.STATIC_INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        11: .line 81
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.TARGET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        12: .line 82
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.THIS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        13: .line 83
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.WITHIN:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        14: .line 84
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.WITHIN_CODE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        15: .line 85
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_ANNOTATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        16: .line 86
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_THIS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        17: .line 87
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_TARGET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        18: .line 88
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_ARGS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        19: .line 89
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_WITHIN:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        20: .line 90
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_WITHINCODE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        21: .line 91
            aload 0 /* primitives */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.REFERENCE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        22: .line 93
            aload 0 /* primitives */
            areturn
        end local 0 // java.util.Set primitives
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            1   23     0  primitives  Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;
    Signature: ()Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;

  public static org.aspectj.weaver.tools.PointcutParser getPointcutParserSupportingAllPrimitivesAndUsingContextClassloaderForResolution();
    descriptor: ()Lorg/aspectj/weaver/tools/PointcutParser;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 108
            new org.aspectj.weaver.tools.PointcutParser
            dup
            invokespecial org.aspectj.weaver.tools.PointcutParser.<init>:()V
            astore 0 /* p */
        start local 0 // org.aspectj.weaver.tools.PointcutParser p
         1: .line 109
            aload 0 /* p */
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
            invokevirtual org.aspectj.weaver.tools.PointcutParser.setClassLoader:(Ljava/lang/ClassLoader;)V
         2: .line 110
            aload 0 /* p */
            areturn
        end local 0 // org.aspectj.weaver.tools.PointcutParser p
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    3     0     p  Lorg/aspectj/weaver/tools/PointcutParser;

  public static org.aspectj.weaver.tools.PointcutParser getPointcutParserSupportingSpecifiedPrimitivesAndUsingContextClassloaderForResolution(java.util.Set<org.aspectj.weaver.tools.PointcutPrimitive>);
    descriptor: (Ljava/util/Set;)Lorg/aspectj/weaver/tools/PointcutParser;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.util.Set supportedPointcutKinds
         0: .line 130
            new org.aspectj.weaver.tools.PointcutParser
            dup
            aload 0 /* supportedPointcutKinds */
            invokespecial org.aspectj.weaver.tools.PointcutParser.<init>:(Ljava/util/Set;)V
            astore 1 /* p */
        start local 1 // org.aspectj.weaver.tools.PointcutParser p
         1: .line 131
            aload 1 /* p */
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
            invokevirtual org.aspectj.weaver.tools.PointcutParser.setClassLoader:(Ljava/lang/ClassLoader;)V
         2: .line 132
            aload 1 /* p */
            areturn
        end local 1 // org.aspectj.weaver.tools.PointcutParser p
        end local 0 // java.util.Set supportedPointcutKinds
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    3     0  supportedPointcutKinds  Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;
            1    3     1                       p  Lorg/aspectj/weaver/tools/PointcutParser;
    Signature: (Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;)Lorg/aspectj/weaver/tools/PointcutParser;
    MethodParameters:
                        Name  Flags
      supportedPointcutKinds  

  public static org.aspectj.weaver.tools.PointcutParser getPointcutParserSupportingAllPrimitivesAndUsingSpecifiedClassloaderForResolution(java.lang.ClassLoader);
    descriptor: (Ljava/lang/ClassLoader;)Lorg/aspectj/weaver/tools/PointcutParser;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.ClassLoader classLoader
         0: .line 148
            new org.aspectj.weaver.tools.PointcutParser
            dup
            invokespecial org.aspectj.weaver.tools.PointcutParser.<init>:()V
            astore 1 /* p */
        start local 1 // org.aspectj.weaver.tools.PointcutParser p
         1: .line 149
            aload 1 /* p */
            aload 0 /* classLoader */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.setClassLoader:(Ljava/lang/ClassLoader;)V
         2: .line 150
            aload 1 /* p */
            areturn
        end local 1 // org.aspectj.weaver.tools.PointcutParser p
        end local 0 // java.lang.ClassLoader classLoader
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0  classLoader  Ljava/lang/ClassLoader;
            1    3     1            p  Lorg/aspectj/weaver/tools/PointcutParser;
    MethodParameters:
             Name  Flags
      classLoader  

  public static org.aspectj.weaver.tools.PointcutParser getPointcutParserSupportingSpecifiedPrimitivesAndUsingSpecifiedClassLoaderForResolution(java.util.Set<org.aspectj.weaver.tools.PointcutPrimitive>, java.lang.ClassLoader);
    descriptor: (Ljava/util/Set;Ljava/lang/ClassLoader;)Lorg/aspectj/weaver/tools/PointcutParser;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.Set supportedPointcutKinds
        start local 1 // java.lang.ClassLoader classLoader
         0: .line 170
            new org.aspectj.weaver.tools.PointcutParser
            dup
            aload 0 /* supportedPointcutKinds */
            invokespecial org.aspectj.weaver.tools.PointcutParser.<init>:(Ljava/util/Set;)V
            astore 2 /* p */
        start local 2 // org.aspectj.weaver.tools.PointcutParser p
         1: .line 171
            aload 2 /* p */
            aload 1 /* classLoader */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.setClassLoader:(Ljava/lang/ClassLoader;)V
         2: .line 172
            aload 2 /* p */
            areturn
        end local 2 // org.aspectj.weaver.tools.PointcutParser p
        end local 1 // java.lang.ClassLoader classLoader
        end local 0 // java.util.Set supportedPointcutKinds
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    3     0  supportedPointcutKinds  Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;
            0    3     1             classLoader  Ljava/lang/ClassLoader;
            1    3     2                       p  Lorg/aspectj/weaver/tools/PointcutParser;
    Signature: (Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;Ljava/lang/ClassLoader;)Lorg/aspectj/weaver/tools/PointcutParser;
    MethodParameters:
                        Name  Flags
      supportedPointcutKinds  
      classLoader             

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
         0: .line 183
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 63
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield org.aspectj.weaver.tools.PointcutParser.pointcutDesignators:Ljava/util/Set;
         2: .line 184
            aload 0 /* this */
            invokestatic org.aspectj.weaver.tools.PointcutParser.getAllSupportedPointcutPrimitives:()Ljava/util/Set;
            putfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
         3: .line 185
            aload 0 /* this */
            ldc Lorg/aspectj/weaver/tools/PointcutParser;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            invokevirtual org.aspectj.weaver.tools.PointcutParser.setClassLoader:(Ljava/lang/ClassLoader;)V
         4: .line 186
            return
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/aspectj/weaver/tools/PointcutParser;

  private void <init>(java.util.Set<org.aspectj.weaver.tools.PointcutPrimitive>);
    descriptor: (Ljava/util/Set;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.util.Set supportedPointcutKinds
         0: .line 200
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 63
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield org.aspectj.weaver.tools.PointcutParser.pointcutDesignators:Ljava/util/Set;
         2: .line 201
            aload 0 /* this */
            aload 1 /* supportedPointcutKinds */
            putfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
         3: .line 202
            aload 1 /* supportedPointcutKinds */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 8
      StackMap locals: org.aspectj.weaver.tools.PointcutParser java.util.Set top java.util.Iterator
      StackMap stack:
         4: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.weaver.tools.PointcutPrimitive
            astore 2 /* pointcutPrimitive */
        start local 2 // org.aspectj.weaver.tools.PointcutPrimitive pointcutPrimitive
         5: .line 203
            aload 2 /* pointcutPrimitive */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.IF:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            if_acmpeq 7
            aload 2 /* pointcutPrimitive */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CFLOW:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            if_acmpeq 7
         6: .line 204
            aload 2 /* pointcutPrimitive */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CFLOW_BELOW:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            if_acmpne 8
         7: .line 205
      StackMap locals: org.aspectj.weaver.tools.PointcutParser java.util.Set org.aspectj.weaver.tools.PointcutPrimitive java.util.Iterator
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
            ldc "Cannot handle if, cflow, and cflowbelow primitives"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // org.aspectj.weaver.tools.PointcutPrimitive pointcutPrimitive
         8: .line 202
      StackMap locals: org.aspectj.weaver.tools.PointcutParser java.util.Set top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         9: .line 208
            aload 0 /* this */
            ldc Lorg/aspectj/weaver/tools/PointcutParser;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            invokevirtual org.aspectj.weaver.tools.PointcutParser.setClassLoader:(Ljava/lang/ClassLoader;)V
        10: .line 209
            return
        end local 1 // java.util.Set supportedPointcutKinds
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   11     0                    this  Lorg/aspectj/weaver/tools/PointcutParser;
            0   11     1  supportedPointcutKinds  Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;
            5    8     2       pointcutPrimitive  Lorg/aspectj/weaver/tools/PointcutPrimitive;
    Signature: (Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;)V
    MethodParameters:
                        Name  Flags
      supportedPointcutKinds  

  protected void setWorld(org.aspectj.weaver.reflect.ReflectionWorld);
    descriptor: (Lorg/aspectj/weaver/reflect/ReflectionWorld;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // org.aspectj.weaver.reflect.ReflectionWorld aWorld
         0: .line 212
            aload 0 /* this */
            aload 1 /* aWorld */
            putfield org.aspectj.weaver.tools.PointcutParser.world:Lorg/aspectj/weaver/reflect/ReflectionWorld;
         1: .line 213
            return
        end local 1 // org.aspectj.weaver.reflect.ReflectionWorld aWorld
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/aspectj/weaver/tools/PointcutParser;
            0    2     1  aWorld  Lorg/aspectj/weaver/reflect/ReflectionWorld;
    MethodParameters:
        Name  Flags
      aWorld  

  protected void setClassLoader(java.lang.ClassLoader);
    descriptor: (Ljava/lang/ClassLoader;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.lang.ClassLoader aLoader
         0: .line 221
            aload 0 /* this */
            new org.aspectj.weaver.WeakClassLoaderReference
            dup
            aload 1 /* aLoader */
            invokespecial org.aspectj.weaver.WeakClassLoaderReference.<init>:(Ljava/lang/ClassLoader;)V
            putfield org.aspectj.weaver.tools.PointcutParser.classLoaderReference:Lorg/aspectj/weaver/WeakClassLoaderReference;
         1: .line 222
            aload 0 /* this */
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.classLoaderReference:Lorg/aspectj/weaver/WeakClassLoaderReference;
            invokestatic org.aspectj.weaver.reflect.ReflectionWorld.getReflectionWorldFor:(Lorg/aspectj/weaver/WeakClassLoaderReference;)Lorg/aspectj/weaver/reflect/ReflectionWorld;
            putfield org.aspectj.weaver.tools.PointcutParser.world:Lorg/aspectj/weaver/reflect/ReflectionWorld;
         2: .line 223
            return
        end local 1 // java.lang.ClassLoader aLoader
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/aspectj/weaver/tools/PointcutParser;
            0    3     1  aLoader  Ljava/lang/ClassLoader;
    MethodParameters:
         Name  Flags
      aLoader  

  protected void setClassLoader(java.lang.ClassLoader, boolean);
    descriptor: (Ljava/lang/ClassLoader;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.lang.ClassLoader aLoader
        start local 2 // boolean shareWorlds
         0: .line 232
            aload 0 /* this */
            new org.aspectj.weaver.WeakClassLoaderReference
            dup
            aload 1 /* aLoader */
            invokespecial org.aspectj.weaver.WeakClassLoaderReference.<init>:(Ljava/lang/ClassLoader;)V
            putfield org.aspectj.weaver.tools.PointcutParser.classLoaderReference:Lorg/aspectj/weaver/WeakClassLoaderReference;
         1: .line 233
            iload 2 /* shareWorlds */
            ifeq 4
         2: .line 234
            aload 0 /* this */
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.classLoaderReference:Lorg/aspectj/weaver/WeakClassLoaderReference;
            invokestatic org.aspectj.weaver.reflect.ReflectionWorld.getReflectionWorldFor:(Lorg/aspectj/weaver/WeakClassLoaderReference;)Lorg/aspectj/weaver/reflect/ReflectionWorld;
            putfield org.aspectj.weaver.tools.PointcutParser.world:Lorg/aspectj/weaver/reflect/ReflectionWorld;
         3: .line 235
            goto 5
         4: .line 236
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.aspectj.weaver.reflect.ReflectionWorld
            dup
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.classLoaderReference:Lorg/aspectj/weaver/WeakClassLoaderReference;
            invokespecial org.aspectj.weaver.reflect.ReflectionWorld.<init>:(Lorg/aspectj/weaver/WeakClassLoaderReference;)V
            putfield org.aspectj.weaver.tools.PointcutParser.world:Lorg/aspectj/weaver/reflect/ReflectionWorld;
         5: .line 238
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean shareWorlds
        end local 1 // java.lang.ClassLoader aLoader
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/aspectj/weaver/tools/PointcutParser;
            0    6     1      aLoader  Ljava/lang/ClassLoader;
            0    6     2  shareWorlds  Z
    MethodParameters:
             Name  Flags
      aLoader      
      shareWorlds  

  public void setLintProperties(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.lang.String resourcePath
         0: .line 246
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.classLoaderReference:Lorg/aspectj/weaver/WeakClassLoaderReference;
            invokevirtual org.aspectj.weaver.WeakClassLoaderReference.getClassLoader:()Ljava/lang/ClassLoader;
            aload 1 /* resourcePath */
            invokevirtual java.lang.ClassLoader.getResource:(Ljava/lang/String;)Ljava/net/URL;
            astore 2 /* url */
        start local 2 // java.net.URL url
         1: .line 247
            aload 2 /* url */
            invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
            astore 3 /* is */
        start local 3 // java.io.InputStream is
         2: .line 248
            new java.util.Properties
            dup
            invokespecial java.util.Properties.<init>:()V
            astore 4 /* p */
        start local 4 // java.util.Properties p
         3: .line 249
            aload 4 /* p */
            aload 3 /* is */
            invokevirtual java.util.Properties.load:(Ljava/io/InputStream;)V
         4: .line 250
            aload 0 /* this */
            aload 4 /* p */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.setLintProperties:(Ljava/util/Properties;)V
         5: .line 251
            return
        end local 4 // java.util.Properties p
        end local 3 // java.io.InputStream is
        end local 2 // java.net.URL url
        end local 1 // java.lang.String resourcePath
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Lorg/aspectj/weaver/tools/PointcutParser;
            0    6     1  resourcePath  Ljava/lang/String;
            1    6     2           url  Ljava/net/URL;
            2    6     3            is  Ljava/io/InputStream;
            3    6     4             p  Ljava/util/Properties;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      resourcePath  

  public void setLintProperties(java.util.Properties);
    descriptor: (Ljava/util/Properties;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.util.Properties properties
         0: .line 259
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.World.getLint:()Lorg/aspectj/weaver/Lint;
            aload 1 /* properties */
            invokevirtual org.aspectj.weaver.Lint.setFromProperties:(Ljava/util/Properties;)V
         1: .line 260
            return
        end local 1 // java.util.Properties properties
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/aspectj/weaver/tools/PointcutParser;
            0    2     1  properties  Ljava/util/Properties;
    MethodParameters:
            Name  Flags
      properties  

  public void registerPointcutDesignatorHandler(org.aspectj.weaver.tools.PointcutDesignatorHandler);
    descriptor: (Lorg/aspectj/weaver/tools/PointcutDesignatorHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // org.aspectj.weaver.tools.PointcutDesignatorHandler designatorHandler
         0: .line 269
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.pointcutDesignators:Ljava/util/Set;
            aload 1 /* designatorHandler */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         1: .line 270
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.world:Lorg/aspectj/weaver/reflect/ReflectionWorld;
            ifnull 3
         2: .line 271
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.world:Lorg/aspectj/weaver/reflect/ReflectionWorld;
            aload 1 /* designatorHandler */
            invokevirtual org.aspectj.weaver.reflect.ReflectionWorld.registerPointcutHandler:(Lorg/aspectj/weaver/tools/PointcutDesignatorHandler;)V
         3: .line 273
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.aspectj.weaver.tools.PointcutDesignatorHandler designatorHandler
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lorg/aspectj/weaver/tools/PointcutParser;
            0    4     1  designatorHandler  Lorg/aspectj/weaver/tools/PointcutDesignatorHandler;
    MethodParameters:
                   Name  Flags
      designatorHandler  

  public org.aspectj.weaver.tools.PointcutParameter createPointcutParameter(java.lang.String, java.lang.Class<?>);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;)Lorg/aspectj/weaver/tools/PointcutParameter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.lang.String name
        start local 2 // java.lang.Class type
         0: .line 283
            new org.aspectj.weaver.reflect.PointcutParameterImpl
            dup
            aload 1 /* name */
            aload 2 /* type */
            invokespecial org.aspectj.weaver.reflect.PointcutParameterImpl.<init>:(Ljava/lang/String;Ljava/lang/Class;)V
            areturn
        end local 2 // java.lang.Class type
        end local 1 // java.lang.String name
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/tools/PointcutParser;
            0    1     1  name  Ljava/lang/String;
            0    1     2  type  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/String;Ljava/lang/Class<*>;)Lorg/aspectj/weaver/tools/PointcutParameter;
    MethodParameters:
      Name  Flags
      name  
      type  

  public org.aspectj.weaver.tools.PointcutExpression parsePointcutExpression(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/aspectj/weaver/tools/PointcutExpression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.lang.String expression
         0: .line 296
            aload 0 /* this */
            aload 1 /* expression */
            aconst_null
            iconst_0
            anewarray org.aspectj.weaver.tools.PointcutParameter
            invokevirtual org.aspectj.weaver.tools.PointcutParser.parsePointcutExpression:(Ljava/lang/String;Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/tools/PointcutExpression;
            areturn
        end local 1 // java.lang.String expression
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/aspectj/weaver/tools/PointcutParser;
            0    1     1  expression  Ljava/lang/String;
    Exceptions:
      throws org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException, java.lang.IllegalArgumentException
    MethodParameters:
            Name  Flags
      expression  

  public org.aspectj.weaver.tools.PointcutExpression parsePointcutExpression(java.lang.String, java.lang.Class<?>, org.aspectj.weaver.tools.PointcutParameter[]);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/tools/PointcutExpression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.lang.String expression
        start local 2 // java.lang.Class inScope
        start local 3 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
         0: .line 310
            aconst_null
            astore 4 /* pcExpr */
        start local 4 // org.aspectj.weaver.internal.tools.PointcutExpressionImpl pcExpr
         1: .line 312
            aload 0 /* this */
            aload 1 /* expression */
            aload 2 /* inScope */
            aload 3 /* formalParameters */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.resolvePointcutExpression:(Ljava/lang/String;Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/Pointcut;
            astore 5 /* pc */
        start local 5 // org.aspectj.weaver.patterns.Pointcut pc
         2: .line 313
            aload 0 /* this */
            aload 5 /* pc */
            aload 2 /* inScope */
            aload 3 /* formalParameters */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.concretizePointcutExpression:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/Pointcut;
            astore 5 /* pc */
         3: .line 314
            aload 0 /* this */
            aload 5 /* pc */
            aload 1 /* expression */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
         4: .line 315
            new org.aspectj.weaver.internal.tools.PointcutExpressionImpl
            dup
            aload 5 /* pc */
            aload 1 /* expression */
            aload 3 /* formalParameters */
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            invokespecial org.aspectj.weaver.internal.tools.PointcutExpressionImpl.<init>:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;[Lorg/aspectj/weaver/tools/PointcutParameter;Lorg/aspectj/weaver/World;)V
            astore 4 /* pcExpr */
        end local 5 // org.aspectj.weaver.patterns.Pointcut pc
         5: .line 316
            goto 10
      StackMap locals: org.aspectj.weaver.tools.PointcutParser java.lang.String java.lang.Class org.aspectj.weaver.tools.PointcutParameter[] org.aspectj.weaver.internal.tools.PointcutExpressionImpl
      StackMap stack: org.aspectj.weaver.patterns.ParserException
         6: astore 5 /* pEx */
        start local 5 // org.aspectj.weaver.patterns.ParserException pEx
         7: .line 317
            new java.lang.IllegalArgumentException
            dup
            aload 0 /* this */
            aload 1 /* expression */
            aload 5 /* pEx */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.buildUserMessageFromParserException:(Ljava/lang/String;Lorg/aspectj/weaver/patterns/ParserException;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // org.aspectj.weaver.patterns.ParserException pEx
         8: .line 318
      StackMap locals:
      StackMap stack: org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
            astore 5 /* rwEx */
        start local 5 // org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException rwEx
         9: .line 319
            new java.lang.IllegalArgumentException
            dup
            aload 5 /* rwEx */
            invokevirtual org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException rwEx
        10: .line 321
      StackMap locals:
      StackMap stack:
            aload 4 /* pcExpr */
            areturn
        end local 4 // org.aspectj.weaver.internal.tools.PointcutExpressionImpl pcExpr
        end local 3 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
        end local 2 // java.lang.Class inScope
        end local 1 // java.lang.String expression
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   11     0              this  Lorg/aspectj/weaver/tools/PointcutParser;
            0   11     1        expression  Ljava/lang/String;
            0   11     2           inScope  Ljava/lang/Class<*>;
            0   11     3  formalParameters  [Lorg/aspectj/weaver/tools/PointcutParameter;
            1   11     4            pcExpr  Lorg/aspectj/weaver/internal/tools/PointcutExpressionImpl;
            2    5     5                pc  Lorg/aspectj/weaver/patterns/Pointcut;
            7    8     5               pEx  Lorg/aspectj/weaver/patterns/ParserException;
            9   10     5              rwEx  Lorg/aspectj/weaver/reflect/ReflectionWorld$ReflectionWorldException;
      Exception table:
        from    to  target  type
           1     5       6  Class org.aspectj.weaver.patterns.ParserException
           1     5       8  Class org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
    Exceptions:
      throws org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException, java.lang.IllegalArgumentException
    Signature: (Ljava/lang/String;Ljava/lang/Class<*>;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/tools/PointcutExpression;
    MethodParameters:
                  Name  Flags
      expression        
      inScope           
      formalParameters  

  protected org.aspectj.weaver.patterns.Pointcut resolvePointcutExpression(java.lang.String, java.lang.Class<?>, org.aspectj.weaver.tools.PointcutParameter[]);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/Pointcut;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.lang.String expression
        start local 2 // java.lang.Class inScope
        start local 3 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
         0: .line 326
            new org.aspectj.weaver.patterns.PatternParser
            dup
            aload 1 /* expression */
            invokespecial org.aspectj.weaver.patterns.PatternParser.<init>:(Ljava/lang/String;)V
            astore 4 /* parser */
        start local 4 // org.aspectj.weaver.patterns.PatternParser parser
         1: .line 327
            aload 4 /* parser */
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.pointcutDesignators:Ljava/util/Set;
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.world:Lorg/aspectj/weaver/reflect/ReflectionWorld;
            invokevirtual org.aspectj.weaver.patterns.PatternParser.setPointcutDesignatorHandlers:(Ljava/util/Set;Lorg/aspectj/weaver/World;)V
         2: .line 328
            aload 4 /* parser */
            invokevirtual org.aspectj.weaver.patterns.PatternParser.parsePointcut:()Lorg/aspectj/weaver/patterns/Pointcut;
            astore 5 /* pc */
        start local 5 // org.aspectj.weaver.patterns.Pointcut pc
         3: .line 329
            aload 0 /* this */
            aload 5 /* pc */
            aload 1 /* expression */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
         4: .line 330
            aload 0 /* this */
            aload 2 /* inScope */
            ifnonnull 5
            ldc Ljava/lang/Object;
            goto 6
      StackMap locals: org.aspectj.weaver.tools.PointcutParser java.lang.String java.lang.Class org.aspectj.weaver.tools.PointcutParameter[] org.aspectj.weaver.patterns.PatternParser org.aspectj.weaver.patterns.Pointcut
      StackMap stack: org.aspectj.weaver.tools.PointcutParser
         5: aload 2 /* inScope */
      StackMap locals: org.aspectj.weaver.tools.PointcutParser java.lang.String java.lang.Class org.aspectj.weaver.tools.PointcutParameter[] org.aspectj.weaver.patterns.PatternParser org.aspectj.weaver.patterns.Pointcut
      StackMap stack: org.aspectj.weaver.tools.PointcutParser java.lang.Class
         6: aload 3 /* formalParameters */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.buildResolutionScope:(Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/IScope;
            astore 6 /* resolutionScope */
        start local 6 // org.aspectj.weaver.patterns.IScope resolutionScope
         7: .line 331
            aload 5 /* pc */
            aload 6 /* resolutionScope */
            invokevirtual org.aspectj.weaver.patterns.Pointcut.resolve:(Lorg/aspectj/weaver/patterns/IScope;)Lorg/aspectj/weaver/patterns/Pointcut;
            astore 5 /* pc */
         8: .line 332
            aload 5 /* pc */
         9: areturn
        end local 6 // org.aspectj.weaver.patterns.IScope resolutionScope
        end local 5 // org.aspectj.weaver.patterns.Pointcut pc
        end local 4 // org.aspectj.weaver.patterns.PatternParser parser
        10: .line 333
      StackMap locals: org.aspectj.weaver.tools.PointcutParser java.lang.String java.lang.Class org.aspectj.weaver.tools.PointcutParameter[]
      StackMap stack: org.aspectj.weaver.patterns.ParserException
            astore 4 /* pEx */
        start local 4 // org.aspectj.weaver.patterns.ParserException pEx
        11: .line 334
            new java.lang.IllegalArgumentException
            dup
            aload 0 /* this */
            aload 1 /* expression */
            aload 4 /* pEx */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.buildUserMessageFromParserException:(Ljava/lang/String;Lorg/aspectj/weaver/patterns/ParserException;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // org.aspectj.weaver.patterns.ParserException pEx
        end local 3 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
        end local 2 // java.lang.Class inScope
        end local 1 // java.lang.String expression
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   12     0              this  Lorg/aspectj/weaver/tools/PointcutParser;
            0   12     1        expression  Ljava/lang/String;
            0   12     2           inScope  Ljava/lang/Class<*>;
            0   12     3  formalParameters  [Lorg/aspectj/weaver/tools/PointcutParameter;
            1   10     4            parser  Lorg/aspectj/weaver/patterns/PatternParser;
            3   10     5                pc  Lorg/aspectj/weaver/patterns/Pointcut;
            7   10     6   resolutionScope  Lorg/aspectj/weaver/patterns/IScope;
           11   12     4               pEx  Lorg/aspectj/weaver/patterns/ParserException;
      Exception table:
        from    to  target  type
           0     9      10  Class org.aspectj.weaver.patterns.ParserException
    Signature: (Ljava/lang/String;Ljava/lang/Class<*>;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/Pointcut;
    MethodParameters:
                  Name  Flags
      expression        
      inScope           
      formalParameters  

  protected org.aspectj.weaver.patterns.Pointcut concretizePointcutExpression(org.aspectj.weaver.patterns.Pointcut, java.lang.Class<?>, org.aspectj.weaver.tools.PointcutParameter[]);
    descriptor: (Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/Pointcut;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // org.aspectj.weaver.patterns.Pointcut pc
        start local 2 // java.lang.Class inScope
        start local 3 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
         0: .line 339
            aconst_null
            astore 4 /* declaringTypeForResolution */
        start local 4 // org.aspectj.weaver.ResolvedType declaringTypeForResolution
         1: .line 340
            aload 2 /* inScope */
            ifnull 4
         2: .line 341
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            aload 2 /* inScope */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.World.resolve:(Ljava/lang/String;)Lorg/aspectj/weaver/ResolvedType;
            astore 4 /* declaringTypeForResolution */
         3: .line 342
            goto 5
         4: .line 343
      StackMap locals: org.aspectj.weaver.ResolvedType
      StackMap stack:
            getstatic org.aspectj.weaver.ResolvedType.OBJECT:Lorg/aspectj/weaver/UnresolvedType;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.UnresolvedType.resolve:(Lorg/aspectj/weaver/World;)Lorg/aspectj/weaver/ResolvedType;
            astore 4 /* declaringTypeForResolution */
         5: .line 345
      StackMap locals:
      StackMap stack:
            new org.aspectj.weaver.IntMap
            dup
            aload 3 /* formalParameters */
            arraylength
            invokespecial org.aspectj.weaver.IntMap.<init>:(I)V
            astore 5 /* arity */
        start local 5 // org.aspectj.weaver.IntMap arity
         6: .line 346
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         7: goto 10
         8: .line 347
      StackMap locals: org.aspectj.weaver.IntMap int
      StackMap stack:
            aload 5 /* arity */
            iload 6 /* i */
            iload 6 /* i */
            invokevirtual org.aspectj.weaver.IntMap.put:(II)V
         9: .line 346
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 6 /* i */
            aload 3 /* formalParameters */
            arraylength
            if_icmplt 8
        end local 6 // int i
        11: .line 349
            aload 1 /* pc */
            aload 4 /* declaringTypeForResolution */
            aload 4 /* declaringTypeForResolution */
            aload 5 /* arity */
            invokevirtual org.aspectj.weaver.patterns.Pointcut.concretize:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/IntMap;)Lorg/aspectj/weaver/patterns/Pointcut;
            areturn
        end local 5 // org.aspectj.weaver.IntMap arity
        end local 4 // org.aspectj.weaver.ResolvedType declaringTypeForResolution
        end local 3 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
        end local 2 // java.lang.Class inScope
        end local 1 // org.aspectj.weaver.patterns.Pointcut pc
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   12     0                        this  Lorg/aspectj/weaver/tools/PointcutParser;
            0   12     1                          pc  Lorg/aspectj/weaver/patterns/Pointcut;
            0   12     2                     inScope  Ljava/lang/Class<*>;
            0   12     3            formalParameters  [Lorg/aspectj/weaver/tools/PointcutParameter;
            1   12     4  declaringTypeForResolution  Lorg/aspectj/weaver/ResolvedType;
            6   12     5                       arity  Lorg/aspectj/weaver/IntMap;
            7   11     6                           i  I
    Signature: (Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/Class<*>;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/Pointcut;
    MethodParameters:
                  Name  Flags
      pc                
      inScope           
      formalParameters  

  public org.aspectj.weaver.tools.TypePatternMatcher parseTypePattern(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/aspectj/weaver/tools/TypePatternMatcher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.lang.String typePattern
         0: .line 361
            new org.aspectj.weaver.patterns.PatternParser
            dup
            aload 1 /* typePattern */
            invokespecial org.aspectj.weaver.patterns.PatternParser.<init>:(Ljava/lang/String;)V
            invokevirtual org.aspectj.weaver.patterns.PatternParser.parseTypePattern:()Lorg/aspectj/weaver/patterns/TypePattern;
            astore 2 /* tp */
        start local 2 // org.aspectj.weaver.patterns.TypePattern tp
         1: .line 362
            aload 2 /* tp */
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.world:Lorg/aspectj/weaver/reflect/ReflectionWorld;
            invokevirtual org.aspectj.weaver.patterns.TypePattern.resolve:(Lorg/aspectj/weaver/World;)V
         2: .line 363
            new org.aspectj.weaver.internal.tools.TypePatternMatcherImpl
            dup
            aload 2 /* tp */
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.world:Lorg/aspectj/weaver/reflect/ReflectionWorld;
            invokespecial org.aspectj.weaver.internal.tools.TypePatternMatcherImpl.<init>:(Lorg/aspectj/weaver/patterns/TypePattern;Lorg/aspectj/weaver/World;)V
         3: areturn
        end local 2 // org.aspectj.weaver.patterns.TypePattern tp
         4: .line 364
      StackMap locals:
      StackMap stack: org.aspectj.weaver.patterns.ParserException
            astore 2 /* pEx */
        start local 2 // org.aspectj.weaver.patterns.ParserException pEx
         5: .line 365
            new java.lang.IllegalArgumentException
            dup
            aload 0 /* this */
            aload 1 /* typePattern */
            aload 2 /* pEx */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.buildUserMessageFromParserException:(Ljava/lang/String;Lorg/aspectj/weaver/patterns/ParserException;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // org.aspectj.weaver.patterns.ParserException pEx
         6: .line 366
      StackMap locals:
      StackMap stack: org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
            astore 2 /* rwEx */
        start local 2 // org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException rwEx
         7: .line 367
            new java.lang.IllegalArgumentException
            dup
            aload 2 /* rwEx */
            invokevirtual org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException.getMessage:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException rwEx
        end local 1 // java.lang.String typePattern
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lorg/aspectj/weaver/tools/PointcutParser;
            0    8     1  typePattern  Ljava/lang/String;
            1    4     2           tp  Lorg/aspectj/weaver/patterns/TypePattern;
            5    6     2          pEx  Lorg/aspectj/weaver/patterns/ParserException;
            7    8     2         rwEx  Lorg/aspectj/weaver/reflect/ReflectionWorld$ReflectionWorldException;
      Exception table:
        from    to  target  type
           0     3       4  Class org.aspectj.weaver.patterns.ParserException
           0     3       6  Class org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
    Exceptions:
      throws java.lang.IllegalArgumentException
    MethodParameters:
             Name  Flags
      typePattern  

  private org.aspectj.weaver.World getWorld();
    descriptor: ()Lorg/aspectj/weaver/World;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
         0: .line 372
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.world:Lorg/aspectj/weaver/reflect/ReflectionWorld;
            areturn
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/tools/PointcutParser;

  java.util.Set<org.aspectj.weaver.tools.PointcutPrimitive> getSupportedPrimitives();
    descriptor: ()Ljava/util/Set;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
         0: .line 377
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            areturn
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/tools/PointcutParser;
    Signature: ()Ljava/util/Set<Lorg/aspectj/weaver/tools/PointcutPrimitive;>;

  org.aspectj.bridge.IMessageHandler setCustomMessageHandler(org.aspectj.bridge.IMessageHandler);
    descriptor: (Lorg/aspectj/bridge/IMessageHandler;)Lorg/aspectj/bridge/IMessageHandler;
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // org.aspectj.bridge.IMessageHandler aHandler
         0: .line 382
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            invokevirtual org.aspectj.weaver.World.getMessageHandler:()Lorg/aspectj/bridge/IMessageHandler;
            astore 2 /* current */
        start local 2 // org.aspectj.bridge.IMessageHandler current
         1: .line 383
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            aload 1 /* aHandler */
            invokevirtual org.aspectj.weaver.World.setMessageHandler:(Lorg/aspectj/bridge/IMessageHandler;)V
         2: .line 384
            aload 2 /* current */
            areturn
        end local 2 // org.aspectj.bridge.IMessageHandler current
        end local 1 // org.aspectj.bridge.IMessageHandler aHandler
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/aspectj/weaver/tools/PointcutParser;
            0    3     1  aHandler  Lorg/aspectj/bridge/IMessageHandler;
            1    3     2   current  Lorg/aspectj/bridge/IMessageHandler;
    MethodParameters:
          Name  Flags
      aHandler  

  private org.aspectj.weaver.patterns.IScope buildResolutionScope(java.lang.Class<?>, org.aspectj.weaver.tools.PointcutParameter[]);
    descriptor: (Ljava/lang/Class;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/IScope;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=3
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.lang.Class inScope
        start local 2 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
         0: .line 388
            aload 2 /* formalParameters */
            ifnonnull 2
         1: .line 389
            iconst_0
            anewarray org.aspectj.weaver.tools.PointcutParameter
            astore 2 /* formalParameters */
         2: .line 391
      StackMap locals:
      StackMap stack:
            aload 2 /* formalParameters */
            arraylength
            anewarray org.aspectj.weaver.patterns.FormalBinding
            astore 3 /* formalBindings */
        start local 3 // org.aspectj.weaver.patterns.FormalBinding[] formalBindings
         3: .line 392
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 393
      StackMap locals: org.aspectj.weaver.patterns.FormalBinding[] int
      StackMap stack:
            aload 3 /* formalBindings */
            iload 4 /* i */
            new org.aspectj.weaver.patterns.FormalBinding
            dup
            aload 0 /* this */
            aload 2 /* formalParameters */
            iload 4 /* i */
            aaload
            invokeinterface org.aspectj.weaver.tools.PointcutParameter.getType:()Ljava/lang/Class;
            invokevirtual org.aspectj.weaver.tools.PointcutParser.toUnresolvedType:(Ljava/lang/Class;)Lorg/aspectj/weaver/UnresolvedType;
            aload 2 /* formalParameters */
            iload 4 /* i */
            aaload
            invokeinterface org.aspectj.weaver.tools.PointcutParameter.getName:()Ljava/lang/String;
            iload 4 /* i */
            invokespecial org.aspectj.weaver.patterns.FormalBinding.<init>:(Lorg/aspectj/weaver/UnresolvedType;Ljava/lang/String;I)V
            aastore
         6: .line 392
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            aload 3 /* formalBindings */
            arraylength
            if_icmplt 5
        end local 4 // int i
         8: .line 395
            aload 1 /* inScope */
            ifnonnull 10
         9: .line 396
            new org.aspectj.weaver.patterns.SimpleScope
            dup
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            aload 3 /* formalBindings */
            invokespecial org.aspectj.weaver.patterns.SimpleScope.<init>:(Lorg/aspectj/weaver/World;[Lorg/aspectj/weaver/patterns/FormalBinding;)V
            areturn
        10: .line 398
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.getWorld:()Lorg/aspectj/weaver/World;
            aload 1 /* inScope */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.aspectj.weaver.World.resolve:(Ljava/lang/String;)Lorg/aspectj/weaver/ResolvedType;
            astore 4 /* inType */
        start local 4 // org.aspectj.weaver.ResolvedType inType
        11: .line 399
            new org.aspectj.weaver.tools.PointcutParser$1
            dup
            aload 0 /* this */
            invokespecial org.aspectj.weaver.tools.PointcutParser$1.<init>:(Lorg/aspectj/weaver/tools/PointcutParser;)V
            astore 5 /* sourceContext */
        start local 5 // org.aspectj.weaver.ISourceContext sourceContext
        12: .line 415
            new org.aspectj.weaver.BindingScope
            dup
            aload 4 /* inType */
            aload 5 /* sourceContext */
            aload 3 /* formalBindings */
            invokespecial org.aspectj.weaver.BindingScope.<init>:(Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ISourceContext;[Lorg/aspectj/weaver/patterns/FormalBinding;)V
            areturn
        end local 5 // org.aspectj.weaver.ISourceContext sourceContext
        end local 4 // org.aspectj.weaver.ResolvedType inType
        end local 3 // org.aspectj.weaver.patterns.FormalBinding[] formalBindings
        end local 2 // org.aspectj.weaver.tools.PointcutParameter[] formalParameters
        end local 1 // java.lang.Class inScope
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   13     0              this  Lorg/aspectj/weaver/tools/PointcutParser;
            0   13     1           inScope  Ljava/lang/Class<*>;
            0   13     2  formalParameters  [Lorg/aspectj/weaver/tools/PointcutParameter;
            3   13     3    formalBindings  [Lorg/aspectj/weaver/patterns/FormalBinding;
            4    8     4                 i  I
           11   13     4            inType  Lorg/aspectj/weaver/ResolvedType;
           12   13     5     sourceContext  Lorg/aspectj/weaver/ISourceContext;
    Signature: (Ljava/lang/Class<*>;[Lorg/aspectj/weaver/tools/PointcutParameter;)Lorg/aspectj/weaver/patterns/IScope;
    MethodParameters:
                  Name  Flags
      inScope           
      formalParameters  

  private org.aspectj.weaver.UnresolvedType toUnresolvedType(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Lorg/aspectj/weaver/UnresolvedType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.lang.Class clazz
         0: .line 420
            aload 1 /* clazz */
            invokevirtual java.lang.Class.isArray:()Z
            ifeq 2
         1: .line 421
            aload 1 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokestatic org.aspectj.weaver.UnresolvedType.forSignature:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            areturn
         2: .line 423
      StackMap locals:
      StackMap stack:
            aload 1 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic org.aspectj.weaver.UnresolvedType.forName:(Ljava/lang/String;)Lorg/aspectj/weaver/UnresolvedType;
            areturn
        end local 1 // java.lang.Class clazz
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/aspectj/weaver/tools/PointcutParser;
            0    3     1  clazz  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Lorg/aspectj/weaver/UnresolvedType;
    MethodParameters:
       Name  Flags
      clazz  

  private void validateAgainstSupportedPrimitives(org.aspectj.weaver.patterns.Pointcut, java.lang.String);
    descriptor: (Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // org.aspectj.weaver.patterns.Pointcut pc
        start local 2 // java.lang.String expression
         0: .line 428
            aload 1 /* pc */
            invokevirtual org.aspectj.weaver.patterns.Pointcut.getPointcutKind:()B
            tableswitch { // 1 - 22
                    1: 13
                    2: 25
                    3: 20
                    4: 4
                    5: 1
                    6: 17
                    7: 15
                    8: 42
                    9: 12
                   10: 6
                   11: 45
                   12: 27
                   13: 10
                   14: 12
                   15: 12
                   16: 36
                   17: 38
                   18: 40
                   19: 29
                   20: 45
                   21: 34
                   22: 44
              default: 45
          }
         1: .line 430
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.AndPointcut
            invokevirtual org.aspectj.weaver.patterns.AndPointcut.getLeft:()Lorg/aspectj/weaver/patterns/Pointcut;
            aload 2 /* expression */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
         2: .line 431
            aload 0 /* this */
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.AndPointcut
            invokevirtual org.aspectj.weaver.patterns.AndPointcut.getRight:()Lorg/aspectj/weaver/patterns/Pointcut;
            aload 2 /* expression */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
         3: .line 432
            goto 46
         4: .line 434
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.ARGS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
         5: .line 435
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.ARGS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
         6: .line 439
      StackMap locals:
      StackMap stack:
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.CflowPointcut
            astore 3 /* cfp */
        start local 3 // org.aspectj.weaver.patterns.CflowPointcut cfp
         7: .line 440
            aload 3 /* cfp */
            invokevirtual org.aspectj.weaver.patterns.CflowPointcut.isCflowBelow:()Z
            ifeq 9
         8: .line 441
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CFLOW_BELOW:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
         9: .line 443
      StackMap locals: org.aspectj.weaver.patterns.CflowPointcut
      StackMap stack:
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CFLOW:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        end local 3 // org.aspectj.weaver.patterns.CflowPointcut cfp
        10: .line 446
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.HANDLER:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        11: .line 447
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.HANDLER:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        12: .line 453
      StackMap locals:
      StackMap stack:
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.IF:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        13: .line 455
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.KindedPointcut
            aload 2 /* expression */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.validateKindedPointcut:(Lorg/aspectj/weaver/patterns/KindedPointcut;Ljava/lang/String;)V
        14: .line 456
            goto 46
        15: .line 458
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.NotPointcut
            invokevirtual org.aspectj.weaver.patterns.NotPointcut.getNegatedPointcut:()Lorg/aspectj/weaver/patterns/Pointcut;
            aload 2 /* expression */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
        16: .line 459
            goto 46
        17: .line 461
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.OrPointcut
            invokevirtual org.aspectj.weaver.patterns.OrPointcut.getLeft:()Lorg/aspectj/weaver/patterns/Pointcut;
            aload 2 /* expression */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
        18: .line 462
            aload 0 /* this */
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.OrPointcut
            invokevirtual org.aspectj.weaver.patterns.OrPointcut.getRight:()Lorg/aspectj/weaver/patterns/Pointcut;
            aload 2 /* expression */
            invokevirtual org.aspectj.weaver.tools.PointcutParser.validateAgainstSupportedPrimitives:(Lorg/aspectj/weaver/patterns/Pointcut;Ljava/lang/String;)V
        19: .line 463
            goto 46
        20: .line 465
      StackMap locals:
      StackMap stack:
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.ThisOrTargetPointcut
            invokevirtual org.aspectj.weaver.patterns.ThisOrTargetPointcut.isThis:()Z
            istore 4 /* isThis */
        start local 4 // boolean isThis
        21: .line 466
            iload 4 /* isThis */
            ifeq 23
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.THIS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 23
        22: .line 467
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.THIS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        23: .line 468
      StackMap locals: org.aspectj.weaver.tools.PointcutParser org.aspectj.weaver.patterns.Pointcut java.lang.String top int
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.TARGET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        24: .line 469
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.TARGET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        end local 4 // boolean isThis
        25: .line 473
      StackMap locals: org.aspectj.weaver.tools.PointcutParser org.aspectj.weaver.patterns.Pointcut java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.WITHIN:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        26: .line 474
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.WITHIN:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        27: .line 478
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.WITHIN_CODE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        28: .line 479
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.WITHIN_CODE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        29: .line 483
      StackMap locals:
      StackMap stack:
            aload 1 /* pc */
            checkcast org.aspectj.weaver.patterns.ThisOrTargetAnnotationPointcut
            invokevirtual org.aspectj.weaver.patterns.ThisOrTargetAnnotationPointcut.isThis:()Z
            istore 4 /* isThis */
        start local 4 // boolean isThis
        30: .line 484
            iload 4 /* isThis */
            ifeq 32
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_THIS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 32
        31: .line 485
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_THIS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        32: .line 486
      StackMap locals: org.aspectj.weaver.tools.PointcutParser org.aspectj.weaver.patterns.Pointcut java.lang.String top int
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_TARGET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        33: .line 487
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_TARGET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        end local 4 // boolean isThis
        34: .line 491
      StackMap locals: org.aspectj.weaver.tools.PointcutParser org.aspectj.weaver.patterns.Pointcut java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_ARGS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        35: .line 492
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_ARGS:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        36: .line 496
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_ANNOTATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        37: .line 497
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_ANNOTATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        38: .line 501
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_WITHIN:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        39: .line 502
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_WITHIN:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        40: .line 506
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_WITHINCODE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        41: .line 507
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.AT_WITHINCODE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        42: .line 511
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.REFERENCE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 46
        43: .line 512
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.REFERENCE:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        44: .line 517
      StackMap locals:
      StackMap stack:
            goto 46
        45: .line 520
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown pointcut kind: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* pc */
            invokevirtual org.aspectj.weaver.patterns.Pointcut.getPointcutKind:()B
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        46: .line 522
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String expression
        end local 1 // org.aspectj.weaver.patterns.Pointcut pc
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   47     0        this  Lorg/aspectj/weaver/tools/PointcutParser;
            0   47     1          pc  Lorg/aspectj/weaver/patterns/Pointcut;
            0   47     2  expression  Ljava/lang/String;
            7   10     3         cfp  Lorg/aspectj/weaver/patterns/CflowPointcut;
           21   25     4      isThis  Z
           30   34     4      isThis  Z
    MethodParameters:
            Name  Flags
      pc          
      expression  

  private void validateKindedPointcut(org.aspectj.weaver.patterns.KindedPointcut, java.lang.String);
    descriptor: (Lorg/aspectj/weaver/patterns/KindedPointcut;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // org.aspectj.weaver.patterns.KindedPointcut pc
        start local 2 // java.lang.String expression
         0: .line 525
            aload 1 /* pc */
            invokevirtual org.aspectj.weaver.patterns.KindedPointcut.getKind:()Lorg/aspectj/weaver/Shadow$Kind;
            astore 3 /* kind */
        start local 3 // org.aspectj.weaver.Shadow$Kind kind
         1: .line 526
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.MethodCall:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpeq 2
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.ConstructorCall:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 4
         2: .line 527
      StackMap locals: org.aspectj.weaver.Shadow$Kind
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CALL:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
         3: .line 528
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.CALL:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
         4: .line 530
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.MethodExecution:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpeq 5
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.ConstructorExecution:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 7
         5: .line 531
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.EXECUTION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
         6: .line 532
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.EXECUTION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
         7: .line 534
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.AdviceExecution:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 10
         8: .line 535
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.ADVICE_EXECUTION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
         9: .line 536
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.ADVICE_EXECUTION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        10: .line 538
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.FieldGet:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 13
        11: .line 539
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.GET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
        12: .line 540
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.GET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        13: .line 542
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.FieldSet:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 16
        14: .line 543
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.SET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
        15: .line 544
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.SET:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        16: .line 546
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.Initialization:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 19
        17: .line 547
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
        18: .line 548
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        19: .line 550
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.PreInitialization:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 22
        20: .line 551
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.PRE_INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
        21: .line 552
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.PRE_INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        22: .line 554
      StackMap locals:
      StackMap stack:
            aload 3 /* kind */
            getstatic org.aspectj.weaver.Shadow.StaticInitialization:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 25
        23: .line 555
            aload 0 /* this */
            getfield org.aspectj.weaver.tools.PointcutParser.supportedPrimitives:Ljava/util/Set;
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.STATIC_INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
        24: .line 556
            new org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException
            dup
            aload 2 /* expression */
            getstatic org.aspectj.weaver.tools.PointcutPrimitive.STATIC_INITIALIZATION:Lorg/aspectj/weaver/tools/PointcutPrimitive;
            invokespecial org.aspectj.weaver.tools.UnsupportedPointcutPrimitiveException.<init>:(Ljava/lang/String;Lorg/aspectj/weaver/tools/PointcutPrimitive;)V
            athrow
        25: .line 559
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.aspectj.weaver.Shadow$Kind kind
        end local 2 // java.lang.String expression
        end local 1 // org.aspectj.weaver.patterns.KindedPointcut pc
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   26     0        this  Lorg/aspectj/weaver/tools/PointcutParser;
            0   26     1          pc  Lorg/aspectj/weaver/patterns/KindedPointcut;
            0   26     2  expression  Ljava/lang/String;
            1   26     3        kind  Lorg/aspectj/weaver/Shadow$Kind;
    MethodParameters:
            Name  Flags
      pc          
      expression  

  private java.lang.String buildUserMessageFromParserException(java.lang.String, org.aspectj.weaver.patterns.ParserException);
    descriptor: (Ljava/lang/String;Lorg/aspectj/weaver/patterns/ParserException;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // org.aspectj.weaver.tools.PointcutParser this
        start local 1 // java.lang.String pc
        start local 2 // org.aspectj.weaver.patterns.ParserException ex
         0: .line 562
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 3 /* msg */
        start local 3 // java.lang.StringBuffer msg
         1: .line 563
            aload 3 /* msg */
            ldc "Pointcut is not well-formed: expecting '"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         2: .line 564
            aload 3 /* msg */
            aload 2 /* ex */
            invokevirtual org.aspectj.weaver.patterns.ParserException.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         3: .line 565
            aload 3 /* msg */
            ldc "'"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         4: .line 566
            aload 2 /* ex */
            invokevirtual org.aspectj.weaver.patterns.ParserException.getLocation:()Lorg/aspectj/weaver/IHasPosition;
            astore 4 /* location */
        start local 4 // org.aspectj.weaver.IHasPosition location
         5: .line 567
            aload 3 /* msg */
            ldc " at character position "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 568
            aload 3 /* msg */
            aload 4 /* location */
            invokeinterface org.aspectj.weaver.IHasPosition.getStart:()I
            invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
            pop
         7: .line 569
            aload 3 /* msg */
            ldc "\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         8: .line 570
            aload 3 /* msg */
            aload 1 /* pc */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         9: .line 571
            aload 3 /* msg */
            ldc "\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        10: .line 572
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        11: goto 14
        12: .line 573
      StackMap locals: java.lang.StringBuffer org.aspectj.weaver.IHasPosition int
      StackMap stack:
            aload 3 /* msg */
            ldc " "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        13: .line 572
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 5 /* i */
            aload 4 /* location */
            invokeinterface org.aspectj.weaver.IHasPosition.getStart:()I
            if_icmplt 12
        end local 5 // int i
        15: .line 575
            aload 4 /* location */
            invokeinterface org.aspectj.weaver.IHasPosition.getStart:()I
            istore 5 /* j */
        start local 5 // int j
        16: goto 19
        17: .line 576
      StackMap locals:
      StackMap stack:
            aload 3 /* msg */
            ldc "^"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        18: .line 575
            iinc 5 /* j */ 1
      StackMap locals:
      StackMap stack:
        19: iload 5 /* j */
            aload 4 /* location */
            invokeinterface org.aspectj.weaver.IHasPosition.getEnd:()I
            if_icmple 17
        end local 5 // int j
        20: .line 578
            aload 3 /* msg */
            ldc "\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        21: .line 579
            aload 3 /* msg */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 4 // org.aspectj.weaver.IHasPosition location
        end local 3 // java.lang.StringBuffer msg
        end local 2 // org.aspectj.weaver.patterns.ParserException ex
        end local 1 // java.lang.String pc
        end local 0 // org.aspectj.weaver.tools.PointcutParser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   22     0      this  Lorg/aspectj/weaver/tools/PointcutParser;
            0   22     1        pc  Ljava/lang/String;
            0   22     2        ex  Lorg/aspectj/weaver/patterns/ParserException;
            1   22     3       msg  Ljava/lang/StringBuffer;
            5   22     4  location  Lorg/aspectj/weaver/IHasPosition;
           11   15     5         i  I
           16   20     5         j  I
    MethodParameters:
      Name  Flags
      pc    
      ex    
}
SourceFile: "PointcutParser.java"
NestMembers:
  org.aspectj.weaver.tools.PointcutParser$1
InnerClasses:
  public final Kind = org.aspectj.weaver.Shadow$Kind of org.aspectj.weaver.Shadow
  public ReflectionWorldException = org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException of org.aspectj.weaver.reflect.ReflectionWorld
  org.aspectj.weaver.tools.PointcutParser$1