public class org.eclipse.jdt.internal.core.search.BasicSearchEngine
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.core.search.BasicSearchEngine
  super_class: java.lang.Object
{
  private org.eclipse.jdt.internal.compiler.parser.Parser parser;
    descriptor: Lorg/eclipse/jdt/internal/compiler/parser/Parser;
    flags: (0x0002) ACC_PRIVATE

  private org.eclipse.jdt.internal.compiler.impl.CompilerOptions compilerOptions;
    descriptor: Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
    flags: (0x0002) ACC_PRIVATE

  private org.eclipse.jdt.core.ICompilationUnit[] workingCopies;
    descriptor: [Lorg/eclipse/jdt/core/ICompilationUnit;
    flags: (0x0002) ACC_PRIVATE

  private org.eclipse.jdt.core.WorkingCopyOwner workingCopyOwner;
    descriptor: Lorg/eclipse/jdt/core/WorkingCopyOwner;
    flags: (0x0002) ACC_PRIVATE

  public static boolean VERBOSE;
    descriptor: Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 70
            iconst_0
            putstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
         0: .line 75
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 77
            return
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;

  public void <init>(org.eclipse.jdt.core.ICompilationUnit[]);
    descriptor: ([Lorg/eclipse/jdt/core/ICompilationUnit;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // org.eclipse.jdt.core.ICompilationUnit[] workingCopies
         0: .line 82
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 83
            aload 0 /* this */
            aload 1 /* workingCopies */
            putfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.workingCopies:[Lorg/eclipse/jdt/core/ICompilationUnit;
         2: .line 84
            return
        end local 1 // org.eclipse.jdt.core.ICompilationUnit[] workingCopies
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0    3     1  workingCopies  [Lorg/eclipse/jdt/core/ICompilationUnit;
    MethodParameters:
               Name  Flags
      workingCopies  

  char convertTypeKind(int);
    descriptor: (I)C
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // int typeDeclarationKind
         0: .line 87
            iload 1 /* typeDeclarationKind */
            tableswitch { // 1 - 4
                    1: 1
                    2: 2
                    3: 3
                    4: 4
              default: 5
          }
         1: .line 88
      StackMap locals:
      StackMap stack:
            bipush 67
            ireturn
         2: .line 89
      StackMap locals:
      StackMap stack:
            bipush 73
            ireturn
         3: .line 90
      StackMap locals:
      StackMap stack:
            bipush 69
            ireturn
         4: .line 91
      StackMap locals:
      StackMap stack:
            bipush 65
            ireturn
         5: .line 92
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int typeDeclarationKind
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    6     0                 this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0    6     1  typeDeclarationKind  I
    MethodParameters:
                     Name  Flags
      typeDeclarationKind  

  public void <init>(org.eclipse.jdt.core.WorkingCopyOwner);
    descriptor: (Lorg/eclipse/jdt/core/WorkingCopyOwner;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // org.eclipse.jdt.core.WorkingCopyOwner workingCopyOwner
         0: .line 98
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 99
            aload 0 /* this */
            aload 1 /* workingCopyOwner */
            putfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.workingCopyOwner:Lorg/eclipse/jdt/core/WorkingCopyOwner;
         2: .line 100
            return
        end local 1 // org.eclipse.jdt.core.WorkingCopyOwner workingCopyOwner
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0    3     1  workingCopyOwner  Lorg/eclipse/jdt/core/WorkingCopyOwner;
    MethodParameters:
                  Name  Flags
      workingCopyOwner  

  public static org.eclipse.jdt.core.search.IJavaSearchScope createHierarchyScope(org.eclipse.jdt.core.IType);
    descriptor: (Lorg/eclipse/jdt/core/IType;)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.IType type
         0: .line 106
            aload 0 /* type */
            getstatic org.eclipse.jdt.internal.core.DefaultWorkingCopyOwner.PRIMARY:Lorg/eclipse/jdt/internal/core/DefaultWorkingCopyOwner;
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.createHierarchyScope:(Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/core/WorkingCopyOwner;)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            areturn
        end local 0 // org.eclipse.jdt.core.IType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  type  Lorg/eclipse/jdt/core/IType;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
      Name  Flags
      type  

  public static org.eclipse.jdt.core.search.IJavaSearchScope createHierarchyScope(org.eclipse.jdt.core.IType, org.eclipse.jdt.core.WorkingCopyOwner);
    descriptor: (Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/core/WorkingCopyOwner;)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.IType type
        start local 1 // org.eclipse.jdt.core.WorkingCopyOwner owner
         0: .line 113
            new org.eclipse.jdt.internal.core.search.HierarchyScope
            dup
            aload 0 /* type */
            aload 1 /* owner */
            invokespecial org.eclipse.jdt.internal.core.search.HierarchyScope.<init>:(Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/core/WorkingCopyOwner;)V
            areturn
        end local 1 // org.eclipse.jdt.core.WorkingCopyOwner owner
        end local 0 // org.eclipse.jdt.core.IType type
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   type  Lorg/eclipse/jdt/core/IType;
            0    1     1  owner  Lorg/eclipse/jdt/core/WorkingCopyOwner;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
       Name  Flags
      type   
      owner  

  public static org.eclipse.jdt.core.search.IJavaSearchScope createStrictHierarchyScope(org.eclipse.jdt.core.IJavaProject, org.eclipse.jdt.core.IType, boolean, boolean, org.eclipse.jdt.core.WorkingCopyOwner);
    descriptor: (Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/IType;ZZLorg/eclipse/jdt/core/WorkingCopyOwner;)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // org.eclipse.jdt.core.IJavaProject project
        start local 1 // org.eclipse.jdt.core.IType type
        start local 2 // boolean onlySubtypes
        start local 3 // boolean includeFocusType
        start local 4 // org.eclipse.jdt.core.WorkingCopyOwner owner
         0: .line 120
            new org.eclipse.jdt.internal.core.search.HierarchyScope
            dup
            aload 0 /* project */
            aload 1 /* type */
            aload 4 /* owner */
            iload 2 /* onlySubtypes */
            iconst_1
            iload 3 /* includeFocusType */
            invokespecial org.eclipse.jdt.internal.core.search.HierarchyScope.<init>:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/core/WorkingCopyOwner;ZZZ)V
            areturn
        end local 4 // org.eclipse.jdt.core.WorkingCopyOwner owner
        end local 3 // boolean includeFocusType
        end local 2 // boolean onlySubtypes
        end local 1 // org.eclipse.jdt.core.IType type
        end local 0 // org.eclipse.jdt.core.IJavaProject project
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0           project  Lorg/eclipse/jdt/core/IJavaProject;
            0    1     1              type  Lorg/eclipse/jdt/core/IType;
            0    1     2      onlySubtypes  Z
            0    1     3  includeFocusType  Z
            0    1     4             owner  Lorg/eclipse/jdt/core/WorkingCopyOwner;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                  Name  Flags
      project           
      type              
      onlySubtypes      
      includeFocusType  
      owner             

  public static org.eclipse.jdt.core.search.IJavaSearchScope createJavaSearchScope(org.eclipse.jdt.core.IJavaElement[]);
    descriptor: ([Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.IJavaElement[] elements
         0: .line 127
            iconst_0
            aload 0 /* elements */
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.createJavaSearchScope:(Z[Lorg/eclipse/jdt/core/IJavaElement;Z)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            areturn
        end local 0 // org.eclipse.jdt.core.IJavaElement[] elements
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  elements  [Lorg/eclipse/jdt/core/IJavaElement;
    MethodParameters:
          Name  Flags
      elements  

  public static org.eclipse.jdt.core.search.IJavaSearchScope createJavaSearchScope(boolean, org.eclipse.jdt.core.IJavaElement[]);
    descriptor: (Z[Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // boolean excludeTestCode
        start local 1 // org.eclipse.jdt.core.IJavaElement[] elements
         0: .line 131
            iload 0 /* excludeTestCode */
            aload 1 /* elements */
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.createJavaSearchScope:(Z[Lorg/eclipse/jdt/core/IJavaElement;Z)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            areturn
        end local 1 // org.eclipse.jdt.core.IJavaElement[] elements
        end local 0 // boolean excludeTestCode
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0  excludeTestCode  Z
            0    1     1         elements  [Lorg/eclipse/jdt/core/IJavaElement;
    MethodParameters:
                 Name  Flags
      excludeTestCode  
      elements         

  public static org.eclipse.jdt.core.search.IJavaSearchScope createJavaSearchScope(org.eclipse.jdt.core.IJavaElement[], boolean);
    descriptor: ([Lorg/eclipse/jdt/core/IJavaElement;Z)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.IJavaElement[] elements
        start local 1 // boolean includeReferencedProjects
         0: .line 135
            iconst_0
            aload 0 /* elements */
            iload 1 /* includeReferencedProjects */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.createJavaSearchScope:(Z[Lorg/eclipse/jdt/core/IJavaElement;Z)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            areturn
        end local 1 // boolean includeReferencedProjects
        end local 0 // org.eclipse.jdt.core.IJavaElement[] elements
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0    1     0                   elements  [Lorg/eclipse/jdt/core/IJavaElement;
            0    1     1  includeReferencedProjects  Z
    MethodParameters:
                           Name  Flags
      elements                   
      includeReferencedProjects  

  public static org.eclipse.jdt.core.search.IJavaSearchScope createJavaSearchScope(boolean, org.eclipse.jdt.core.IJavaElement[], boolean);
    descriptor: (Z[Lorg/eclipse/jdt/core/IJavaElement;Z)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // boolean excludeTestCode
        start local 1 // org.eclipse.jdt.core.IJavaElement[] elements
        start local 2 // boolean includeReferencedProjects
         0: .line 141
            bipush 7
            istore 3 /* includeMask */
        start local 3 // int includeMask
         1: .line 142
            iload 2 /* includeReferencedProjects */
            ifeq 3
         2: .line 143
            iload 3 /* includeMask */
            bipush 8
            ior
            istore 3 /* includeMask */
         3: .line 145
      StackMap locals: int
      StackMap stack:
            iload 0 /* excludeTestCode */
            aload 1 /* elements */
            iload 3 /* includeMask */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.createJavaSearchScope:(Z[Lorg/eclipse/jdt/core/IJavaElement;I)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            areturn
        end local 3 // int includeMask
        end local 2 // boolean includeReferencedProjects
        end local 1 // org.eclipse.jdt.core.IJavaElement[] elements
        end local 0 // boolean excludeTestCode
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0    4     0            excludeTestCode  Z
            0    4     1                   elements  [Lorg/eclipse/jdt/core/IJavaElement;
            0    4     2  includeReferencedProjects  Z
            1    4     3                includeMask  I
    MethodParameters:
                           Name  Flags
      excludeTestCode            
      elements                   
      includeReferencedProjects  

  public static org.eclipse.jdt.core.search.IJavaSearchScope createJavaSearchScope(org.eclipse.jdt.core.IJavaElement[], int);
    descriptor: ([Lorg/eclipse/jdt/core/IJavaElement;I)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.IJavaElement[] elements
        start local 1 // int includeMask
         0: .line 149
            iconst_0
            aload 0 /* elements */
            iload 1 /* includeMask */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.createJavaSearchScope:(Z[Lorg/eclipse/jdt/core/IJavaElement;I)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            areturn
        end local 1 // int includeMask
        end local 0 // org.eclipse.jdt.core.IJavaElement[] elements
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0     elements  [Lorg/eclipse/jdt/core/IJavaElement;
            0    1     1  includeMask  I
    MethodParameters:
             Name  Flags
      elements     
      includeMask  

  public static org.eclipse.jdt.core.search.IJavaSearchScope createJavaSearchScope(boolean, org.eclipse.jdt.core.IJavaElement[], int);
    descriptor: (Z[Lorg/eclipse/jdt/core/IJavaElement;I)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // boolean excludeTestCode
        start local 1 // org.eclipse.jdt.core.IJavaElement[] elements
        start local 2 // int includeMask
         0: .line 155
            new java.util.HashSet
            dup
            iconst_2
            invokespecial java.util.HashSet.<init>:(I)V
            astore 3 /* projectsToBeAdded */
        start local 3 // java.util.HashSet projectsToBeAdded
         1: .line 156
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: aload 1 /* elements */
            arraylength
            istore 5 /* length */
        start local 5 // int length
         3: goto 8
         4: .line 157
      StackMap locals: java.util.HashSet int int
      StackMap stack:
            aload 1 /* elements */
            iload 4 /* i */
            aaload
            astore 6 /* element */
        start local 6 // org.eclipse.jdt.core.IJavaElement element
         5: .line 158
            aload 6 /* element */
            instanceof org.eclipse.jdt.internal.core.JavaProject
            ifeq 7
         6: .line 159
            aload 3 /* projectsToBeAdded */
            aload 6 /* element */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // org.eclipse.jdt.core.IJavaElement element
         7: .line 156
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            iload 5 /* length */
            if_icmplt 4
        end local 5 // int length
        end local 4 // int i
         9: .line 162
            new org.eclipse.jdt.internal.core.search.JavaSearchScope
            dup
            iload 0 /* excludeTestCode */
            invokespecial org.eclipse.jdt.internal.core.search.JavaSearchScope.<init>:(Z)V
            astore 4 /* scope */
        start local 4 // org.eclipse.jdt.internal.core.search.JavaSearchScope scope
        10: .line 163
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        11: aload 1 /* elements */
            arraylength
            istore 6 /* length */
        start local 6 // int length
        12: goto 22
        13: .line 164
      StackMap locals: int org.eclipse.jdt.core.IJavaElement[] int java.util.HashSet org.eclipse.jdt.internal.core.search.JavaSearchScope int int
      StackMap stack:
            aload 1 /* elements */
            iload 5 /* i */
            aaload
            astore 7 /* element */
        start local 7 // org.eclipse.jdt.core.IJavaElement element
        14: .line 165
            aload 7 /* element */
            ifnull 21
        15: .line 167
            aload 3 /* projectsToBeAdded */
            aload 7 /* element */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 18
        16: .line 168
            aload 4 /* scope */
            aload 7 /* element */
            checkcast org.eclipse.jdt.internal.core.JavaProject
            iload 2 /* includeMask */
            aload 3 /* projectsToBeAdded */
            invokevirtual org.eclipse.jdt.internal.core.search.JavaSearchScope.add:(Lorg/eclipse/jdt/internal/core/JavaProject;ILjava/util/HashSet;)V
        17: .line 169
            goto 21
        18: .line 170
      StackMap locals: org.eclipse.jdt.core.IJavaElement
      StackMap stack:
            aload 4 /* scope */
            aload 7 /* element */
            invokevirtual org.eclipse.jdt.internal.core.search.JavaSearchScope.add:(Lorg/eclipse/jdt/core/IJavaElement;)V
        19: .line 172
            goto 21
      StackMap locals:
      StackMap stack: org.eclipse.jdt.core.JavaModelException
        20: pop
        end local 7 // org.eclipse.jdt.core.IJavaElement element
        21: .line 163
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 5 /* i */
            iload 6 /* length */
            if_icmplt 13
        end local 6 // int length
        end local 5 // int i
        23: .line 177
            aload 4 /* scope */
            areturn
        end local 4 // org.eclipse.jdt.internal.core.search.JavaSearchScope scope
        end local 3 // java.util.HashSet projectsToBeAdded
        end local 2 // int includeMask
        end local 1 // org.eclipse.jdt.core.IJavaElement[] elements
        end local 0 // boolean excludeTestCode
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   24     0    excludeTestCode  Z
            0   24     1           elements  [Lorg/eclipse/jdt/core/IJavaElement;
            0   24     2        includeMask  I
            1   24     3  projectsToBeAdded  Ljava/util/HashSet;
            2    9     4                  i  I
            3    9     5             length  I
            5    7     6            element  Lorg/eclipse/jdt/core/IJavaElement;
           10   24     4              scope  Lorg/eclipse/jdt/internal/core/search/JavaSearchScope;
           11   23     5                  i  I
           12   23     6             length  I
           14   21     7            element  Lorg/eclipse/jdt/core/IJavaElement;
      Exception table:
        from    to  target  type
          15    19      20  Class org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                 Name  Flags
      excludeTestCode  
      elements         
      includeMask      

  public static org.eclipse.jdt.core.search.TypeNameMatch createTypeNameMatch(org.eclipse.jdt.core.IType, int);
    descriptor: (Lorg/eclipse/jdt/core/IType;I)Lorg/eclipse/jdt/core/search/TypeNameMatch;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.IType type
        start local 1 // int modifiers
         0: .line 184
            new org.eclipse.jdt.internal.core.search.JavaSearchTypeNameMatch
            dup
            aload 0 /* type */
            iload 1 /* modifiers */
            invokespecial org.eclipse.jdt.internal.core.search.JavaSearchTypeNameMatch.<init>:(Lorg/eclipse/jdt/core/IType;I)V
            areturn
        end local 1 // int modifiers
        end local 0 // org.eclipse.jdt.core.IType type
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       type  Lorg/eclipse/jdt/core/IType;
            0    1     1  modifiers  I
    MethodParameters:
           Name  Flags
      type       
      modifiers  

  public static org.eclipse.jdt.core.search.MethodNameMatch createMethodNameMatch(org.eclipse.jdt.core.IMethod, int);
    descriptor: (Lorg/eclipse/jdt/core/IMethod;I)Lorg/eclipse/jdt/core/search/MethodNameMatch;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.IMethod method
        start local 1 // int modifiers
         0: .line 191
            new org.eclipse.jdt.internal.core.search.JavaSearchMethodNameMatch
            dup
            aload 0 /* method */
            iload 1 /* modifiers */
            invokespecial org.eclipse.jdt.internal.core.search.JavaSearchMethodNameMatch.<init>:(Lorg/eclipse/jdt/core/IMethod;I)V
            areturn
        end local 1 // int modifiers
        end local 0 // org.eclipse.jdt.core.IMethod method
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0     method  Lorg/eclipse/jdt/core/IMethod;
            0    1     1  modifiers  I
    MethodParameters:
           Name  Flags
      method     
      modifiers  

  public static org.eclipse.jdt.core.search.IJavaSearchScope createWorkspaceScope();
    descriptor: ()Lorg/eclipse/jdt/core/search/IJavaSearchScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 198
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getJavaModelManager:()Lorg/eclipse/jdt/internal/core/JavaModelManager;
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.getWorkspaceScope:()Lorg/eclipse/jdt/internal/core/search/JavaWorkspaceScope;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void findMatches(org.eclipse.jdt.core.search.SearchPattern, org.eclipse.jdt.core.search.SearchParticipant[], org.eclipse.jdt.core.search.IJavaSearchScope, org.eclipse.jdt.core.search.SearchRequestor, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: (Lorg/eclipse/jdt/core/search/SearchPattern;[Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=19, args_size=6
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // org.eclipse.jdt.core.search.SearchPattern pattern
        start local 2 // org.eclipse.jdt.core.search.SearchParticipant[] participants
        start local 3 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        start local 4 // org.eclipse.jdt.core.search.SearchRequestor requestor
        start local 5 // org.eclipse.core.runtime.IProgressMonitor monitor
         0: .line 211
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 3
         1: .line 212
            new java.lang.StringBuilder
            dup
            ldc "Searching for pattern: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* pattern */
            invokevirtual org.eclipse.jdt.core.search.SearchPattern.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         2: .line 213
            aload 3 /* scope */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         3: .line 215
      StackMap locals:
      StackMap stack:
            aload 2 /* participants */
            ifnonnull 9
         4: .line 216
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 5
            ldc "No participants => do nothing!"
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         5: .line 258
      StackMap locals:
      StackMap stack:
            aload 4 /* requestor */
            invokevirtual org.eclipse.jdt.core.search.SearchRequestor.endReporting:()V
         6: .line 259
            aload 5 /* monitor */
            ifnull 8
         7: .line 260
            aload 5 /* monitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
         8: .line 217
      StackMap locals:
      StackMap stack:
            return
         9: .line 221
      StackMap locals:
      StackMap stack:
            aload 2 /* participants */
            arraylength
            istore 6 /* length */
        start local 6 // int length
        10: .line 222
            aload 5 /* monitor */
            getstatic org.eclipse.jdt.internal.core.util.Messages.engine_searching:Ljava/lang/String;
            iload 6 /* length */
            invokestatic org.eclipse.core.runtime.SubMonitor.convert:(Lorg/eclipse/core/runtime/IProgressMonitor;Ljava/lang/String;I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 7 /* loopMonitor */
        start local 7 // org.eclipse.core.runtime.SubMonitor loopMonitor
        11: .line 223
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getIndexManager:()Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
            astore 8 /* indexManager */
        start local 8 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        12: .line 224
            aload 4 /* requestor */
            invokevirtual org.eclipse.jdt.core.search.SearchRequestor.beginReporting:()V
        13: .line 225
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        14: goto 47
        15: .line 226
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.core.search.SearchParticipant[] org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.core.search.SearchRequestor org.eclipse.core.runtime.IProgressMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager int
      StackMap stack:
            aload 7 /* loopMonitor */
            iconst_1
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
            bipush 100
            invokevirtual org.eclipse.core.runtime.SubMonitor.setWorkRemaining:(I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 10 /* iterationMonitor */
        start local 10 // org.eclipse.core.runtime.SubMonitor iterationMonitor
        16: .line 228
            aload 2 /* participants */
            iload 9 /* i */
            aaload
            astore 11 /* participant */
        start local 11 // org.eclipse.jdt.core.search.SearchParticipant participant
        17: .line 230
            aload 10 /* iterationMonitor */
            getstatic org.eclipse.jdt.internal.core.util.Messages.engine_searching_indexing:Ljava/lang/String;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 11 /* participant */
            invokevirtual org.eclipse.jdt.core.search.SearchParticipant.getDescription:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual org.eclipse.core.runtime.SubMonitor.subTask:(Ljava/lang/String;)V
        18: .line 231
            aload 11 /* participant */
            invokevirtual org.eclipse.jdt.core.search.SearchParticipant.beginSearching:()V
        19: .line 232
            aload 4 /* requestor */
            aload 11 /* participant */
            invokevirtual org.eclipse.jdt.core.search.SearchRequestor.enterParticipant:(Lorg/eclipse/jdt/core/search/SearchParticipant;)V
        20: .line 233
            new org.eclipse.jdt.internal.core.search.PathCollector
            dup
            invokespecial org.eclipse.jdt.internal.core.search.PathCollector.<init>:()V
            astore 12 /* pathCollector */
        start local 12 // org.eclipse.jdt.internal.core.search.PathCollector pathCollector
        21: .line 234
            aload 8 /* indexManager */
        22: .line 235
            new org.eclipse.jdt.internal.core.search.PatternSearchJob
            dup
            aload 1 /* pattern */
            aload 11 /* participant */
            aload 3 /* scope */
            aload 12 /* pathCollector */
            invokespecial org.eclipse.jdt.internal.core.search.PatternSearchJob.<init>:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;)V
        23: .line 236
            iconst_3
        24: .line 237
            aload 10 /* iterationMonitor */
            bipush 50
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
        25: .line 234
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.performConcurrentJob:(Lorg/eclipse/jdt/internal/core/search/processing/IJob;ILorg/eclipse/core/runtime/IProgressMonitor;)Z
            pop
        26: .line 240
            aload 10 /* iterationMonitor */
            getstatic org.eclipse.jdt.internal.core.util.Messages.engine_searching_matching:Ljava/lang/String;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 11 /* participant */
            invokevirtual org.eclipse.jdt.core.search.SearchParticipant.getDescription:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual org.eclipse.core.runtime.SubMonitor.subTask:(Ljava/lang/String;)V
        27: .line 241
            aload 12 /* pathCollector */
            invokevirtual org.eclipse.jdt.internal.core.search.PathCollector.getPaths:()[Ljava/lang/String;
            astore 13 /* indexMatchPaths */
        start local 13 // java.lang.String[] indexMatchPaths
        28: .line 242
            aload 13 /* indexMatchPaths */
            ifnull 44
        29: .line 243
            aconst_null
            astore 12 /* pathCollector */
        30: .line 244
            aload 13 /* indexMatchPaths */
            arraylength
            istore 14 /* indexMatchLength */
        start local 14 // int indexMatchLength
        31: .line 245
            iload 14 /* indexMatchLength */
            anewarray org.eclipse.jdt.core.search.SearchDocument
            astore 15 /* indexMatches */
        start local 15 // org.eclipse.jdt.core.search.SearchDocument[] indexMatches
        32: .line 246
            iconst_0
            istore 16 /* j */
        start local 16 // int j
        33: goto 36
        34: .line 247
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.core.search.SearchParticipant[] org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.core.search.SearchRequestor org.eclipse.core.runtime.IProgressMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.search.SearchParticipant org.eclipse.jdt.internal.core.search.PathCollector java.lang.String[] int org.eclipse.jdt.core.search.SearchDocument[] int
      StackMap stack:
            aload 15 /* indexMatches */
            iload 16 /* j */
            aload 11 /* participant */
            aload 13 /* indexMatchPaths */
            iload 16 /* j */
            aaload
            invokevirtual org.eclipse.jdt.core.search.SearchParticipant.getDocument:(Ljava/lang/String;)Lorg/eclipse/jdt/core/search/SearchDocument;
            aastore
        35: .line 246
            iinc 16 /* j */ 1
      StackMap locals:
      StackMap stack:
        36: iload 16 /* j */
            iload 14 /* indexMatchLength */
            if_icmplt 34
        end local 16 // int j
        37: .line 249
            aload 1 /* pattern */
            aload 15 /* indexMatches */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getWorkingCopies:()[Lorg/eclipse/jdt/core/ICompilationUnit;
            aload 11 /* participant */
            invokestatic org.eclipse.jdt.internal.core.search.matching.MatchLocator.addWorkingCopies:(Lorg/eclipse/jdt/core/search/SearchPattern;[Lorg/eclipse/jdt/core/search/SearchDocument;[Lorg/eclipse/jdt/core/ICompilationUnit;Lorg/eclipse/jdt/core/search/SearchParticipant;)[Lorg/eclipse/jdt/core/search/SearchDocument;
            astore 16 /* matches */
        start local 16 // org.eclipse.jdt.core.search.SearchDocument[] matches
        38: .line 250
            aload 11 /* participant */
            aload 16 /* matches */
            aload 1 /* pattern */
            aload 3 /* scope */
            aload 4 /* requestor */
            aload 10 /* iterationMonitor */
            bipush 50
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
            invokevirtual org.eclipse.jdt.core.search.SearchParticipant.locateMatches:([Lorg/eclipse/jdt/core/search/SearchDocument;Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/core/runtime/IProgressMonitor;)V
        end local 16 // org.eclipse.jdt.core.search.SearchDocument[] matches
        end local 15 // org.eclipse.jdt.core.search.SearchDocument[] indexMatches
        end local 14 // int indexMatchLength
        end local 13 // java.lang.String[] indexMatchPaths
        end local 12 // org.eclipse.jdt.internal.core.search.PathCollector pathCollector
        39: .line 252
            goto 44
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.core.search.SearchParticipant[] org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.core.search.SearchRequestor org.eclipse.core.runtime.IProgressMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.search.SearchParticipant
      StackMap stack: java.lang.Throwable
        40: astore 17
        41: .line 253
            aload 4 /* requestor */
            aload 11 /* participant */
            invokevirtual org.eclipse.jdt.core.search.SearchRequestor.exitParticipant:(Lorg/eclipse/jdt/core/search/SearchParticipant;)V
        42: .line 254
            aload 11 /* participant */
            invokevirtual org.eclipse.jdt.core.search.SearchParticipant.doneSearching:()V
        43: .line 255
            aload 17
            athrow
        44: .line 253
      StackMap locals:
      StackMap stack:
            aload 4 /* requestor */
            aload 11 /* participant */
            invokevirtual org.eclipse.jdt.core.search.SearchRequestor.exitParticipant:(Lorg/eclipse/jdt/core/search/SearchParticipant;)V
        45: .line 254
            aload 11 /* participant */
            invokevirtual org.eclipse.jdt.core.search.SearchParticipant.doneSearching:()V
        end local 11 // org.eclipse.jdt.core.search.SearchParticipant participant
        end local 10 // org.eclipse.core.runtime.SubMonitor iterationMonitor
        46: .line 225
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        47: iload 9 /* i */
            iload 6 /* length */
            if_icmplt 15
        end local 9 // int i
        end local 8 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        end local 7 // org.eclipse.core.runtime.SubMonitor loopMonitor
        end local 6 // int length
        48: .line 257
            goto 54
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.core.search.SearchParticipant[] org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.core.search.SearchRequestor org.eclipse.core.runtime.IProgressMonitor
      StackMap stack: java.lang.Throwable
        49: astore 18
        50: .line 258
            aload 4 /* requestor */
            invokevirtual org.eclipse.jdt.core.search.SearchRequestor.endReporting:()V
        51: .line 259
            aload 5 /* monitor */
            ifnull 53
        52: .line 260
            aload 5 /* monitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
        53: .line 262
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.core.search.SearchParticipant[] org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.core.search.SearchRequestor org.eclipse.core.runtime.IProgressMonitor top top top top top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 18
            athrow
        54: .line 258
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.core.search.SearchParticipant[] org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.core.search.SearchRequestor org.eclipse.core.runtime.IProgressMonitor
      StackMap stack:
            aload 4 /* requestor */
            invokevirtual org.eclipse.jdt.core.search.SearchRequestor.endReporting:()V
        55: .line 259
            aload 5 /* monitor */
            ifnull 57
        56: .line 260
            aload 5 /* monitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
        57: .line 263
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.eclipse.core.runtime.IProgressMonitor monitor
        end local 4 // org.eclipse.jdt.core.search.SearchRequestor requestor
        end local 3 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        end local 2 // org.eclipse.jdt.core.search.SearchParticipant[] participants
        end local 1 // org.eclipse.jdt.core.search.SearchPattern pattern
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   58     0              this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0   58     1           pattern  Lorg/eclipse/jdt/core/search/SearchPattern;
            0   58     2      participants  [Lorg/eclipse/jdt/core/search/SearchParticipant;
            0   58     3             scope  Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            0   58     4         requestor  Lorg/eclipse/jdt/core/search/SearchRequestor;
            0   58     5           monitor  Lorg/eclipse/core/runtime/IProgressMonitor;
           10   48     6            length  I
           11   48     7       loopMonitor  Lorg/eclipse/core/runtime/SubMonitor;
           12   48     8      indexManager  Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
           14   48     9                 i  I
           16   46    10  iterationMonitor  Lorg/eclipse/core/runtime/SubMonitor;
           17   46    11       participant  Lorg/eclipse/jdt/core/search/SearchParticipant;
           21   39    12     pathCollector  Lorg/eclipse/jdt/internal/core/search/PathCollector;
           28   39    13   indexMatchPaths  [Ljava/lang/String;
           31   39    14  indexMatchLength  I
           32   39    15      indexMatches  [Lorg/eclipse/jdt/core/search/SearchDocument;
           33   37    16                 j  I
           38   39    16           matches  [Lorg/eclipse/jdt/core/search/SearchDocument;
      Exception table:
        from    to  target  type
          17    40      40  any
           0     5      49  any
           9    49      49  any
    Exceptions:
      throws org.eclipse.core.runtime.CoreException
    MethodParameters:
              Name  Flags
      pattern       
      participants  
      scope         
      requestor     
      monitor       

  public static org.eclipse.jdt.core.search.SearchParticipant getDefaultSearchParticipant();
    descriptor: ()Lorg/eclipse/jdt/core/search/SearchParticipant;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 271
            new org.eclipse.jdt.internal.core.search.JavaSearchParticipant
            dup
            invokespecial org.eclipse.jdt.internal.core.search.JavaSearchParticipant.<init>:()V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.lang.String getMatchRuleString(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // int matchRule
         0: .line 278
            iload 0 /* matchRule */
            ifne 2
         1: .line 279
            ldc "R_EXACT_MATCH"
            areturn
         2: .line 281
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 1 /* buffer */
        start local 1 // java.lang.StringBuffer buffer
         3: .line 282
            iconst_1
            istore 2 /* i */
        start local 2 // int i
         4: goto 26
         5: .line 283
      StackMap locals: java.lang.StringBuffer int
      StackMap stack:
            iload 0 /* matchRule */
            iconst_1
            iload 2 /* i */
            iconst_1
            isub
            ishl
            iand
            istore 3 /* bit */
        start local 3 // int bit
         6: .line 284
            iload 3 /* bit */
            ifeq 7
            aload 1 /* buffer */
            invokevirtual java.lang.StringBuffer.length:()I
            ifle 7
            aload 1 /* buffer */
            ldc " | "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         7: .line 285
      StackMap locals: int
      StackMap stack:
            iload 3 /* bit */
            lookupswitch { // 9
                    1: 8
                    2: 18
                    4: 20
                    8: 10
                   16: 14
                   32: 12
                   64: 16
                  128: 22
                  256: 24
              default: 25
          }
         8: .line 287
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "R_PREFIX_MATCH"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         9: .line 288
            goto 25
        10: .line 290
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "R_CASE_SENSITIVE"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        11: .line 291
            goto 25
        12: .line 293
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "R_EQUIVALENT_MATCH"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        13: .line 294
            goto 25
        14: .line 296
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "R_ERASURE_MATCH"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        15: .line 297
            goto 25
        16: .line 299
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "R_FULL_MATCH"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        17: .line 300
            goto 25
        18: .line 302
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "R_PATTERN_MATCH"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        19: .line 303
            goto 25
        20: .line 305
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "R_REGEXP_MATCH"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        21: .line 306
            goto 25
        22: .line 308
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "R_CAMELCASE_MATCH"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        23: .line 309
            goto 25
        24: .line 311
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "R_CAMELCASE_SAME_PART_COUNT_MATCH"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        end local 3 // int bit
        25: .line 282
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 2 /* i */
            bipush 16
            if_icmple 5
        end local 2 // int i
        27: .line 315
            aload 1 /* buffer */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuffer buffer
        end local 0 // int matchRule
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   28     0  matchRule  I
            3   28     1     buffer  Ljava/lang/StringBuffer;
            4   27     2          i  I
            6   25     3        bit  I
    MethodParameters:
           Name  Flags
      matchRule  final

  public static java.lang.String getSearchForString(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // int searchFor
         0: .line 324
            iload 0 /* searchFor */
            tableswitch { // 0 - 11
                    0: 1
                    1: 2
                    2: 3
                    3: 4
                    4: 5
                    5: 6
                    6: 7
                    7: 8
                    8: 9
                    9: 10
                   10: 11
                   11: 12
              default: 13
          }
         1: .line 326
      StackMap locals:
      StackMap stack:
            ldc "TYPE"
            areturn
         2: .line 328
      StackMap locals:
      StackMap stack:
            ldc "METHOD"
            areturn
         3: .line 330
      StackMap locals:
      StackMap stack:
            ldc "PACKAGE"
            areturn
         4: .line 332
      StackMap locals:
      StackMap stack:
            ldc "CONSTRUCTOR"
            areturn
         5: .line 334
      StackMap locals:
      StackMap stack:
            ldc "FIELD"
            areturn
         6: .line 336
      StackMap locals:
      StackMap stack:
            ldc "CLASS"
            areturn
         7: .line 338
      StackMap locals:
      StackMap stack:
            ldc "INTERFACE"
            areturn
         8: .line 340
      StackMap locals:
      StackMap stack:
            ldc "ENUM"
            areturn
         9: .line 342
      StackMap locals:
      StackMap stack:
            ldc "ANNOTATION_TYPE"
            areturn
        10: .line 344
      StackMap locals:
      StackMap stack:
            ldc "CLASS_AND_ENUM"
            areturn
        11: .line 346
      StackMap locals:
      StackMap stack:
            ldc "CLASS_AND_INTERFACE"
            areturn
        12: .line 348
      StackMap locals:
      StackMap stack:
            ldc "INTERFACE_AND_ANNOTATION"
            areturn
        13: .line 350
      StackMap locals:
      StackMap stack:
            ldc "UNKNOWN"
            areturn
        end local 0 // int searchFor
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0  searchFor  I
    MethodParameters:
           Name  Flags
      searchFor  final

  private org.eclipse.jdt.internal.compiler.parser.Parser getParser();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/parser/Parser;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
         0: .line 354
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.parser:Lorg/eclipse/jdt/internal/compiler/parser/Parser;
            ifnonnull 9
         1: .line 355
            aload 0 /* this */
            new org.eclipse.jdt.internal.compiler.impl.CompilerOptions
            dup
            invokestatic org.eclipse.jdt.core.JavaCore.getOptions:()Ljava/util/Hashtable;
            invokespecial org.eclipse.jdt.internal.compiler.impl.CompilerOptions.<init>:(Ljava/util/Map;)V
            putfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.compilerOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
         2: .line 357
            new org.eclipse.jdt.internal.compiler.problem.ProblemReporter
            dup
         3: .line 358
            invokestatic org.eclipse.jdt.internal.compiler.DefaultErrorHandlingPolicies.proceedWithAllProblems:()Lorg/eclipse/jdt/internal/compiler/IErrorHandlingPolicy;
         4: .line 359
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.compilerOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
         5: .line 360
            new org.eclipse.jdt.internal.compiler.problem.DefaultProblemFactory
            dup
            invokespecial org.eclipse.jdt.internal.compiler.problem.DefaultProblemFactory.<init>:()V
         6: .line 357
            invokespecial org.eclipse.jdt.internal.compiler.problem.ProblemReporter.<init>:(Lorg/eclipse/jdt/internal/compiler/IErrorHandlingPolicy;Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;Lorg/eclipse/jdt/internal/compiler/IProblemFactory;)V
         7: .line 356
            astore 1 /* problemReporter */
        start local 1 // org.eclipse.jdt.internal.compiler.problem.ProblemReporter problemReporter
         8: .line 361
            aload 0 /* this */
            new org.eclipse.jdt.internal.compiler.parser.Parser
            dup
            aload 1 /* problemReporter */
            iconst_1
            invokespecial org.eclipse.jdt.internal.compiler.parser.Parser.<init>:(Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;Z)V
            putfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.parser:Lorg/eclipse/jdt/internal/compiler/parser/Parser;
        end local 1 // org.eclipse.jdt.internal.compiler.problem.ProblemReporter problemReporter
         9: .line 363
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.parser:Lorg/eclipse/jdt/internal/compiler/parser/Parser;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            8    9     1  problemReporter  Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;

  private org.eclipse.jdt.core.ICompilationUnit[] getWorkingCopies();
    descriptor: ()[Lorg/eclipse/jdt/core/ICompilationUnit;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
         0: .line 372
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.workingCopies:[Lorg/eclipse/jdt/core/ICompilationUnit;
            ifnull 27
         1: .line 373
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.workingCopyOwner:Lorg/eclipse/jdt/core/WorkingCopyOwner;
            ifnonnull 25
         2: .line 374
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getJavaModelManager:()Lorg/eclipse/jdt/internal/core/JavaModelManager;
            getstatic org.eclipse.jdt.internal.core.DefaultWorkingCopyOwner.PRIMARY:Lorg/eclipse/jdt/internal/core/DefaultWorkingCopyOwner;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.getWorkingCopies:(Lorg/eclipse/jdt/core/WorkingCopyOwner;Z)[Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 1 /* copies */
        start local 1 // org.eclipse.jdt.core.ICompilationUnit[] copies
         3: .line 375
            aload 1 /* copies */
            ifnonnull 6
         4: .line 376
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.workingCopies:[Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 1 /* copies */
         5: .line 377
            goto 31
         6: .line 378
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit[]
      StackMap stack:
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 2 /* pathToCUs */
        start local 2 // java.util.HashMap pathToCUs
         7: .line 379
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         8: aload 1 /* copies */
            arraylength
            istore 4 /* length */
        start local 4 // int length
         9: goto 13
        10: .line 380
      StackMap locals: java.util.HashMap int int
      StackMap stack:
            aload 1 /* copies */
            iload 3 /* i */
            aaload
            astore 5 /* unit */
        start local 5 // org.eclipse.jdt.core.ICompilationUnit unit
        11: .line 381
            aload 2 /* pathToCUs */
            aload 5 /* unit */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            aload 5 /* unit */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // org.eclipse.jdt.core.ICompilationUnit unit
        12: .line 379
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 3 /* i */
            iload 4 /* length */
            if_icmplt 10
        end local 4 // int length
        end local 3 // int i
        14: .line 383
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        15: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.workingCopies:[Lorg/eclipse/jdt/core/ICompilationUnit;
            arraylength
            istore 4 /* length */
        start local 4 // int length
        16: goto 20
        17: .line 384
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.workingCopies:[Lorg/eclipse/jdt/core/ICompilationUnit;
            iload 3 /* i */
            aaload
            astore 5 /* unit */
        start local 5 // org.eclipse.jdt.core.ICompilationUnit unit
        18: .line 385
            aload 2 /* pathToCUs */
            aload 5 /* unit */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            aload 5 /* unit */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // org.eclipse.jdt.core.ICompilationUnit unit
        19: .line 383
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 3 /* i */
            iload 4 /* length */
            if_icmplt 17
        end local 4 // int length
        end local 3 // int i
        21: .line 387
            aload 2 /* pathToCUs */
            invokevirtual java.util.HashMap.size:()I
            istore 3 /* length */
        start local 3 // int length
        22: .line 388
            iload 3 /* length */
            anewarray org.eclipse.jdt.core.ICompilationUnit
            astore 1 /* copies */
        23: .line 389
            aload 2 /* pathToCUs */
            invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
            aload 1 /* copies */
            invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            pop
        end local 3 // int length
        end local 2 // java.util.HashMap pathToCUs
        24: .line 391
            goto 31
        end local 1 // org.eclipse.jdt.core.ICompilationUnit[] copies
        25: .line 392
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.workingCopies:[Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 1 /* copies */
        start local 1 // org.eclipse.jdt.core.ICompilationUnit[] copies
        26: .line 394
            goto 31
        end local 1 // org.eclipse.jdt.core.ICompilationUnit[] copies
      StackMap locals:
      StackMap stack:
        27: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.workingCopyOwner:Lorg/eclipse/jdt/core/WorkingCopyOwner;
            ifnull 30
        28: .line 395
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getJavaModelManager:()Lorg/eclipse/jdt/internal/core/JavaModelManager;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.workingCopyOwner:Lorg/eclipse/jdt/core/WorkingCopyOwner;
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.getWorkingCopies:(Lorg/eclipse/jdt/core/WorkingCopyOwner;Z)[Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 1 /* copies */
        start local 1 // org.eclipse.jdt.core.ICompilationUnit[] copies
        29: .line 396
            goto 31
        end local 1 // org.eclipse.jdt.core.ICompilationUnit[] copies
        30: .line 397
      StackMap locals:
      StackMap stack:
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getJavaModelManager:()Lorg/eclipse/jdt/internal/core/JavaModelManager;
            getstatic org.eclipse.jdt.internal.core.DefaultWorkingCopyOwner.PRIMARY:Lorg/eclipse/jdt/internal/core/DefaultWorkingCopyOwner;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.getWorkingCopies:(Lorg/eclipse/jdt/core/WorkingCopyOwner;Z)[Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 1 /* copies */
        start local 1 // org.eclipse.jdt.core.ICompilationUnit[] copies
        31: .line 399
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit[]
      StackMap stack:
            aload 1 /* copies */
            ifnonnull 32
            aconst_null
            areturn
        32: .line 402
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* result */
        start local 2 // org.eclipse.jdt.core.ICompilationUnit[] result
        33: .line 403
            aload 1 /* copies */
            arraylength
            istore 3 /* length */
        start local 3 // int length
        34: .line 404
            iconst_0
            istore 4 /* index */
        start local 4 // int index
        35: .line 405
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        36: goto 47
        37: .line 406
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.ICompilationUnit[] org.eclipse.jdt.core.ICompilationUnit[] int int int
      StackMap stack:
            aload 1 /* copies */
            iload 5 /* i */
            aaload
            checkcast org.eclipse.jdt.internal.core.CompilationUnit
            astore 6 /* copy */
        start local 6 // org.eclipse.jdt.internal.core.CompilationUnit copy
        38: .line 408
            aload 6 /* copy */
            invokevirtual org.eclipse.jdt.internal.core.CompilationUnit.isPrimary:()Z
            ifeq 41
        39: .line 409
            aload 6 /* copy */
            invokevirtual org.eclipse.jdt.internal.core.CompilationUnit.hasUnsavedChanges:()Z
            ifne 41
        40: .line 410
            aload 6 /* copy */
            invokevirtual org.eclipse.jdt.internal.core.CompilationUnit.hasResourceChanged:()Z
            ifeq 46
        41: .line 411
      StackMap locals: org.eclipse.jdt.internal.core.CompilationUnit
      StackMap stack:
            aload 2 /* result */
            ifnonnull 43
        42: .line 412
            iload 3 /* length */
            anewarray org.eclipse.jdt.core.ICompilationUnit
            astore 2 /* result */
        43: .line 414
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            iload 4 /* index */
            iinc 4 /* index */ 1
            aload 6 /* copy */
            aastore
        44: .line 416
            goto 46
      StackMap locals:
      StackMap stack: org.eclipse.jdt.core.JavaModelException
        45: pop
        end local 6 // org.eclipse.jdt.internal.core.CompilationUnit copy
        46: .line 405
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        47: iload 5 /* i */
            iload 3 /* length */
            if_icmplt 37
        end local 5 // int i
        48: .line 420
            iload 4 /* index */
            iload 3 /* length */
            if_icmpeq 50
            aload 2 /* result */
            ifnull 50
        49: .line 421
            aload 2 /* result */
            iconst_0
            iload 4 /* index */
            anewarray org.eclipse.jdt.core.ICompilationUnit
            dup
            astore 2 /* result */
            iconst_0
            iload 4 /* index */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        50: .line 423
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 4 // int index
        end local 3 // int length
        end local 2 // org.eclipse.jdt.core.ICompilationUnit[] result
        end local 1 // org.eclipse.jdt.core.ICompilationUnit[] copies
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   51     0       this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            3   25     1     copies  [Lorg/eclipse/jdt/core/ICompilationUnit;
           26   27     1     copies  [Lorg/eclipse/jdt/core/ICompilationUnit;
           29   30     1     copies  [Lorg/eclipse/jdt/core/ICompilationUnit;
           31   51     1     copies  [Lorg/eclipse/jdt/core/ICompilationUnit;
            7   24     2  pathToCUs  Ljava/util/HashMap;
            8   14     3          i  I
            9   14     4     length  I
           11   12     5       unit  Lorg/eclipse/jdt/core/ICompilationUnit;
           15   21     3          i  I
           16   21     4     length  I
           18   19     5       unit  Lorg/eclipse/jdt/core/ICompilationUnit;
           22   24     3     length  I
           33   51     2     result  [Lorg/eclipse/jdt/core/ICompilationUnit;
           34   51     3     length  I
           35   51     4      index  I
           36   48     5          i  I
           38   46     6       copy  Lorg/eclipse/jdt/internal/core/CompilationUnit;
      Exception table:
        from    to  target  type
          38    44      45  Class org.eclipse.jdt.core.JavaModelException

  private org.eclipse.jdt.core.ICompilationUnit[] getWorkingCopies(org.eclipse.jdt.core.IJavaElement);
    descriptor: (Lorg/eclipse/jdt/core/IJavaElement;)[Lorg/eclipse/jdt/core/ICompilationUnit;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // org.eclipse.jdt.core.IJavaElement element
         0: .line 430
            aload 1 /* element */
            instanceof org.eclipse.jdt.core.IMember
            ifeq 4
         1: .line 431
            aload 1 /* element */
            checkcast org.eclipse.jdt.core.IMember
            invokeinterface org.eclipse.jdt.core.IMember.getCompilationUnit:()Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 2 /* cu */
        start local 2 // org.eclipse.jdt.core.ICompilationUnit cu
         2: .line 432
            aload 2 /* cu */
            ifnull 6
            aload 2 /* cu */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.isWorkingCopy:()Z
            ifeq 6
         3: .line 433
            iconst_1
            anewarray org.eclipse.jdt.core.ICompilationUnit
            dup
            iconst_0
            aload 2 /* cu */
            aastore
            areturn
        end local 2 // org.eclipse.jdt.core.ICompilationUnit cu
         4: .line 435
      StackMap locals:
      StackMap stack:
            aload 1 /* element */
            instanceof org.eclipse.jdt.core.ICompilationUnit
            ifeq 6
         5: .line 436
            iconst_1
            anewarray org.eclipse.jdt.core.ICompilationUnit
            dup
            iconst_0
            aload 1 /* element */
            checkcast org.eclipse.jdt.core.ICompilationUnit
            aastore
            areturn
         6: .line 439
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.eclipse.jdt.core.IJavaElement element
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0    7     1  element  Lorg/eclipse/jdt/core/IJavaElement;
            2    4     2       cu  Lorg/eclipse/jdt/core/ICompilationUnit;
    MethodParameters:
         Name  Flags
      element  

  boolean match(char, int);
    descriptor: (CI)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // char patternTypeSuffix
        start local 2 // int modifiers
         0: .line 443
            iload 1 /* patternTypeSuffix */
            lookupswitch { // 7
                    9: 5
                   10: 3
                   11: 9
                   65: 13
                   67: 1
                   69: 11
                   73: 7
              default: 15
          }
         1: .line 445
      StackMap locals:
      StackMap stack:
            iload 2 /* modifiers */
            sipush 25088
            iand
            ifne 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
         3: .line 447
      StackMap locals:
      StackMap stack:
            iload 2 /* modifiers */
            sipush 24576
            iand
            ifne 4
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
         5: .line 449
      StackMap locals:
      StackMap stack:
            iload 2 /* modifiers */
            sipush 8704
            iand
            ifne 6
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_0
            ireturn
         7: .line 451
      StackMap locals:
      StackMap stack:
            iload 2 /* modifiers */
            sipush 512
            iand
            ifeq 8
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         8: iconst_0
            ireturn
         9: .line 453
      StackMap locals:
      StackMap stack:
            iload 2 /* modifiers */
            sipush 8704
            iand
            ifeq 10
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        10: iconst_0
            ireturn
        11: .line 455
      StackMap locals:
      StackMap stack:
            iload 2 /* modifiers */
            sipush 16384
            iand
            ifeq 12
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        12: iconst_0
            ireturn
        13: .line 457
      StackMap locals:
      StackMap stack:
            iload 2 /* modifiers */
            sipush 8192
            iand
            ifeq 14
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        14: iconst_0
            ireturn
        15: .line 459
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // int modifiers
        end local 1 // char patternTypeSuffix
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   16     0               this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0   16     1  patternTypeSuffix  C
            0   16     2          modifiers  I
    MethodParameters:
                   Name  Flags
      patternTypeSuffix  
      modifiers          

  boolean match(char, char[], int, char[], int, int, char[], char[]);
    descriptor: (C[CI[CII[C[C)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=14, args_size=9
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // char patternTypeSuffix
        start local 2 // char[] patternPkg
        start local 3 // int matchRulePkg
        start local 4 // char[] patternTypeName
        start local 5 // int matchRuleType
        start local 6 // int typeKind
        start local 7 // char[] pkg
        start local 8 // char[] typeName
         0: .line 463
            iload 1 /* patternTypeSuffix */
            lookupswitch { // 8
                    0: 8
                    9: 3
                   10: 2
                   11: 5
                   65: 7
                   67: 1
                   69: 6
                   73: 4
              default: 8
          }
         1: .line 465
      StackMap locals:
      StackMap stack:
            iload 6 /* typeKind */
            iconst_1
            if_icmpeq 8
            iconst_0
            ireturn
         2: .line 468
      StackMap locals:
      StackMap stack:
            iload 6 /* typeKind */
            iconst_1
            if_icmpeq 8
            iload 6 /* typeKind */
            iconst_2
            if_icmpeq 8
            iconst_0
            ireturn
         3: .line 471
      StackMap locals:
      StackMap stack:
            iload 6 /* typeKind */
            iconst_1
            if_icmpeq 8
            iload 6 /* typeKind */
            iconst_3
            if_icmpeq 8
            iconst_0
            ireturn
         4: .line 474
      StackMap locals:
      StackMap stack:
            iload 6 /* typeKind */
            iconst_2
            if_icmpeq 8
            iconst_0
            ireturn
         5: .line 477
      StackMap locals:
      StackMap stack:
            iload 6 /* typeKind */
            iconst_2
            if_icmpeq 8
            iload 6 /* typeKind */
            iconst_4
            if_icmpeq 8
            iconst_0
            ireturn
         6: .line 480
      StackMap locals:
      StackMap stack:
            iload 6 /* typeKind */
            iconst_3
            if_icmpeq 8
            iconst_0
            ireturn
         7: .line 483
      StackMap locals:
      StackMap stack:
            iload 6 /* typeKind */
            iconst_4
            if_icmpeq 8
            iconst_0
            ireturn
         8: .line 488
      StackMap locals:
      StackMap stack:
            iload 3 /* matchRulePkg */
            bipush 8
            iand
            ifeq 9
            iconst_1
            goto 10
      StackMap locals:
      StackMap stack:
         9: iconst_0
      StackMap locals:
      StackMap stack: int
        10: istore 9 /* isPkgCaseSensitive */
        start local 9 // boolean isPkgCaseSensitive
        11: .line 489
            aload 2 /* patternPkg */
            ifnull 13
            aload 2 /* patternPkg */
            aload 7 /* pkg */
            iload 9 /* isPkgCaseSensitive */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[CZ)Z
            ifne 13
        12: .line 490
            iconst_0
            ireturn
        13: .line 492
      StackMap locals: int
      StackMap stack:
            iload 5 /* matchRuleType */
            bipush 8
            iand
            ifeq 14
            iconst_1
            goto 15
      StackMap locals:
      StackMap stack:
        14: iconst_0
      StackMap locals:
      StackMap stack: int
        15: istore 10 /* isCaseSensitive */
        start local 10 // boolean isCaseSensitive
        16: .line 493
            aload 4 /* patternTypeName */
            ifnull 39
        17: .line 494
            iload 5 /* matchRuleType */
            sipush 384
            iand
            ifeq 18
            iconst_1
            goto 19
      StackMap locals: int
      StackMap stack:
        18: iconst_0
      StackMap locals:
      StackMap stack: int
        19: istore 11 /* isCamelCase */
        start local 11 // boolean isCamelCase
        20: .line 495
            iload 5 /* matchRuleType */
            sipush 391
            iand
            istore 12 /* matchMode */
        start local 12 // int matchMode
        21: .line 496
            iload 10 /* isCaseSensitive */
            ifne 23
            iload 11 /* isCamelCase */
            ifne 23
        22: .line 497
            aload 4 /* patternTypeName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.toLowerCase:([C)[C
            astore 4 /* patternTypeName */
        23: .line 499
      StackMap locals: int int
      StackMap stack:
            iload 10 /* isCaseSensitive */
            ifeq 24
            aload 4 /* patternTypeName */
            iconst_0
            caload
            aload 8 /* typeName */
            iconst_0
            caload
            if_icmpeq 24
            iconst_0
            goto 25
      StackMap locals:
      StackMap stack:
        24: iconst_1
      StackMap locals:
      StackMap stack: int
        25: istore 13 /* matchFirstChar */
        start local 13 // boolean matchFirstChar
        26: .line 500
            iload 12 /* matchMode */
            lookupswitch { // 6
                    0: 27
                    1: 29
                    2: 31
                    4: 32
                  128: 33
                  256: 37
              default: 39
          }
        27: .line 502
      StackMap locals: int
      StackMap stack:
            iload 13 /* matchFirstChar */
            ifeq 28
            aload 4 /* patternTypeName */
            aload 8 /* typeName */
            iload 10 /* isCaseSensitive */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[CZ)Z
            ifeq 28
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        28: iconst_0
            ireturn
        29: .line 504
      StackMap locals:
      StackMap stack:
            iload 13 /* matchFirstChar */
            ifeq 30
            aload 4 /* patternTypeName */
            aload 8 /* typeName */
            iload 10 /* isCaseSensitive */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.prefixEquals:([C[CZ)Z
            ifeq 30
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        30: iconst_0
            ireturn
        31: .line 506
      StackMap locals:
      StackMap stack:
            aload 4 /* patternTypeName */
            aload 8 /* typeName */
            iload 10 /* isCaseSensitive */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.match:([C[CZ)Z
            ireturn
        32: .line 508
      StackMap locals:
      StackMap stack:
            new java.lang.String
            dup
            aload 4 /* patternTypeName */
            invokespecial java.lang.String.<init>:([C)V
            new java.lang.String
            dup
            aload 8 /* typeName */
            invokespecial java.lang.String.<init>:([C)V
            invokestatic java.util.regex.Pattern.matches:(Ljava/lang/String;Ljava/lang/CharSequence;)Z
            ireturn
        33: .line 510
      StackMap locals:
      StackMap stack:
            iload 13 /* matchFirstChar */
            ifeq 35
            aload 4 /* patternTypeName */
            aload 8 /* typeName */
            iconst_0
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.camelCaseMatch:([C[CZ)Z
            ifeq 35
        34: .line 511
            iconst_1
            ireturn
        35: .line 513
      StackMap locals:
      StackMap stack:
            iload 10 /* isCaseSensitive */
            ifne 36
            iload 13 /* matchFirstChar */
            ifeq 36
            aload 4 /* patternTypeName */
            aload 8 /* typeName */
            iconst_0
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.prefixEquals:([C[CZ)Z
            ifeq 36
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        36: iconst_0
            ireturn
        37: .line 515
      StackMap locals:
      StackMap stack:
            iload 13 /* matchFirstChar */
            ifeq 38
            aload 4 /* patternTypeName */
            aload 8 /* typeName */
            iconst_1
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.camelCaseMatch:([C[CZ)Z
            ifeq 38
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        38: iconst_0
            ireturn
        end local 13 // boolean matchFirstChar
        end local 12 // int matchMode
        end local 11 // boolean isCamelCase
        39: .line 518
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 10 // boolean isCaseSensitive
        end local 9 // boolean isPkgCaseSensitive
        end local 8 // char[] typeName
        end local 7 // char[] pkg
        end local 6 // int typeKind
        end local 5 // int matchRuleType
        end local 4 // char[] patternTypeName
        end local 3 // int matchRulePkg
        end local 2 // char[] patternPkg
        end local 1 // char patternTypeSuffix
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   40     0                this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0   40     1   patternTypeSuffix  C
            0   40     2          patternPkg  [C
            0   40     3        matchRulePkg  I
            0   40     4     patternTypeName  [C
            0   40     5       matchRuleType  I
            0   40     6            typeKind  I
            0   40     7                 pkg  [C
            0   40     8            typeName  [C
           11   40     9  isPkgCaseSensitive  Z
           16   40    10     isCaseSensitive  Z
           20   39    11         isCamelCase  Z
           21   39    12           matchMode  I
           26   39    13      matchFirstChar  Z
    MethodParameters:
                   Name  Flags
      patternTypeSuffix  
      patternPkg         
      matchRulePkg       
      patternTypeName    
      matchRuleType      
      typeKind           
      pkg                
      typeName           

  boolean match(char[], int, char[]);
    descriptor: ([CI[C)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // char[] patternName
        start local 2 // int matchRule
        start local 3 // char[] name
         0: .line 523
            iload 2 /* matchRule */
            bipush 8
            iand
            ifeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 4 /* isCaseSensitive */
        start local 4 // boolean isCaseSensitive
         3: .line 524
            aload 1 /* patternName */
            ifnull 26
         4: .line 525
            iload 2 /* matchRule */
            sipush 384
            iand
            ifeq 5
            iconst_1
            goto 6
      StackMap locals: int
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 5 /* isCamelCase */
        start local 5 // boolean isCamelCase
         7: .line 526
            iload 2 /* matchRule */
            sipush 391
            iand
            istore 6 /* matchMode */
        start local 6 // int matchMode
         8: .line 527
            iload 4 /* isCaseSensitive */
            ifne 10
            iload 5 /* isCamelCase */
            ifne 10
         9: .line 528
            aload 1 /* patternName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.toLowerCase:([C)[C
            astore 1 /* patternName */
        10: .line 530
      StackMap locals: int int
      StackMap stack:
            iload 4 /* isCaseSensitive */
            ifeq 11
            aload 1 /* patternName */
            iconst_0
            caload
            aload 3 /* name */
            iconst_0
            caload
            if_icmpeq 11
            iconst_0
            goto 12
      StackMap locals:
      StackMap stack:
        11: iconst_1
      StackMap locals:
      StackMap stack: int
        12: istore 7 /* matchFirstChar */
        start local 7 // boolean matchFirstChar
        13: .line 531
            iload 6 /* matchMode */
            lookupswitch { // 6
                    0: 14
                    1: 16
                    2: 18
                    4: 19
                  128: 20
                  256: 24
              default: 26
          }
        14: .line 533
      StackMap locals: int
      StackMap stack:
            iload 7 /* matchFirstChar */
            ifeq 15
            aload 1 /* patternName */
            aload 3 /* name */
            iload 4 /* isCaseSensitive */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[CZ)Z
            ifeq 15
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        15: iconst_0
            ireturn
        16: .line 535
      StackMap locals:
      StackMap stack:
            iload 7 /* matchFirstChar */
            ifeq 17
            aload 1 /* patternName */
            aload 3 /* name */
            iload 4 /* isCaseSensitive */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.prefixEquals:([C[CZ)Z
            ifeq 17
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        17: iconst_0
            ireturn
        18: .line 537
      StackMap locals:
      StackMap stack:
            aload 1 /* patternName */
            aload 3 /* name */
            iload 4 /* isCaseSensitive */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.match:([C[CZ)Z
            ireturn
        19: .line 539
      StackMap locals:
      StackMap stack:
            new java.lang.String
            dup
            aload 1 /* patternName */
            invokespecial java.lang.String.<init>:([C)V
            new java.lang.String
            dup
            aload 3 /* name */
            invokespecial java.lang.String.<init>:([C)V
            invokestatic java.util.regex.Pattern.matches:(Ljava/lang/String;Ljava/lang/CharSequence;)Z
            ireturn
        20: .line 541
      StackMap locals:
      StackMap stack:
            iload 7 /* matchFirstChar */
            ifeq 22
            aload 1 /* patternName */
            aload 3 /* name */
            iconst_0
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.camelCaseMatch:([C[CZ)Z
            ifeq 22
        21: .line 542
            iconst_1
            ireturn
        22: .line 544
      StackMap locals:
      StackMap stack:
            iload 4 /* isCaseSensitive */
            ifne 23
            iload 7 /* matchFirstChar */
            ifeq 23
            aload 1 /* patternName */
            aload 3 /* name */
            iconst_0
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.prefixEquals:([C[CZ)Z
            ifeq 23
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        23: iconst_0
            ireturn
        24: .line 546
      StackMap locals:
      StackMap stack:
            iload 7 /* matchFirstChar */
            ifeq 25
            aload 1 /* patternName */
            aload 3 /* name */
            iconst_1
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.camelCaseMatch:([C[CZ)Z
            ifeq 25
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        25: iconst_0
            ireturn
        end local 7 // boolean matchFirstChar
        end local 6 // int matchMode
        end local 5 // boolean isCamelCase
        26: .line 549
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 4 // boolean isCaseSensitive
        end local 3 // char[] name
        end local 2 // int matchRule
        end local 1 // char[] patternName
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   27     0             this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0   27     1      patternName  [C
            0   27     2        matchRule  I
            0   27     3             name  [C
            3   27     4  isCaseSensitive  Z
            7   26     5      isCamelCase  Z
            8   26     6        matchMode  I
           13   26     7   matchFirstChar  Z
    MethodParameters:
             Name  Flags
      patternName  
      matchRule    
      name         

  boolean match(char[], int, char[], int, char[], int, char[], int, char[], char[], char[], char[]);
    descriptor: ([CI[CI[CI[CI[C[C[C[C)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=13, args_size=13
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // char[] patternPkg
        start local 2 // int matchRulePkg
        start local 3 // char[] patternDeclaringQualifier
        start local 4 // int matchRuleDeclaringQualifier
        start local 5 // char[] patternDeclaringSimpleName
        start local 6 // int matchRuleDeclaringSimpleName
        start local 7 // char[] patternMethodName
        start local 8 // int methodMatchRule
        start local 9 // char[] packageName
        start local 10 // char[] declaringQualifier
        start local 11 // char[] declaringSimpleName
        start local 12 // char[] methodName
         0: .line 558
            aload 1 /* patternPkg */
            ifnull 4
            aload 1 /* patternPkg */
            aload 9 /* packageName */
            iload 2 /* matchRulePkg */
            bipush 8
            iand
            ifeq 1
            iconst_1
            goto 2
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int char[] int char[] int char[] char[] char[] char[]
      StackMap stack: char[] char[]
         1: iconst_0
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int char[] int char[] int char[] char[] char[] char[]
      StackMap stack: char[] char[] int
         2: invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[CZ)Z
            ifne 4
         3: .line 559
            iconst_0
            ireturn
         4: .line 561
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* patternDeclaringQualifier */
            iload 4 /* matchRuleDeclaringQualifier */
            aload 10 /* declaringQualifier */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.match:([CI[C)Z
            ifeq 8
         5: .line 562
            aload 0 /* this */
            aload 5 /* patternDeclaringSimpleName */
            iload 6 /* matchRuleDeclaringSimpleName */
            aload 11 /* declaringSimpleName */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.match:([CI[C)Z
            ifeq 8
         6: .line 563
            aload 0 /* this */
            aload 7 /* patternMethodName */
            iload 8 /* methodMatchRule */
            aload 12 /* methodName */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.match:([CI[C)Z
            ifeq 8
         7: .line 561
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         8: iconst_0
            ireturn
        end local 12 // char[] methodName
        end local 11 // char[] declaringSimpleName
        end local 10 // char[] declaringQualifier
        end local 9 // char[] packageName
        end local 8 // int methodMatchRule
        end local 7 // char[] patternMethodName
        end local 6 // int matchRuleDeclaringSimpleName
        end local 5 // char[] patternDeclaringSimpleName
        end local 4 // int matchRuleDeclaringQualifier
        end local 3 // char[] patternDeclaringQualifier
        end local 2 // int matchRulePkg
        end local 1 // char[] patternPkg
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0    9     0                          this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0    9     1                    patternPkg  [C
            0    9     2                  matchRulePkg  I
            0    9     3     patternDeclaringQualifier  [C
            0    9     4   matchRuleDeclaringQualifier  I
            0    9     5    patternDeclaringSimpleName  [C
            0    9     6  matchRuleDeclaringSimpleName  I
            0    9     7             patternMethodName  [C
            0    9     8               methodMatchRule  I
            0    9     9                   packageName  [C
            0    9    10            declaringQualifier  [C
            0    9    11           declaringSimpleName  [C
            0    9    12                    methodName  [C
    MethodParameters:
                              Name  Flags
      patternPkg                    
      matchRulePkg                  
      patternDeclaringQualifier     
      matchRuleDeclaringQualifier   
      patternDeclaringSimpleName    
      matchRuleDeclaringSimpleName  
      patternMethodName             
      methodMatchRule               
      packageName                   
      declaringQualifier            
      declaringSimpleName           
      methodName                    

  boolean match(char[], int, char[], int, char[], char[], char[], char[]);
    descriptor: ([CI[CI[C[C[C[C)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=10, args_size=9
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // char[] patternFusedQualifier
        start local 2 // int matchRuleFusedQualifier
        start local 3 // char[] patternMethodName
        start local 4 // int methodMatchRule
        start local 5 // char[] packageName
        start local 6 // char[] declaringQualifier
        start local 7 // char[] declaringSimpleName
        start local 8 // char[] methodName
         0: .line 571
            aload 5 /* packageName */
            ifnull 1
            aload 5 /* packageName */
            goto 2
      StackMap locals:
      StackMap stack:
         1: getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
      StackMap locals:
      StackMap stack: char[]
         2: astore 9 /* q */
        start local 9 // char[] q
         3: .line 572
            aload 6 /* declaringQualifier */
            ifnull 7
            aload 6 /* declaringQualifier */
            arraylength
            ifle 7
         4: .line 573
            aload 9 /* q */
            arraylength
            ifle 5
            aload 9 /* q */
            aload 6 /* declaringQualifier */
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concat:([C[CC)[C
            goto 6
      StackMap locals: char[]
      StackMap stack:
         5: aload 6 /* declaringQualifier */
      StackMap locals:
      StackMap stack: char[]
         6: astore 9 /* q */
         7: .line 575
      StackMap locals:
      StackMap stack:
            aload 7 /* declaringSimpleName */
            ifnull 11
            aload 7 /* declaringSimpleName */
            arraylength
            ifle 11
         8: .line 576
            aload 9 /* q */
            arraylength
            ifle 9
            aload 9 /* q */
            aload 7 /* declaringSimpleName */
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concat:([C[CC)[C
            goto 10
      StackMap locals:
      StackMap stack:
         9: aload 7 /* declaringSimpleName */
      StackMap locals:
      StackMap stack: char[]
        10: astore 9 /* q */
        11: .line 579
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* patternFusedQualifier */
            iload 2 /* matchRuleFusedQualifier */
            aload 9 /* q */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.match:([CI[C)Z
            ifeq 14
        12: .line 580
            aload 0 /* this */
            aload 3 /* patternMethodName */
            iload 4 /* methodMatchRule */
            aload 8 /* methodName */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.match:([CI[C)Z
            ifeq 14
        13: .line 579
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        14: iconst_0
            ireturn
        end local 9 // char[] q
        end local 8 // char[] methodName
        end local 7 // char[] declaringSimpleName
        end local 6 // char[] declaringQualifier
        end local 5 // char[] packageName
        end local 4 // int methodMatchRule
        end local 3 // char[] patternMethodName
        end local 2 // int matchRuleFusedQualifier
        end local 1 // char[] patternFusedQualifier
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   15     0                     this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0   15     1    patternFusedQualifier  [C
            0   15     2  matchRuleFusedQualifier  I
            0   15     3        patternMethodName  [C
            0   15     4          methodMatchRule  I
            0   15     5              packageName  [C
            0   15     6       declaringQualifier  [C
            0   15     7      declaringSimpleName  [C
            0   15     8               methodName  [C
            3   15     9                        q  [C
    MethodParameters:
                         Name  Flags
      patternFusedQualifier    
      matchRuleFusedQualifier  
      patternMethodName        
      methodMatchRule          
      packageName              
      declaringQualifier       
      declaringSimpleName      
      methodName               

  public void search(org.eclipse.jdt.core.search.SearchPattern, org.eclipse.jdt.core.search.SearchParticipant[], org.eclipse.jdt.core.search.IJavaSearchScope, org.eclipse.jdt.core.search.SearchRequestor, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: (Lorg/eclipse/jdt/core/search/SearchPattern;[Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // org.eclipse.jdt.core.search.SearchPattern pattern
        start local 2 // org.eclipse.jdt.core.search.SearchParticipant[] participants
        start local 3 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        start local 4 // org.eclipse.jdt.core.search.SearchRequestor requestor
        start local 5 // org.eclipse.core.runtime.IProgressMonitor monitor
         0: .line 592
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 2
         1: .line 593
            ldc "BasicSearchEngine.search(SearchPattern, SearchParticipant[], IJavaSearchScope, SearchRequestor, IProgressMonitor)"
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         2: .line 595
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pattern */
            aload 2 /* participants */
            aload 3 /* scope */
            aload 4 /* requestor */
            aload 5 /* monitor */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.findMatches:(Lorg/eclipse/jdt/core/search/SearchPattern;[Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/core/runtime/IProgressMonitor;)V
         3: .line 596
            return
        end local 5 // org.eclipse.core.runtime.IProgressMonitor monitor
        end local 4 // org.eclipse.jdt.core.search.SearchRequestor requestor
        end local 3 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        end local 2 // org.eclipse.jdt.core.search.SearchParticipant[] participants
        end local 1 // org.eclipse.jdt.core.search.SearchPattern pattern
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0    4     1       pattern  Lorg/eclipse/jdt/core/search/SearchPattern;
            0    4     2  participants  [Lorg/eclipse/jdt/core/search/SearchParticipant;
            0    4     3         scope  Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            0    4     4     requestor  Lorg/eclipse/jdt/core/search/SearchRequestor;
            0    4     5       monitor  Lorg/eclipse/core/runtime/IProgressMonitor;
    Exceptions:
      throws org.eclipse.core.runtime.CoreException
    MethodParameters:
              Name  Flags
      pattern       
      participants  
      scope         
      requestor     
      monitor       

  public void searchAllConstructorDeclarations(char[], char[], int, org.eclipse.jdt.core.search.IJavaSearchScope, org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor, int, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: ([C[CILorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessConstructorRequestor;ILorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=41, args_size=8
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // char[] packageName
        start local 2 // char[] typeName
        start local 3 // int typeMatchRule
        start local 4 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        start local 5 // org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor nameRequestor
        start local 6 // int waitingPolicy
        start local 7 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
         0: .line 609
            aload 2 /* typeName */
            ifnonnull 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.String
            dup
            aload 2 /* typeName */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals:
      StackMap stack: java.lang.String
         2: iload 3 /* typeMatchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.validateMatchRule:(Ljava/lang/String;I)I
            istore 8 /* validatedTypeMatchRule */
        start local 8 // int validatedTypeMatchRule
         3: .line 615
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 15
         4: .line 616
            ldc "BasicSearchEngine.searchAllConstructorDeclarations(char[], char[], int, IJavaSearchScope, IRestrictedAccessConstructorRequestor, int, IProgressMonitor)"
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         5: .line 617
            new java.lang.StringBuilder
            dup
            ldc "\t- package name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* packageName */
            ifnonnull 6
            ldc "null"
            goto 7
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder
         6: new java.lang.String
            dup
            aload 1 /* packageName */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder java.lang.String
         7: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         8: .line 618
            new java.lang.StringBuilder
            dup
            ldc "\t- type name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* typeName */
            ifnonnull 9
            ldc "null"
            goto 10
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         9: new java.lang.String
            dup
            aload 2 /* typeName */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder java.lang.String
        10: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        11: .line 619
            new java.lang.StringBuilder
            dup
            ldc "\t- type match rule: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* typeMatchRule */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getMatchRuleString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        12: .line 620
            iload 8 /* validatedTypeMatchRule */
            iload 3 /* typeMatchRule */
            if_icmpeq 14
        13: .line 621
            new java.lang.StringBuilder
            dup
            ldc "\t- validated type match rule: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 8 /* validatedTypeMatchRule */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getMatchRuleString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        14: .line 623
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "\t- scope: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* scope */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        15: .line 625
      StackMap locals:
      StackMap stack:
            iload 8 /* validatedTypeMatchRule */
            iconst_m1
            if_icmpne 19
        16: .line 930
            aload 7 /* progressMonitor */
            ifnull 18
        17: .line 931
            aload 7 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
        18: .line 625
      StackMap locals:
      StackMap stack:
            return
        19: .line 628
      StackMap locals:
      StackMap stack:
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getIndexManager:()Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
            astore 9 /* indexManager */
        start local 9 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        20: .line 629
            new org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern
            dup
        21: .line 630
            aload 1 /* packageName */
        22: .line 631
            aload 2 /* typeName */
        23: .line 632
            iload 8 /* validatedTypeMatchRule */
        24: .line 629
            invokespecial org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern.<init>:([C[CI)V
            astore 10 /* pattern */
        start local 10 // org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern pattern
        25: .line 635
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 11 /* workingCopyPaths */
        start local 11 // java.util.HashSet workingCopyPaths
        26: .line 636
            aconst_null
            astore 12 /* workingCopyPath */
        start local 12 // java.lang.String workingCopyPath
        27: .line 637
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getWorkingCopies:()[Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 13 /* copies */
        start local 13 // org.eclipse.jdt.core.ICompilationUnit[] copies
        28: .line 638
            aload 13 /* copies */
            ifnonnull 29
            iconst_0
            goto 30
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[]
      StackMap stack:
        29: aload 13 /* copies */
            arraylength
      StackMap locals:
      StackMap stack: int
        30: istore 14 /* copiesLength */
        start local 14 // int copiesLength
        31: .line 639
            aload 13 /* copies */
            ifnull 41
        32: .line 640
            iload 14 /* copiesLength */
            iconst_1
            if_icmpne 35
        33: .line 641
            aload 13 /* copies */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            astore 12 /* workingCopyPath */
        34: .line 642
            goto 41
        35: .line 643
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 15 /* i */
        start local 15 // int i
        36: goto 40
        37: .line 644
      StackMap locals: int
      StackMap stack:
            aload 13 /* copies */
            iload 15 /* i */
            aaload
            astore 16 /* workingCopy */
        start local 16 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        38: .line 645
            aload 11 /* workingCopyPaths */
            aload 16 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 16 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        39: .line 643
            iinc 15 /* i */ 1
      StackMap locals:
      StackMap stack:
        40: iload 15 /* i */
            iload 14 /* copiesLength */
            if_icmplt 37
        end local 15 // int i
        41: .line 649
      StackMap locals:
      StackMap stack:
            aload 12 /* workingCopyPath */
            astore 15 /* singleWkcpPath */
        start local 15 // java.lang.String singleWkcpPath
        42: .line 652
            new org.eclipse.jdt.internal.core.search.BasicSearchEngine$1
            dup
            aload 0 /* this */
            iload 14 /* copiesLength */
            aload 15 /* singleWkcpPath */
            aload 11 /* workingCopyPaths */
            aload 5 /* nameRequestor */
            invokespecial org.eclipse.jdt.internal.core.search.BasicSearchEngine$1.<init>:(Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;ILjava/lang/String;Ljava/util/HashSet;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessConstructorRequestor;)V
            astore 16 /* searchRequestor */
        start local 16 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor searchRequestor
        43: .line 718
            aload 7 /* progressMonitor */
            getstatic org.eclipse.jdt.internal.core.util.Messages.engine_searching:Ljava/lang/String;
            sipush 1000
            invokestatic org.eclipse.core.runtime.SubMonitor.convert:(Lorg/eclipse/core/runtime/IProgressMonitor;Ljava/lang/String;I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 17 /* subMonitor */
        start local 17 // org.eclipse.core.runtime.SubMonitor subMonitor
        44: .line 720
            aload 9 /* indexManager */
        45: .line 721
            new org.eclipse.jdt.internal.core.search.PatternSearchJob
            dup
        46: .line 722
            aload 10 /* pattern */
        47: .line 723
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getDefaultSearchParticipant:()Lorg/eclipse/jdt/core/search/SearchParticipant;
        48: .line 724
            aload 4 /* scope */
        49: .line 725
            aload 16 /* searchRequestor */
        50: .line 721
            invokespecial org.eclipse.jdt.internal.core.search.PatternSearchJob.<init>:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;)V
        51: .line 726
            iload 6 /* waitingPolicy */
        52: .line 727
            aload 17 /* subMonitor */
            sipush 1000
            iload 14 /* copiesLength */
            isub
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
        53: .line 720
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.performConcurrentJob:(Lorg/eclipse/jdt/internal/core/search/processing/IJob;ILorg/eclipse/core/runtime/IProgressMonitor;)Z
            pop
        54: .line 730
            aload 13 /* copies */
            ifnull 142
        55: .line 731
            iconst_0
            istore 18 /* i */
        start local 18 // int i
        56: goto 136
        57: .line 732
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int
      StackMap stack:
            aload 17 /* subMonitor */
            iconst_1
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 19 /* iterationMonitor */
        start local 19 // org.eclipse.core.runtime.SubMonitor iterationMonitor
        58: .line 733
            aload 13 /* copies */
            iload 18 /* i */
            aaload
            astore 20 /* workingCopy */
        start local 20 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        59: .line 734
            aload 4 /* scope */
            instanceof org.eclipse.jdt.internal.core.search.HierarchyScope
            ifeq 61
        60: .line 735
            aload 4 /* scope */
            checkcast org.eclipse.jdt.internal.core.search.HierarchyScope
            aload 20 /* workingCopy */
            aload 19 /* iterationMonitor */
            invokevirtual org.eclipse.jdt.internal.core.search.HierarchyScope.encloses:(Lorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IProgressMonitor;)Z
            ifne 62
            goto 135
        61: .line 737
      StackMap locals: org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit
      StackMap stack:
            aload 4 /* scope */
            aload 20 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.search.IJavaSearchScope.encloses:(Lorg/eclipse/jdt/core/IJavaElement;)Z
            ifne 62
            goto 135
        62: .line 740
      StackMap locals:
      StackMap stack:
            aload 20 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            astore 21 /* path */
        start local 21 // java.lang.String path
        63: .line 741
            aload 20 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.isConsistent:()Z
            ifeq 126
        64: .line 742
            aload 20 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPackageDeclarations:()[Lorg/eclipse/jdt/core/IPackageDeclaration;
            astore 22 /* packageDeclarations */
        start local 22 // org.eclipse.jdt.core.IPackageDeclaration[] packageDeclarations
        65: .line 743
            aload 22 /* packageDeclarations */
            arraylength
            ifne 66
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            goto 67
      StackMap locals: java.lang.String org.eclipse.jdt.core.IPackageDeclaration[]
      StackMap stack:
        66: aload 22 /* packageDeclarations */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.core.IPackageDeclaration.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
      StackMap locals:
      StackMap stack: char[]
        67: astore 23 /* packageDeclaration */
        start local 23 // char[] packageDeclaration
        68: .line 744
            aload 20 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getAllTypes:()[Lorg/eclipse/jdt/core/IType;
            astore 24 /* allTypes */
        start local 24 // org.eclipse.jdt.core.IType[] allTypes
        69: .line 745
            iconst_0
            istore 25 /* j */
        start local 25 // int j
        70: aload 24 /* allTypes */
            arraylength
            istore 26 /* allTypesLength */
        start local 26 // int allTypesLength
        71: goto 124
        72: .line 746
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int
      StackMap stack:
            aload 24 /* allTypes */
            iload 25 /* j */
            aaload
            astore 27 /* type */
        start local 27 // org.eclipse.jdt.core.IType type
        73: .line 747
            aload 27 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 28 /* simpleName */
        start local 28 // char[] simpleName
        74: .line 748
            aload 0 /* this */
            iconst_0
            aload 1 /* packageName */
            bipush 8
            aload 2 /* typeName */
            iload 8 /* validatedTypeMatchRule */
            iconst_0
            aload 23 /* packageDeclaration */
            aload 28 /* simpleName */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.match:(C[CI[CII[C[C)Z
            ifeq 123
            aload 27 /* type */
            invokeinterface org.eclipse.jdt.core.IType.isMember:()Z
            ifne 123
        75: .line 750
            aload 27 /* type */
            invokestatic org.eclipse.jdt.internal.compiler.ExtraFlags.getExtraFlags:(Lorg/eclipse/jdt/core/IType;)I
            istore 29 /* extraFlags */
        start local 29 // int extraFlags
        76: .line 752
            iconst_0
            istore 30 /* hasConstructor */
        start local 30 // boolean hasConstructor
        77: .line 754
            aload 27 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getMethods:()[Lorg/eclipse/jdt/core/IMethod;
            astore 31 /* methods */
        start local 31 // org.eclipse.jdt.core.IMethod[] methods
        78: .line 755
            iconst_0
            istore 32 /* k */
        start local 32 // int k
        79: goto 108
        80: .line 756
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int org.eclipse.jdt.core.IType char[] int int org.eclipse.jdt.core.IMethod[] int
      StackMap stack:
            aload 31 /* methods */
            iload 32 /* k */
            aaload
            astore 33 /* method */
        start local 33 // org.eclipse.jdt.core.IMethod method
        81: .line 757
            aload 33 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.isConstructor:()Z
            ifeq 107
        82: .line 758
            iconst_1
            istore 30 /* hasConstructor */
        83: .line 760
            aload 33 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getParameterNames:()[Ljava/lang/String;
            astore 34 /* stringParameterNames */
        start local 34 // java.lang.String[] stringParameterNames
        84: .line 761
            aload 33 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getParameterTypes:()[Ljava/lang/String;
            astore 35 /* stringParameterTypes */
        start local 35 // java.lang.String[] stringParameterTypes
        85: .line 762
            aload 34 /* stringParameterNames */
            arraylength
            istore 36 /* length */
        start local 36 // int length
        86: .line 763
            iload 36 /* length */
            anewarray char[]
            astore 37 /* parameterNames */
        start local 37 // char[][] parameterNames
        87: .line 764
            iload 36 /* length */
            anewarray char[]
            astore 38 /* parameterTypes */
        start local 38 // char[][] parameterTypes
        88: .line 765
            iconst_0
            istore 39 /* l */
        start local 39 // int l
        89: goto 93
        90: .line 766
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int org.eclipse.jdt.core.IType char[] int int org.eclipse.jdt.core.IMethod[] int org.eclipse.jdt.core.IMethod java.lang.String[] java.lang.String[] int char[][] char[][] int
      StackMap stack:
            aload 37 /* parameterNames */
            iload 39 /* l */
            aload 34 /* stringParameterNames */
            iload 39 /* l */
            aaload
            invokevirtual java.lang.String.toCharArray:()[C
            aastore
        91: .line 767
            aload 38 /* parameterTypes */
            iload 39 /* l */
            aload 35 /* stringParameterTypes */
            iload 39 /* l */
            aaload
            invokestatic org.eclipse.jdt.core.Signature.getTypeErasure:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            invokestatic org.eclipse.jdt.core.Signature.toCharArray:([C)[C
            aastore
        92: .line 765
            iinc 39 /* l */ 1
      StackMap locals:
      StackMap stack:
        93: iload 39 /* l */
            iload 36 /* length */
            if_icmplt 90
        end local 39 // int l
        94: .line 770
            aload 5 /* nameRequestor */
        95: .line 771
            aload 33 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getFlags:()I
        96: .line 772
            aload 28 /* simpleName */
        97: .line 773
            aload 37 /* parameterNames */
            arraylength
        98: .line 774
            aconst_null
        99: .line 775
            aload 38 /* parameterTypes */
       100: .line 776
            aload 37 /* parameterNames */
       101: .line 777
            aload 27 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getFlags:()I
       102: .line 778
            aload 23 /* packageDeclaration */
       103: .line 779
            iload 29 /* extraFlags */
       104: .line 780
            aload 21 /* path */
       105: .line 781
            aconst_null
       106: .line 770
            invokeinterface org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor.acceptConstructor:(I[CI[C[[C[[CI[CILjava/lang/String;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)V
        end local 38 // char[][] parameterTypes
        end local 37 // char[][] parameterNames
        end local 36 // int length
        end local 35 // java.lang.String[] stringParameterTypes
        end local 34 // java.lang.String[] stringParameterNames
        end local 33 // org.eclipse.jdt.core.IMethod method
       107: .line 755
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int org.eclipse.jdt.core.IType char[] int int org.eclipse.jdt.core.IMethod[] int
      StackMap stack:
            iinc 32 /* k */ 1
      StackMap locals:
      StackMap stack:
       108: iload 32 /* k */
            aload 31 /* methods */
            arraylength
            if_icmplt 80
        end local 32 // int k
       109: .line 785
            iload 30 /* hasConstructor */
            ifne 123
       110: .line 786
            aload 5 /* nameRequestor */
       111: .line 787
            iconst_1
       112: .line 788
            aload 28 /* simpleName */
       113: .line 789
            iconst_m1
       114: .line 790
            aconst_null
       115: .line 791
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR_CHAR:[[C
       116: .line 792
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR_CHAR:[[C
       117: .line 793
            aload 27 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getFlags:()I
       118: .line 794
            aload 23 /* packageDeclaration */
       119: .line 795
            iload 29 /* extraFlags */
       120: .line 796
            aload 21 /* path */
       121: .line 797
            aconst_null
       122: .line 786
            invokeinterface org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor.acceptConstructor:(I[CI[C[[C[[CI[CILjava/lang/String;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)V
        end local 31 // org.eclipse.jdt.core.IMethod[] methods
        end local 30 // boolean hasConstructor
        end local 29 // int extraFlags
        end local 28 // char[] simpleName
        end local 27 // org.eclipse.jdt.core.IType type
       123: .line 745
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int
      StackMap stack:
            iinc 25 /* j */ 1
      StackMap locals:
      StackMap stack:
       124: iload 25 /* j */
            iload 26 /* allTypesLength */
            if_icmplt 72
        end local 26 // int allTypesLength
        end local 25 // int j
        end local 24 // org.eclipse.jdt.core.IType[] allTypes
        end local 23 // char[] packageDeclaration
        end local 22 // org.eclipse.jdt.core.IPackageDeclaration[] packageDeclarations
       125: .line 801
            goto 135
       126: .line 802
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getParser:()Lorg/eclipse/jdt/internal/compiler/parser/Parser;
            astore 22 /* basicParser */
        start local 22 // org.eclipse.jdt.internal.compiler.parser.Parser basicParser
       127: .line 803
            aload 20 /* workingCopy */
            checkcast org.eclipse.jdt.internal.compiler.env.ICompilationUnit
            astore 23 /* unit */
        start local 23 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit unit
       128: .line 804
            new org.eclipse.jdt.internal.compiler.CompilationResult
            dup
            aload 23 /* unit */
            iconst_0
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.compilerOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.maxProblemsPerUnit:I
            invokespecial org.eclipse.jdt.internal.compiler.CompilationResult.<init>:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;III)V
            astore 24 /* compilationUnitResult */
        start local 24 // org.eclipse.jdt.internal.compiler.CompilationResult compilationUnitResult
       129: .line 805
            aload 22 /* basicParser */
            aload 23 /* unit */
            aload 24 /* compilationUnitResult */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Parser.dietParse:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;Lorg/eclipse/jdt/internal/compiler/CompilationResult;)Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            astore 25 /* parsedUnit */
        start local 25 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
       130: .line 806
            aload 25 /* parsedUnit */
            ifnull 135
       131: .line 807
            aload 25 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.currentPackage:Lorg/eclipse/jdt/internal/compiler/ast/ImportReference;
            ifnonnull 132
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            goto 133
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.internal.compiler.parser.Parser org.eclipse.jdt.internal.compiler.env.ICompilationUnit org.eclipse.jdt.internal.compiler.CompilationResult org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration
      StackMap stack:
       132: aload 25 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.currentPackage:Lorg/eclipse/jdt/internal/compiler/ast/ImportReference;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.ImportReference.getImportName:()[[C
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([[CC)[C
      StackMap locals:
      StackMap stack: char[]
       133: astore 26 /* packageDeclaration */
        start local 26 // char[] packageDeclaration
       134: .line 924
            aload 25 /* parsedUnit */
            new org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllConstructorDeclarationsVisitor
            dup
            aload 0 /* this */
            aload 1 /* packageName */
            aload 2 /* typeName */
            iload 8 /* validatedTypeMatchRule */
            aload 26 /* packageDeclaration */
            aload 5 /* nameRequestor */
            aload 21 /* path */
            invokespecial org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllConstructorDeclarationsVisitor.<init>:(Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;[C[CI[CLorg/eclipse/jdt/internal/core/search/IRestrictedAccessConstructorRequestor;Ljava/lang/String;)V
            aload 25 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.scope:Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;)V
        end local 26 // char[] packageDeclaration
        end local 25 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
        end local 24 // org.eclipse.jdt.internal.compiler.CompilationResult compilationUnitResult
        end local 23 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit unit
        end local 22 // org.eclipse.jdt.internal.compiler.parser.Parser basicParser
        end local 21 // java.lang.String path
        end local 20 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        end local 19 // org.eclipse.core.runtime.SubMonitor iterationMonitor
       135: .line 731
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int
      StackMap stack:
            iinc 18 /* i */ 1
      StackMap locals:
      StackMap stack:
       136: iload 18 /* i */
            iload 14 /* copiesLength */
            if_icmplt 57
        end local 18 // int i
        end local 17 // org.eclipse.core.runtime.SubMonitor subMonitor
        end local 16 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor searchRequestor
        end local 15 // java.lang.String singleWkcpPath
        end local 14 // int copiesLength
        end local 13 // org.eclipse.jdt.core.ICompilationUnit[] copies
        end local 12 // java.lang.String workingCopyPath
        end local 11 // java.util.HashSet workingCopyPaths
        end local 10 // org.eclipse.jdt.internal.core.search.matching.ConstructorDeclarationPattern pattern
        end local 9 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        end local 8 // int validatedTypeMatchRule
       137: .line 929
            goto 142
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor
      StackMap stack: java.lang.Throwable
       138: astore 40
       139: .line 930
            aload 7 /* progressMonitor */
            ifnull 141
       140: .line 931
            aload 7 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
       141: .line 933
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor top top top top top top top top top top top top top top top top top top top top top top top top top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 40
            athrow
       142: .line 930
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor int org.eclipse.core.runtime.IProgressMonitor
      StackMap stack:
            aload 7 /* progressMonitor */
            ifnull 144
       143: .line 931
            aload 7 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
       144: .line 934
      StackMap locals:
      StackMap stack:
            return
        end local 7 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
        end local 6 // int waitingPolicy
        end local 5 // org.eclipse.jdt.internal.core.search.IRestrictedAccessConstructorRequestor nameRequestor
        end local 4 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        end local 3 // int typeMatchRule
        end local 2 // char[] typeName
        end local 1 // char[] packageName
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0  145     0                    this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0  145     1             packageName  [C
            0  145     2                typeName  [C
            0  145     3           typeMatchRule  I
            0  145     4                   scope  Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            0  145     5           nameRequestor  Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessConstructorRequestor;
            0  145     6           waitingPolicy  I
            0  145     7         progressMonitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            3  137     8  validatedTypeMatchRule  I
           20  137     9            indexManager  Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
           25  137    10                 pattern  Lorg/eclipse/jdt/internal/core/search/matching/ConstructorDeclarationPattern;
           26  137    11        workingCopyPaths  Ljava/util/HashSet;
           27  137    12         workingCopyPath  Ljava/lang/String;
           28  137    13                  copies  [Lorg/eclipse/jdt/core/ICompilationUnit;
           31  137    14            copiesLength  I
           36   41    15                       i  I
           38   39    16             workingCopy  Lorg/eclipse/jdt/core/ICompilationUnit;
           42  137    15          singleWkcpPath  Ljava/lang/String;
           43  137    16         searchRequestor  Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;
           44  137    17              subMonitor  Lorg/eclipse/core/runtime/SubMonitor;
           56  137    18                       i  I
           58  135    19        iterationMonitor  Lorg/eclipse/core/runtime/SubMonitor;
           59  135    20             workingCopy  Lorg/eclipse/jdt/core/ICompilationUnit;
           63  135    21                    path  Ljava/lang/String;
           65  125    22     packageDeclarations  [Lorg/eclipse/jdt/core/IPackageDeclaration;
           68  125    23      packageDeclaration  [C
           69  125    24                allTypes  [Lorg/eclipse/jdt/core/IType;
           70  125    25                       j  I
           71  125    26          allTypesLength  I
           73  123    27                    type  Lorg/eclipse/jdt/core/IType;
           74  123    28              simpleName  [C
           76  123    29              extraFlags  I
           77  123    30          hasConstructor  Z
           78  123    31                 methods  [Lorg/eclipse/jdt/core/IMethod;
           79  109    32                       k  I
           81  107    33                  method  Lorg/eclipse/jdt/core/IMethod;
           84  107    34    stringParameterNames  [Ljava/lang/String;
           85  107    35    stringParameterTypes  [Ljava/lang/String;
           86  107    36                  length  I
           87  107    37          parameterNames  [[C
           88  107    38          parameterTypes  [[C
           89   94    39                       l  I
          127  135    22             basicParser  Lorg/eclipse/jdt/internal/compiler/parser/Parser;
          128  135    23                    unit  Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;
          129  135    24   compilationUnitResult  Lorg/eclipse/jdt/internal/compiler/CompilationResult;
          130  135    25              parsedUnit  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
          134  135    26      packageDeclaration  [C
      Exception table:
        from    to  target  type
           0    16     138  any
          19   138     138  any
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                 Name  Flags
      packageName      final
      typeName         final
      typeMatchRule    final
      scope            
      nameRequestor    final
      waitingPolicy    
      progressMonitor  

  public void searchAllMethodNames(char[], int, char[], int, org.eclipse.jdt.core.search.IJavaSearchScope, org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor, int, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: ([CI[CILorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;ILorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=33, args_size=9
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // char[] qualifier
        start local 2 // int qualifierMatchRule
        start local 3 // char[] methodName
        start local 4 // int methodMatchRule
        start local 5 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        start local 6 // org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor nameRequestor
        start local 7 // int waitingPolicy
        start local 8 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
         0: .line 957
            aload 3 /* methodName */
            ifnonnull 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.String
            dup
            aload 3 /* methodName */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals:
      StackMap stack: java.lang.String
         2: iload 4 /* methodMatchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.validateMatchRule:(Ljava/lang/String;I)I
            istore 9 /* validatedMethodMatchRule */
        start local 9 // int validatedMethodMatchRule
         3: .line 959
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 15
         4: .line 960
            ldc "BasicSearchEngine.searchAllMethodDeclarations(char[] qualifier,  char[] methodName, int methodMatchRule, IJavaSearchScope, IRestrictedAccessConstructorRequestor, int waitingPolicy, IProgressMonitor)"
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         5: .line 962
            new java.lang.StringBuilder
            dup
            ldc "\t- qualifier name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* qualifier */
            ifnonnull 6
            ldc "null"
            goto 7
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder
         6: new java.lang.String
            dup
            aload 1 /* qualifier */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder java.lang.String
         7: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         8: .line 963
            new java.lang.StringBuilder
            dup
            ldc "\t- method name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* methodName */
            ifnonnull 9
            ldc "null"
            goto 10
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         9: new java.lang.String
            dup
            aload 3 /* methodName */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder java.lang.String
        10: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        11: .line 964
            new java.lang.StringBuilder
            dup
            ldc "\t- method match rule: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* methodMatchRule */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getMatchRuleString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        12: .line 965
            iload 9 /* validatedMethodMatchRule */
            iload 4 /* methodMatchRule */
            if_icmpeq 14
        13: .line 966
            new java.lang.StringBuilder
            dup
            ldc "\t- validated method match rule: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 9 /* validatedMethodMatchRule */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getMatchRuleString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        14: .line 968
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "\t- scope: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* scope */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        15: .line 970
      StackMap locals:
      StackMap stack:
            iload 9 /* validatedMethodMatchRule */
            iconst_m1
            if_icmpne 16
            return
        16: .line 973
      StackMap locals:
      StackMap stack:
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getIndexManager:()Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
            astore 10 /* indexManager */
        start local 10 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        17: .line 974
            new org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern
            dup
            aload 1 /* qualifier */
            aload 3 /* methodName */
            iload 4 /* methodMatchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern.<init>:([C[CI)V
            astore 11 /* pattern */
        start local 11 // org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern pattern
        18: .line 977
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 12 /* workingCopyPaths */
        start local 12 // java.util.HashSet workingCopyPaths
        19: .line 978
            aconst_null
            astore 13 /* workingCopyPath */
        start local 13 // java.lang.String workingCopyPath
        20: .line 979
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getWorkingCopies:()[Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 14 /* copies */
        start local 14 // org.eclipse.jdt.core.ICompilationUnit[] copies
        21: .line 980
            aload 14 /* copies */
            ifnonnull 22
            iconst_0
            goto 23
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[]
      StackMap stack:
        22: aload 14 /* copies */
            arraylength
      StackMap locals:
      StackMap stack: int
        23: istore 15 /* copiesLength */
        start local 15 // int copiesLength
        24: .line 981
            aload 14 /* copies */
            ifnull 34
        25: .line 982
            iload 15 /* copiesLength */
            iconst_1
            if_icmpne 28
        26: .line 983
            aload 14 /* copies */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            astore 13 /* workingCopyPath */
        27: .line 984
            goto 34
        28: .line 985
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 16 /* i */
        start local 16 // int i
        29: goto 33
        30: .line 986
      StackMap locals: int
      StackMap stack:
            aload 14 /* copies */
            iload 16 /* i */
            aaload
            astore 17 /* workingCopy */
        start local 17 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        31: .line 987
            aload 12 /* workingCopyPaths */
            aload 17 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 17 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        32: .line 985
            iinc 16 /* i */ 1
      StackMap locals:
      StackMap stack:
        33: iload 16 /* i */
            iload 15 /* copiesLength */
            if_icmplt 30
        end local 16 // int i
        34: .line 991
      StackMap locals:
      StackMap stack:
            aload 13 /* workingCopyPath */
            astore 16 /* singleWkcpPath */
        start local 16 // java.lang.String singleWkcpPath
        35: .line 994
            new org.eclipse.jdt.internal.core.search.BasicSearchEngine$2
            dup
            aload 0 /* this */
            iload 15 /* copiesLength */
            aload 16 /* singleWkcpPath */
            aload 12 /* workingCopyPaths */
            aload 1 /* qualifier */
            iload 2 /* qualifierMatchRule */
            aload 3 /* methodName */
            iload 4 /* methodMatchRule */
            aload 6 /* nameRequestor */
            invokespecial org.eclipse.jdt.internal.core.search.BasicSearchEngine$2.<init>:(Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;ILjava/lang/String;Ljava/util/HashSet;[CI[CILorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;)V
            astore 17 /* searchRequestor */
        start local 17 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor searchRequestor
        36: .line 1066
            aload 8 /* progressMonitor */
            getstatic org.eclipse.jdt.internal.core.util.Messages.engine_searching:Ljava/lang/String;
            sipush 1000
            invokestatic org.eclipse.core.runtime.SubMonitor.convert:(Lorg/eclipse/core/runtime/IProgressMonitor;Ljava/lang/String;I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 18 /* subMonitor */
        start local 18 // org.eclipse.core.runtime.SubMonitor subMonitor
        37: .line 1068
            aload 10 /* indexManager */
        38: .line 1069
            new org.eclipse.jdt.internal.core.search.PatternSearchJob
            dup
        39: .line 1070
            aload 11 /* pattern */
        40: .line 1071
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getDefaultSearchParticipant:()Lorg/eclipse/jdt/core/search/SearchParticipant;
        41: .line 1072
            aload 5 /* scope */
        42: .line 1073
            aload 17 /* searchRequestor */
        43: .line 1069
            invokespecial org.eclipse.jdt.internal.core.search.PatternSearchJob.<init>:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;)V
        44: .line 1074
            iload 7 /* waitingPolicy */
        45: .line 1075
            aload 18 /* subMonitor */
            sipush 1000
            iload 15 /* copiesLength */
            isub
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
        46: .line 1068
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.performConcurrentJob:(Lorg/eclipse/jdt/internal/core/search/processing/IJob;ILorg/eclipse/core/runtime/IProgressMonitor;)Z
            pop
        47: .line 1078
            aload 14 /* copies */
            ifnull 91
        48: .line 1079
            iconst_0
            istore 19 /* i */
        start local 19 // int i
        49: goto 90
        50: .line 1080
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int
      StackMap stack:
            aload 18 /* subMonitor */
            iconst_1
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 20 /* iterationMonitor */
        start local 20 // org.eclipse.core.runtime.SubMonitor iterationMonitor
        51: .line 1081
            aload 14 /* copies */
            iload 19 /* i */
            aaload
            astore 21 /* workingCopy */
        start local 21 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        52: .line 1082
            aload 5 /* scope */
            instanceof org.eclipse.jdt.internal.core.search.HierarchyScope
            ifeq 54
        53: .line 1083
            aload 5 /* scope */
            checkcast org.eclipse.jdt.internal.core.search.HierarchyScope
            aload 21 /* workingCopy */
            aload 20 /* iterationMonitor */
            invokevirtual org.eclipse.jdt.internal.core.search.HierarchyScope.encloses:(Lorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IProgressMonitor;)Z
            ifne 55
            goto 89
        54: .line 1085
      StackMap locals: org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit
      StackMap stack:
            aload 5 /* scope */
            aload 21 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.search.IJavaSearchScope.encloses:(Lorg/eclipse/jdt/core/IJavaElement;)Z
            ifne 55
            goto 89
        55: .line 1088
      StackMap locals:
      StackMap stack:
            aload 21 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            astore 22 /* path */
        start local 22 // java.lang.String path
        56: .line 1089
            aload 21 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.isConsistent:()Z
            ifeq 80
        57: .line 1090
            aload 21 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPackageDeclarations:()[Lorg/eclipse/jdt/core/IPackageDeclaration;
            astore 23 /* packageDeclarations */
        start local 23 // org.eclipse.jdt.core.IPackageDeclaration[] packageDeclarations
        58: .line 1091
            aload 23 /* packageDeclarations */
            arraylength
            ifne 59
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            goto 60
      StackMap locals: java.lang.String org.eclipse.jdt.core.IPackageDeclaration[]
      StackMap stack:
        59: aload 23 /* packageDeclarations */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.core.IPackageDeclaration.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
      StackMap locals:
      StackMap stack: char[]
        60: astore 24 /* packageDeclaration */
        start local 24 // char[] packageDeclaration
        61: .line 1093
            aload 21 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getAllTypes:()[Lorg/eclipse/jdt/core/IType;
            astore 25 /* allTypes */
        start local 25 // org.eclipse.jdt.core.IType[] allTypes
        62: .line 1094
            iconst_0
            istore 26 /* j */
        start local 26 // int j
        63: aload 25 /* allTypes */
            arraylength
            istore 27 /* allTypesLength */
        start local 27 // int allTypesLength
        64: goto 78
        65: .line 1095
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int
      StackMap stack:
            aload 25 /* allTypes */
            iload 26 /* j */
            aaload
            astore 28 /* type */
        start local 28 // org.eclipse.jdt.core.IType type
        66: .line 1096
            aload 28 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getParent:()Lorg/eclipse/jdt/core/IJavaElement;
            astore 29 /* parent */
        start local 29 // org.eclipse.jdt.core.IJavaElement parent
        67: .line 1097
            aload 29 /* parent */
            instanceof org.eclipse.jdt.core.IType
            ifeq 68
            aload 29 /* parent */
            checkcast org.eclipse.jdt.core.IType
            bipush 46
            invokeinterface org.eclipse.jdt.core.IType.getTypeQualifiedName:(C)Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            goto 69
      StackMap locals: org.eclipse.jdt.core.IType org.eclipse.jdt.core.IJavaElement
      StackMap stack:
        68: getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
      StackMap locals:
      StackMap stack: char[]
        69: astore 30 /* rDeclaringQualification */
        start local 30 // char[] rDeclaringQualification
        70: .line 1098
            aload 28 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 31 /* rSimpleName */
        start local 31 // char[] rSimpleName
        71: .line 1099
            aload 24 /* packageDeclaration */
            bipush 46
            aload 30 /* rDeclaringQualification */
            bipush 46
            aload 31 /* rSimpleName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatNonEmpty:([CC[CC[C)[C
            astore 32 /* q */
        start local 32 // char[] q
        72: .line 1100
            aload 0 /* this */
            aload 1 /* qualifier */
            iload 2 /* qualifierMatchRule */
            aload 32 /* q */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.match:([CI[C)Z
            ifne 74
        73: .line 1101
            goto 77
        74: .line 1102
      StackMap locals: char[] char[] char[]
      StackMap stack:
            aload 0 /* this */
            aload 3 /* methodName */
            iload 4 /* methodMatchRule */
            aload 6 /* nameRequestor */
            aload 22 /* path */
        75: .line 1103
            aload 24 /* packageDeclaration */
            aload 28 /* type */
            aload 30 /* rDeclaringQualification */
            aload 31 /* rSimpleName */
        76: .line 1102
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.reportMatchingMethods:([CILorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;Ljava/lang/String;[CLorg/eclipse/jdt/core/IType;[C[C)V
        end local 32 // char[] q
        end local 31 // char[] rSimpleName
        end local 30 // char[] rDeclaringQualification
        end local 29 // org.eclipse.jdt.core.IJavaElement parent
        end local 28 // org.eclipse.jdt.core.IType type
        77: .line 1094
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int
      StackMap stack:
            iinc 26 /* j */ 1
      StackMap locals:
      StackMap stack:
        78: iload 26 /* j */
            iload 27 /* allTypesLength */
            if_icmplt 65
        end local 27 // int allTypesLength
        end local 26 // int j
        end local 25 // org.eclipse.jdt.core.IType[] allTypes
        end local 24 // char[] packageDeclaration
        end local 23 // org.eclipse.jdt.core.IPackageDeclaration[] packageDeclarations
        79: .line 1105
            goto 89
        80: .line 1106
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getParser:()Lorg/eclipse/jdt/internal/compiler/parser/Parser;
            astore 23 /* basicParser */
        start local 23 // org.eclipse.jdt.internal.compiler.parser.Parser basicParser
        81: .line 1107
            aload 21 /* workingCopy */
            checkcast org.eclipse.jdt.internal.compiler.env.ICompilationUnit
            astore 24 /* unit */
        start local 24 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit unit
        82: .line 1108
            new org.eclipse.jdt.internal.compiler.CompilationResult
            dup
            aload 24 /* unit */
            iconst_0
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.compilerOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.maxProblemsPerUnit:I
            invokespecial org.eclipse.jdt.internal.compiler.CompilationResult.<init>:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;III)V
            astore 25 /* compilationUnitResult */
        start local 25 // org.eclipse.jdt.internal.compiler.CompilationResult compilationUnitResult
        83: .line 1109
            aload 23 /* basicParser */
            aload 24 /* unit */
            aload 25 /* compilationUnitResult */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Parser.dietParse:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;Lorg/eclipse/jdt/internal/compiler/CompilationResult;)Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            astore 26 /* parsedUnit */
        start local 26 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
        84: .line 1110
            aload 26 /* parsedUnit */
            ifnull 89
        85: .line 1111
            aload 26 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.currentPackage:Lorg/eclipse/jdt/internal/compiler/ast/ImportReference;
            ifnonnull 86
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            goto 87
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.internal.compiler.parser.Parser org.eclipse.jdt.internal.compiler.env.ICompilationUnit org.eclipse.jdt.internal.compiler.CompilationResult org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration
      StackMap stack:
        86: aload 26 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.currentPackage:Lorg/eclipse/jdt/internal/compiler/ast/ImportReference;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.ImportReference.getImportName:()[[C
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([[CC)[C
      StackMap locals:
      StackMap stack: char[]
        87: astore 27 /* packageDeclaration */
        start local 27 // char[] packageDeclaration
        88: .line 1193
            aload 26 /* parsedUnit */
            new org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllMethodDeclarationVisitor
            dup
            aload 0 /* this */
            aload 21 /* workingCopy */
            aload 27 /* packageDeclaration */
            aload 1 /* qualifier */
            iload 2 /* qualifierMatchRule */
            aload 3 /* methodName */
            iload 4 /* methodMatchRule */
            aload 22 /* path */
            aload 6 /* nameRequestor */
            invokespecial org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllMethodDeclarationVisitor.<init>:(Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;Lorg/eclipse/jdt/core/ICompilationUnit;[C[CI[CILjava/lang/String;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;)V
            aload 26 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.scope:Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;)V
        end local 27 // char[] packageDeclaration
        end local 26 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
        end local 25 // org.eclipse.jdt.internal.compiler.CompilationResult compilationUnitResult
        end local 24 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit unit
        end local 23 // org.eclipse.jdt.internal.compiler.parser.Parser basicParser
        end local 22 // java.lang.String path
        end local 21 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        end local 20 // org.eclipse.core.runtime.SubMonitor iterationMonitor
        89: .line 1079
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int
      StackMap stack:
            iinc 19 /* i */ 1
      StackMap locals:
      StackMap stack:
        90: iload 19 /* i */
            iload 15 /* copiesLength */
            if_icmplt 50
        end local 19 // int i
        91: .line 1198
      StackMap locals:
      StackMap stack:
            return
        end local 18 // org.eclipse.core.runtime.SubMonitor subMonitor
        end local 17 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor searchRequestor
        end local 16 // java.lang.String singleWkcpPath
        end local 15 // int copiesLength
        end local 14 // org.eclipse.jdt.core.ICompilationUnit[] copies
        end local 13 // java.lang.String workingCopyPath
        end local 12 // java.util.HashSet workingCopyPaths
        end local 11 // org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern pattern
        end local 10 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        end local 9 // int validatedMethodMatchRule
        end local 8 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
        end local 7 // int waitingPolicy
        end local 6 // org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor nameRequestor
        end local 5 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        end local 4 // int methodMatchRule
        end local 3 // char[] methodName
        end local 2 // int qualifierMatchRule
        end local 1 // char[] qualifier
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   92     0                      this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0   92     1                 qualifier  [C
            0   92     2        qualifierMatchRule  I
            0   92     3                methodName  [C
            0   92     4           methodMatchRule  I
            0   92     5                     scope  Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            0   92     6             nameRequestor  Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;
            0   92     7             waitingPolicy  I
            0   92     8           progressMonitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            3   92     9  validatedMethodMatchRule  I
           17   92    10              indexManager  Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
           18   92    11                   pattern  Lorg/eclipse/jdt/internal/core/search/matching/MethodDeclarationPattern;
           19   92    12          workingCopyPaths  Ljava/util/HashSet;
           20   92    13           workingCopyPath  Ljava/lang/String;
           21   92    14                    copies  [Lorg/eclipse/jdt/core/ICompilationUnit;
           24   92    15              copiesLength  I
           29   34    16                         i  I
           31   32    17               workingCopy  Lorg/eclipse/jdt/core/ICompilationUnit;
           35   92    16            singleWkcpPath  Ljava/lang/String;
           36   92    17           searchRequestor  Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;
           37   92    18                subMonitor  Lorg/eclipse/core/runtime/SubMonitor;
           49   91    19                         i  I
           51   89    20          iterationMonitor  Lorg/eclipse/core/runtime/SubMonitor;
           52   89    21               workingCopy  Lorg/eclipse/jdt/core/ICompilationUnit;
           56   89    22                      path  Ljava/lang/String;
           58   79    23       packageDeclarations  [Lorg/eclipse/jdt/core/IPackageDeclaration;
           61   79    24        packageDeclaration  [C
           62   79    25                  allTypes  [Lorg/eclipse/jdt/core/IType;
           63   79    26                         j  I
           64   79    27            allTypesLength  I
           66   77    28                      type  Lorg/eclipse/jdt/core/IType;
           67   77    29                    parent  Lorg/eclipse/jdt/core/IJavaElement;
           70   77    30   rDeclaringQualification  [C
           71   77    31               rSimpleName  [C
           72   77    32                         q  [C
           81   89    23               basicParser  Lorg/eclipse/jdt/internal/compiler/parser/Parser;
           82   89    24                      unit  Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;
           83   89    25     compilationUnitResult  Lorg/eclipse/jdt/internal/compiler/CompilationResult;
           84   89    26                parsedUnit  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
           88   89    27        packageDeclaration  [C
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                    Name  Flags
      qualifier           final
      qualifierMatchRule  final
      methodName          final
      methodMatchRule     final
      scope               
      nameRequestor       final
      waitingPolicy       
      progressMonitor     

  public void searchAllMethodNames(char[], int, char[], int, char[], int, char[], int, org.eclipse.jdt.core.search.IJavaSearchScope, org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor, int, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: ([CI[CI[CI[CILorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;ILorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=15, locals=37, args_size=13
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // char[] packageName
        start local 2 // int pkgMatchRule
        start local 3 // char[] declaringQualification
        start local 4 // int declQualificationMatchRule
        start local 5 // char[] declaringSimpleName
        start local 6 // int declSimpleNameMatchRule
        start local 7 // char[] methodName
        start local 8 // int methodMatchRule
        start local 9 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        start local 10 // org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor nameRequestor
        start local 11 // int waitingPolicy
        start local 12 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
         0: .line 1225
            aload 7 /* methodName */
            ifnonnull 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.String
            dup
            aload 7 /* methodName */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals:
      StackMap stack: java.lang.String
         2: iload 8 /* methodMatchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.validateMatchRule:(Ljava/lang/String;I)I
            istore 13 /* validatedMethodMatchRule */
        start local 13 // int validatedMethodMatchRule
         3: .line 1227
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 21
         4: .line 1228
            ldc "BasicSearchEngine.searchAllMethodDeclarations(char[] packageName, char[] declaringQualification, char[] declaringSimpleName, char[] methodName, int methodMatchRule, IJavaSearchScope, IRestrictedAccessConstructorRequestor, int waitingPolicy, IProgressMonitor)"
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         5: .line 1230
            new java.lang.StringBuilder
            dup
            ldc "\t- package name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* packageName */
            ifnonnull 6
            ldc "null"
            goto 7
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder
         6: new java.lang.String
            dup
            aload 1 /* packageName */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder java.lang.String
         7: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         8: .line 1231
            new java.lang.StringBuilder
            dup
            ldc "\t- declaringQualification name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* declaringQualification */
            ifnonnull 9
            ldc "null"
            goto 10
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         9: new java.lang.String
            dup
            aload 3 /* declaringQualification */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder java.lang.String
        10: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        11: .line 1232
            new java.lang.StringBuilder
            dup
            ldc "\t- declaringSimple name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* declaringSimpleName */
            ifnonnull 12
            ldc "null"
            goto 13
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
        12: new java.lang.String
            dup
            aload 5 /* declaringSimpleName */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder java.lang.String
        13: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        14: .line 1233
            new java.lang.StringBuilder
            dup
            ldc "\t- method name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* methodName */
            ifnonnull 15
            ldc "null"
            goto 16
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
        15: new java.lang.String
            dup
            aload 7 /* methodName */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder java.lang.String
        16: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        17: .line 1234
            new java.lang.StringBuilder
            dup
            ldc "\t- method match rule: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 8 /* methodMatchRule */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getMatchRuleString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        18: .line 1235
            iload 13 /* validatedMethodMatchRule */
            iload 8 /* methodMatchRule */
            if_icmpeq 20
        19: .line 1236
            new java.lang.StringBuilder
            dup
            ldc "\t- validated method match rule: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 13 /* validatedMethodMatchRule */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getMatchRuleString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        20: .line 1238
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "\t- scope: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* scope */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        21: .line 1240
      StackMap locals:
      StackMap stack:
            iload 13 /* validatedMethodMatchRule */
            iconst_m1
            if_icmpne 22
            return
        22: .line 1243
      StackMap locals:
      StackMap stack:
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getIndexManager:()Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
            astore 14 /* indexManager */
        start local 14 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        23: .line 1244
            new org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern
            dup
            aload 1 /* packageName */
            aload 3 /* declaringQualification */
            aload 5 /* declaringSimpleName */
            aload 7 /* methodName */
            iload 8 /* methodMatchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern.<init>:([C[C[C[CI)V
            astore 15 /* pattern */
        start local 15 // org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern pattern
        24: .line 1247
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 16 /* workingCopyPaths */
        start local 16 // java.util.HashSet workingCopyPaths
        25: .line 1248
            aconst_null
            astore 17 /* workingCopyPath */
        start local 17 // java.lang.String workingCopyPath
        26: .line 1249
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getWorkingCopies:()[Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 18 /* copies */
        start local 18 // org.eclipse.jdt.core.ICompilationUnit[] copies
        27: .line 1250
            aload 18 /* copies */
            ifnonnull 28
            iconst_0
            goto 29
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[]
      StackMap stack:
        28: aload 18 /* copies */
            arraylength
      StackMap locals:
      StackMap stack: int
        29: istore 19 /* copiesLength */
        start local 19 // int copiesLength
        30: .line 1251
            aload 18 /* copies */
            ifnull 40
        31: .line 1252
            iload 19 /* copiesLength */
            iconst_1
            if_icmpne 34
        32: .line 1253
            aload 18 /* copies */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            astore 17 /* workingCopyPath */
        33: .line 1254
            goto 40
        34: .line 1255
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 20 /* i */
        start local 20 // int i
        35: goto 39
        36: .line 1256
      StackMap locals: int
      StackMap stack:
            aload 18 /* copies */
            iload 20 /* i */
            aaload
            astore 21 /* workingCopy */
        start local 21 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        37: .line 1257
            aload 16 /* workingCopyPaths */
            aload 21 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 21 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        38: .line 1255
            iinc 20 /* i */ 1
      StackMap locals:
      StackMap stack:
        39: iload 20 /* i */
            iload 19 /* copiesLength */
            if_icmplt 36
        end local 20 // int i
        40: .line 1261
      StackMap locals:
      StackMap stack:
            aload 17 /* workingCopyPath */
            astore 20 /* singleWkcpPath */
        start local 20 // java.lang.String singleWkcpPath
        41: .line 1264
            new org.eclipse.jdt.internal.core.search.BasicSearchEngine$3
            dup
            aload 0 /* this */
            iload 19 /* copiesLength */
            aload 20 /* singleWkcpPath */
            aload 16 /* workingCopyPaths */
            aload 1 /* packageName */
            iload 2 /* pkgMatchRule */
            aload 3 /* declaringQualification */
            iload 4 /* declQualificationMatchRule */
            aload 5 /* declaringSimpleName */
            iload 6 /* declSimpleNameMatchRule */
            aload 7 /* methodName */
            iload 8 /* methodMatchRule */
            aload 10 /* nameRequestor */
            invokespecial org.eclipse.jdt.internal.core.search.BasicSearchEngine$3.<init>:(Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;ILjava/lang/String;Ljava/util/HashSet;[CI[CI[CI[CILorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;)V
            astore 21 /* searchRequestor */
        start local 21 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor searchRequestor
        42: .line 1336
            aload 12 /* progressMonitor */
            getstatic org.eclipse.jdt.internal.core.util.Messages.engine_searching:Ljava/lang/String;
            sipush 1000
            invokestatic org.eclipse.core.runtime.SubMonitor.convert:(Lorg/eclipse/core/runtime/IProgressMonitor;Ljava/lang/String;I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 22 /* subMonitor */
        start local 22 // org.eclipse.core.runtime.SubMonitor subMonitor
        43: .line 1338
            aload 14 /* indexManager */
        44: .line 1339
            new org.eclipse.jdt.internal.core.search.PatternSearchJob
            dup
        45: .line 1340
            aload 15 /* pattern */
        46: .line 1341
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getDefaultSearchParticipant:()Lorg/eclipse/jdt/core/search/SearchParticipant;
        47: .line 1342
            aload 9 /* scope */
        48: .line 1343
            aload 21 /* searchRequestor */
        49: .line 1339
            invokespecial org.eclipse.jdt.internal.core.search.PatternSearchJob.<init>:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;)V
        50: .line 1344
            iload 11 /* waitingPolicy */
        51: .line 1345
            aload 22 /* subMonitor */
            sipush 1000
            iload 19 /* copiesLength */
            isub
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
        52: .line 1338
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.performConcurrentJob:(Lorg/eclipse/jdt/internal/core/search/processing/IJob;ILorg/eclipse/core/runtime/IProgressMonitor;)Z
            pop
        53: .line 1348
            aload 18 /* copies */
            ifnull 103
        54: .line 1349
            iload 2 /* pkgMatchRule */
            bipush 8
            iand
            ifeq 55
            iconst_1
            goto 56
      StackMap locals: java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor
      StackMap stack:
        55: iconst_0
      StackMap locals:
      StackMap stack: int
        56: istore 23 /* isPkgCaseSensitive */
        start local 23 // boolean isPkgCaseSensitive
        57: .line 1350
            iconst_0
            istore 24 /* i */
        start local 24 // int i
        58: goto 102
        59: .line 1351
      StackMap locals: int int
      StackMap stack:
            aload 22 /* subMonitor */
            iconst_1
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 25 /* iterationMonitor */
        start local 25 // org.eclipse.core.runtime.SubMonitor iterationMonitor
        60: .line 1352
            aload 18 /* copies */
            iload 24 /* i */
            aaload
            astore 26 /* workingCopy */
        start local 26 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        61: .line 1353
            aload 9 /* scope */
            instanceof org.eclipse.jdt.internal.core.search.HierarchyScope
            ifeq 63
        62: .line 1354
            aload 9 /* scope */
            checkcast org.eclipse.jdt.internal.core.search.HierarchyScope
            aload 26 /* workingCopy */
            aload 25 /* iterationMonitor */
            invokevirtual org.eclipse.jdt.internal.core.search.HierarchyScope.encloses:(Lorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IProgressMonitor;)Z
            ifne 64
            goto 101
        63: .line 1356
      StackMap locals: org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit
      StackMap stack:
            aload 9 /* scope */
            aload 26 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.search.IJavaSearchScope.encloses:(Lorg/eclipse/jdt/core/IJavaElement;)Z
            ifne 64
            goto 101
        64: .line 1359
      StackMap locals:
      StackMap stack:
            aload 26 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            astore 27 /* path */
        start local 27 // java.lang.String path
        65: .line 1360
            aload 26 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.isConsistent:()Z
            ifeq 91
        66: .line 1361
            aload 26 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPackageDeclarations:()[Lorg/eclipse/jdt/core/IPackageDeclaration;
            astore 28 /* packageDeclarations */
        start local 28 // org.eclipse.jdt.core.IPackageDeclaration[] packageDeclarations
        67: .line 1362
            aload 28 /* packageDeclarations */
            arraylength
            ifne 68
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            goto 69
      StackMap locals: java.lang.String org.eclipse.jdt.core.IPackageDeclaration[]
      StackMap stack:
        68: aload 28 /* packageDeclarations */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.core.IPackageDeclaration.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
      StackMap locals:
      StackMap stack: char[]
        69: astore 29 /* packageDeclaration */
        start local 29 // char[] packageDeclaration
        70: .line 1363
            aload 1 /* packageName */
            ifnull 72
            aload 1 /* packageName */
            aload 29 /* packageDeclaration */
            iload 23 /* isPkgCaseSensitive */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[CZ)Z
            ifne 72
        71: .line 1364
            goto 101
        72: .line 1366
      StackMap locals: char[]
      StackMap stack:
            aload 26 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getAllTypes:()[Lorg/eclipse/jdt/core/IType;
            astore 30 /* allTypes */
        start local 30 // org.eclipse.jdt.core.IType[] allTypes
        73: .line 1367
            iconst_0
            istore 31 /* j */
        start local 31 // int j
        74: aload 30 /* allTypes */
            arraylength
            istore 32 /* allTypesLength */
        start local 32 // int allTypesLength
        75: goto 89
        76: .line 1368
      StackMap locals: org.eclipse.jdt.core.IType[] int int
      StackMap stack:
            aload 30 /* allTypes */
            iload 31 /* j */
            aaload
            astore 33 /* type */
        start local 33 // org.eclipse.jdt.core.IType type
        77: .line 1369
            aload 33 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getParent:()Lorg/eclipse/jdt/core/IJavaElement;
            astore 34 /* parent */
        start local 34 // org.eclipse.jdt.core.IJavaElement parent
        78: .line 1370
            aload 34 /* parent */
            instanceof org.eclipse.jdt.core.IType
            ifeq 79
            aload 34 /* parent */
            checkcast org.eclipse.jdt.core.IType
            bipush 46
            invokeinterface org.eclipse.jdt.core.IType.getTypeQualifiedName:(C)Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            goto 80
      StackMap locals: org.eclipse.jdt.core.IType org.eclipse.jdt.core.IJavaElement
      StackMap stack:
        79: getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
      StackMap locals:
      StackMap stack: char[]
        80: astore 35 /* rDeclaringQualification */
        start local 35 // char[] rDeclaringQualification
        81: .line 1371
            aload 33 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 36 /* rSimpleName */
        start local 36 // char[] rSimpleName
        82: .line 1372
            aload 0 /* this */
            aload 3 /* declaringQualification */
            iload 4 /* declQualificationMatchRule */
            aload 35 /* rDeclaringQualification */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.match:([CI[C)Z
            ifeq 88
        83: .line 1373
            aload 0 /* this */
            aload 5 /* declaringSimpleName */
            iload 6 /* declSimpleNameMatchRule */
            aload 36 /* rSimpleName */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.match:([CI[C)Z
            ifne 85
        84: .line 1374
            goto 88
        85: .line 1375
      StackMap locals: char[] char[]
      StackMap stack:
            aload 0 /* this */
            aload 7 /* methodName */
            iload 8 /* methodMatchRule */
            aload 10 /* nameRequestor */
            aload 27 /* path */
        86: .line 1376
            aload 29 /* packageDeclaration */
            aload 33 /* type */
            aload 35 /* rDeclaringQualification */
            aload 36 /* rSimpleName */
        87: .line 1375
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.reportMatchingMethods:([CILorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;Ljava/lang/String;[CLorg/eclipse/jdt/core/IType;[C[C)V
        end local 36 // char[] rSimpleName
        end local 35 // char[] rDeclaringQualification
        end local 34 // org.eclipse.jdt.core.IJavaElement parent
        end local 33 // org.eclipse.jdt.core.IType type
        88: .line 1367
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int
      StackMap stack:
            iinc 31 /* j */ 1
      StackMap locals:
      StackMap stack:
        89: iload 31 /* j */
            iload 32 /* allTypesLength */
            if_icmplt 76
        end local 32 // int allTypesLength
        end local 31 // int j
        end local 30 // org.eclipse.jdt.core.IType[] allTypes
        end local 29 // char[] packageDeclaration
        end local 28 // org.eclipse.jdt.core.IPackageDeclaration[] packageDeclarations
        90: .line 1378
            goto 101
        91: .line 1379
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getParser:()Lorg/eclipse/jdt/internal/compiler/parser/Parser;
            astore 28 /* basicParser */
        start local 28 // org.eclipse.jdt.internal.compiler.parser.Parser basicParser
        92: .line 1380
            aload 26 /* workingCopy */
            checkcast org.eclipse.jdt.internal.compiler.env.ICompilationUnit
            astore 29 /* unit */
        start local 29 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit unit
        93: .line 1381
            new org.eclipse.jdt.internal.compiler.CompilationResult
            dup
            aload 29 /* unit */
            iconst_0
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.compilerOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.maxProblemsPerUnit:I
            invokespecial org.eclipse.jdt.internal.compiler.CompilationResult.<init>:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;III)V
            astore 30 /* compilationUnitResult */
        start local 30 // org.eclipse.jdt.internal.compiler.CompilationResult compilationUnitResult
        94: .line 1382
            aload 28 /* basicParser */
            aload 29 /* unit */
            aload 30 /* compilationUnitResult */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Parser.dietParse:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;Lorg/eclipse/jdt/internal/compiler/CompilationResult;)Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            astore 31 /* parsedUnit */
        start local 31 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
        95: .line 1383
            aload 31 /* parsedUnit */
            ifnull 101
        96: .line 1384
            aload 31 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.currentPackage:Lorg/eclipse/jdt/internal/compiler/ast/ImportReference;
            ifnonnull 97
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            goto 98
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.internal.compiler.parser.Parser org.eclipse.jdt.internal.compiler.env.ICompilationUnit org.eclipse.jdt.internal.compiler.CompilationResult org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration
      StackMap stack:
        97: aload 31 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.currentPackage:Lorg/eclipse/jdt/internal/compiler/ast/ImportReference;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.ImportReference.getImportName:()[[C
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([[CC)[C
      StackMap locals:
      StackMap stack: char[]
        98: astore 32 /* packageDeclaration */
        start local 32 // char[] packageDeclaration
        99: .line 1466
            aload 0 /* this */
            aload 1 /* packageName */
            iload 2 /* pkgMatchRule */
            aload 32 /* packageDeclaration */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.match:([CI[C)Z
            ifeq 101
       100: .line 1467
            aload 31 /* parsedUnit */
            new org.eclipse.jdt.internal.core.search.BasicSearchEngine$2AllMethodDeclarationVisitor
            dup
            aload 0 /* this */
            aload 26 /* workingCopy */
            aload 3 /* declaringQualification */
            iload 4 /* declQualificationMatchRule */
            aload 5 /* declaringSimpleName */
            iload 6 /* declSimpleNameMatchRule */
            aload 7 /* methodName */
            iload 8 /* methodMatchRule */
            aload 27 /* path */
            aload 32 /* packageDeclaration */
            aload 10 /* nameRequestor */
            invokespecial org.eclipse.jdt.internal.core.search.BasicSearchEngine$2AllMethodDeclarationVisitor.<init>:(Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;Lorg/eclipse/jdt/core/ICompilationUnit;[CI[CI[CILjava/lang/String;[CLorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;)V
            aload 31 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.scope:Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;)V
        end local 32 // char[] packageDeclaration
        end local 31 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
        end local 30 // org.eclipse.jdt.internal.compiler.CompilationResult compilationUnitResult
        end local 29 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit unit
        end local 28 // org.eclipse.jdt.internal.compiler.parser.Parser basicParser
        end local 27 // java.lang.String path
        end local 26 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        end local 25 // org.eclipse.core.runtime.SubMonitor iterationMonitor
       101: .line 1350
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int char[] int char[] int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int int
      StackMap stack:
            iinc 24 /* i */ 1
      StackMap locals:
      StackMap stack:
       102: iload 24 /* i */
            iload 19 /* copiesLength */
            if_icmplt 59
        end local 24 // int i
        end local 23 // boolean isPkgCaseSensitive
       103: .line 1472
      StackMap locals:
      StackMap stack:
            return
        end local 22 // org.eclipse.core.runtime.SubMonitor subMonitor
        end local 21 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor searchRequestor
        end local 20 // java.lang.String singleWkcpPath
        end local 19 // int copiesLength
        end local 18 // org.eclipse.jdt.core.ICompilationUnit[] copies
        end local 17 // java.lang.String workingCopyPath
        end local 16 // java.util.HashSet workingCopyPaths
        end local 15 // org.eclipse.jdt.internal.core.search.matching.MethodDeclarationPattern pattern
        end local 14 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        end local 13 // int validatedMethodMatchRule
        end local 12 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
        end local 11 // int waitingPolicy
        end local 10 // org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor nameRequestor
        end local 9 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        end local 8 // int methodMatchRule
        end local 7 // char[] methodName
        end local 6 // int declSimpleNameMatchRule
        end local 5 // char[] declaringSimpleName
        end local 4 // int declQualificationMatchRule
        end local 3 // char[] declaringQualification
        end local 2 // int pkgMatchRule
        end local 1 // char[] packageName
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0  104     0                        this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0  104     1                 packageName  [C
            0  104     2                pkgMatchRule  I
            0  104     3      declaringQualification  [C
            0  104     4  declQualificationMatchRule  I
            0  104     5         declaringSimpleName  [C
            0  104     6     declSimpleNameMatchRule  I
            0  104     7                  methodName  [C
            0  104     8             methodMatchRule  I
            0  104     9                       scope  Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            0  104    10               nameRequestor  Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;
            0  104    11               waitingPolicy  I
            0  104    12             progressMonitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            3  104    13    validatedMethodMatchRule  I
           23  104    14                indexManager  Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
           24  104    15                     pattern  Lorg/eclipse/jdt/internal/core/search/matching/MethodDeclarationPattern;
           25  104    16            workingCopyPaths  Ljava/util/HashSet;
           26  104    17             workingCopyPath  Ljava/lang/String;
           27  104    18                      copies  [Lorg/eclipse/jdt/core/ICompilationUnit;
           30  104    19                copiesLength  I
           35   40    20                           i  I
           37   38    21                 workingCopy  Lorg/eclipse/jdt/core/ICompilationUnit;
           41  104    20              singleWkcpPath  Ljava/lang/String;
           42  104    21             searchRequestor  Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;
           43  104    22                  subMonitor  Lorg/eclipse/core/runtime/SubMonitor;
           57  103    23          isPkgCaseSensitive  Z
           58  103    24                           i  I
           60  101    25            iterationMonitor  Lorg/eclipse/core/runtime/SubMonitor;
           61  101    26                 workingCopy  Lorg/eclipse/jdt/core/ICompilationUnit;
           65  101    27                        path  Ljava/lang/String;
           67   90    28         packageDeclarations  [Lorg/eclipse/jdt/core/IPackageDeclaration;
           70   90    29          packageDeclaration  [C
           73   90    30                    allTypes  [Lorg/eclipse/jdt/core/IType;
           74   90    31                           j  I
           75   90    32              allTypesLength  I
           77   88    33                        type  Lorg/eclipse/jdt/core/IType;
           78   88    34                      parent  Lorg/eclipse/jdt/core/IJavaElement;
           81   88    35     rDeclaringQualification  [C
           82   88    36                 rSimpleName  [C
           92  101    28                 basicParser  Lorg/eclipse/jdt/internal/compiler/parser/Parser;
           93  101    29                        unit  Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;
           94  101    30       compilationUnitResult  Lorg/eclipse/jdt/internal/compiler/CompilationResult;
           95  101    31                  parsedUnit  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
           99  101    32          packageDeclaration  [C
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                            Name  Flags
      packageName                 final
      pkgMatchRule                final
      declaringQualification      final
      declQualificationMatchRule  final
      declaringSimpleName         final
      declSimpleNameMatchRule     final
      methodName                  final
      methodMatchRule             final
      scope                       
      nameRequestor               final
      waitingPolicy               
      progressMonitor             

  void reportMatchingMethod(java.lang.String, char[], char[], org.eclipse.jdt.internal.compiler.ast.TypeDeclaration, org.eclipse.jdt.internal.compiler.ast.MethodDeclaration, org.eclipse.jdt.core.IType, org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor);
    descriptor: (Ljava/lang/String;[C[CLorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;Lorg/eclipse/jdt/internal/compiler/ast/MethodDeclaration;Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;)V
    flags: (0x0000) 
    Code:
      stack=15, locals=14, args_size=8
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // java.lang.String path
        start local 2 // char[] packageDeclaration
        start local 3 // char[] declaringQualifier
        start local 4 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDeclaration
        start local 5 // org.eclipse.jdt.internal.compiler.ast.MethodDeclaration methodDeclaration
        start local 6 // org.eclipse.jdt.core.IType type
        start local 7 // org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor nameRequestor
         0: .line 1483
            aload 5 /* methodDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.arguments:[Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            astore 8 /* arguments */
        start local 8 // org.eclipse.jdt.internal.compiler.ast.Argument[] arguments
         1: .line 1484
            iconst_0
            istore 9 /* argsLength */
        start local 9 // int argsLength
         2: .line 1485
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR_CHAR:[[C
            astore 10 /* parameterTypes */
        start local 10 // char[][] parameterTypes
         3: .line 1486
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR_CHAR:[[C
            astore 11 /* parameterNames */
        start local 11 // char[][] parameterNames
         4: .line 1487
            aload 8 /* arguments */
            ifnull 8
         5: .line 1488
            aload 8 /* arguments */
            arraylength
            istore 9 /* argsLength */
         6: .line 1489
            iload 9 /* argsLength */
            anewarray char[]
            astore 10 /* parameterTypes */
         7: .line 1490
            iload 9 /* argsLength */
            anewarray char[]
            astore 11 /* parameterNames */
         8: .line 1492
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine java.lang.String char[] char[] org.eclipse.jdt.internal.compiler.ast.TypeDeclaration org.eclipse.jdt.internal.compiler.ast.MethodDeclaration org.eclipse.jdt.core.IType org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor org.eclipse.jdt.internal.compiler.ast.Argument[] int char[][] char[][]
      StackMap stack:
            iconst_0
            istore 12 /* i */
        start local 12 // int i
         9: goto 14
        10: .line 1493
      StackMap locals: int
      StackMap stack:
            aload 8 /* arguments */
            iload 12 /* i */
            aaload
            astore 13 /* argument */
        start local 13 // org.eclipse.jdt.internal.compiler.ast.Argument argument
        11: .line 1494
            aload 11 /* parameterNames */
            iload 12 /* i */
            aload 13 /* argument */
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.name:[C
            aastore
        12: .line 1495
            aload 10 /* parameterTypes */
            iload 12 /* i */
            aload 13 /* argument */
            getfield org.eclipse.jdt.internal.compiler.ast.Argument.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TypeReference.getTypeName:()[[C
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([[CC)[C
            aastore
        end local 13 // org.eclipse.jdt.internal.compiler.ast.Argument argument
        13: .line 1492
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 12 /* i */
            iload 9 /* argsLength */
            if_icmplt 10
        end local 12 // int i
        15: .line 1497
            aload 7 /* nameRequestor */
            instanceof org.eclipse.jdt.internal.core.search.MethodNameMatchRequestorWrapper
            ifeq 19
        16: .line 1498
            aload 6 /* type */
            new java.lang.String
            dup
            aload 5 /* methodDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.selector:[C
            invokespecial java.lang.String.<init>:([C)V
            aload 10 /* parameterTypes */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.toStrings:([[C)[Ljava/lang/String;
            invokeinterface org.eclipse.jdt.core.IType.getMethod:(Ljava/lang/String;[Ljava/lang/String;)Lorg/eclipse/jdt/core/IMethod;
            astore 12 /* method */
        start local 12 // org.eclipse.jdt.core.IMethod method
        17: .line 1499
            aload 7 /* nameRequestor */
            checkcast org.eclipse.jdt.internal.core.search.MethodNameMatchRequestorWrapper
            getfield org.eclipse.jdt.internal.core.search.MethodNameMatchRequestorWrapper.requestor:Lorg/eclipse/jdt/core/search/MethodNameMatchRequestor;
            new org.eclipse.jdt.internal.core.search.JavaSearchMethodNameMatch
            dup
            aload 12 /* method */
            aload 5 /* methodDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.modifiers:I
            invokespecial org.eclipse.jdt.internal.core.search.JavaSearchMethodNameMatch.<init>:(Lorg/eclipse/jdt/core/IMethod;I)V
            invokevirtual org.eclipse.jdt.core.search.MethodNameMatchRequestor.acceptMethodNameMatch:(Lorg/eclipse/jdt/core/search/MethodNameMatch;)V
        end local 12 // org.eclipse.jdt.core.IMethod method
        18: .line 1500
            goto 36
        19: .line 1501
      StackMap locals:
      StackMap stack:
            aload 5 /* methodDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.returnType:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TypeReference.getTypeName:()[[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.toString:([[C)Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 12 /* returnType */
        start local 12 // char[] returnType
        20: .line 1502
            aload 7 /* nameRequestor */
        21: .line 1503
            aload 5 /* methodDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.selector:[C
        22: .line 1504
            iload 9 /* argsLength */
        23: .line 1505
            aload 3 /* declaringQualifier */
        24: .line 1506
            aload 4 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.name:[C
        25: .line 1507
            aload 4 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.modifiers:I
        26: .line 1508
            aload 2 /* packageDeclaration */
        27: .line 1509
            aconst_null
        28: .line 1510
            aload 10 /* parameterTypes */
        29: .line 1511
            aload 11 /* parameterNames */
        30: .line 1512
            aload 12 /* returnType */
        31: .line 1513
            aload 5 /* methodDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.modifiers:I
        32: .line 1514
            aload 1 /* path */
        33: .line 1515
            aconst_null
        34: .line 1516
            iconst_m1
        35: .line 1502
            invokeinterface org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor.acceptMethod:([CI[C[CI[C[C[[C[[C[CILjava/lang/String;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;I)V
        end local 12 // char[] returnType
        36: .line 1518
      StackMap locals:
      StackMap stack:
            return
        end local 11 // char[][] parameterNames
        end local 10 // char[][] parameterTypes
        end local 9 // int argsLength
        end local 8 // org.eclipse.jdt.internal.compiler.ast.Argument[] arguments
        end local 7 // org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor nameRequestor
        end local 6 // org.eclipse.jdt.core.IType type
        end local 5 // org.eclipse.jdt.internal.compiler.ast.MethodDeclaration methodDeclaration
        end local 4 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDeclaration
        end local 3 // char[] declaringQualifier
        end local 2 // char[] packageDeclaration
        end local 1 // java.lang.String path
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   37     0                this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0   37     1                path  Ljava/lang/String;
            0   37     2  packageDeclaration  [C
            0   37     3  declaringQualifier  [C
            0   37     4     typeDeclaration  Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            0   37     5   methodDeclaration  Lorg/eclipse/jdt/internal/compiler/ast/MethodDeclaration;
            0   37     6                type  Lorg/eclipse/jdt/core/IType;
            0   37     7       nameRequestor  Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;
            1   37     8           arguments  [Lorg/eclipse/jdt/internal/compiler/ast/Argument;
            2   37     9          argsLength  I
            3   37    10      parameterTypes  [[C
            4   37    11      parameterNames  [[C
            9   15    12                   i  I
           11   13    13            argument  Lorg/eclipse/jdt/internal/compiler/ast/Argument;
           17   18    12              method  Lorg/eclipse/jdt/core/IMethod;
           20   36    12          returnType  [C
    MethodParameters:
                    Name  Flags
      path                final
      packageDeclaration  final
      declaringQualifier  final
      typeDeclaration     final
      methodDeclaration   final
      type                final
      nameRequestor       final

  void reportMatchingMethods(char[], int, org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor, java.lang.String, char[], org.eclipse.jdt.core.IType, char[], char[]);
    descriptor: ([CILorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;Ljava/lang/String;[CLorg/eclipse/jdt/core/IType;[C[C)V
    flags: (0x0000) 
    Code:
      stack=15, locals=22, args_size=9
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // char[] methodName
        start local 2 // int methodMatchRule
        start local 3 // org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor nameRequestor
        start local 4 // java.lang.String path
        start local 5 // char[] packageDeclaration
        start local 6 // org.eclipse.jdt.core.IType type
        start local 7 // char[] rDeclaringQualification
        start local 8 // char[] rSimpleName
         0: .line 1523
            aload 6 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getMethods:()[Lorg/eclipse/jdt/core/IMethod;
            astore 9 /* methods */
        start local 9 // org.eclipse.jdt.core.IMethod[] methods
         1: .line 1525
            iconst_0
            istore 10 /* k */
        start local 10 // int k
         2: goto 43
         3: .line 1526
      StackMap locals: org.eclipse.jdt.core.IMethod[] int
      StackMap stack:
            aload 9 /* methods */
            iload 10 /* k */
            aaload
            astore 11 /* method */
        start local 11 // org.eclipse.jdt.core.IMethod method
         4: .line 1527
            aload 11 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.isConstructor:()Z
            ifeq 5
            goto 42
         5: .line 1529
      StackMap locals: org.eclipse.jdt.core.IMethod
      StackMap stack:
            aload 11 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 12 /* rMethodName */
        start local 12 // char[] rMethodName
         6: .line 1530
            aload 0 /* this */
            aload 1 /* methodName */
            iload 2 /* methodMatchRule */
            aload 12 /* rMethodName */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.match:([CI[C)Z
            ifeq 42
         7: .line 1531
            aload 3 /* nameRequestor */
            instanceof org.eclipse.jdt.internal.core.search.MethodNameMatchRequestorWrapper
            ifeq 10
         8: .line 1532
            aload 3 /* nameRequestor */
            checkcast org.eclipse.jdt.internal.core.search.MethodNameMatchRequestorWrapper
            getfield org.eclipse.jdt.internal.core.search.MethodNameMatchRequestorWrapper.requestor:Lorg/eclipse/jdt/core/search/MethodNameMatchRequestor;
            new org.eclipse.jdt.internal.core.search.JavaSearchMethodNameMatch
            dup
            aload 11 /* method */
            aload 11 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getFlags:()I
            invokespecial org.eclipse.jdt.internal.core.search.JavaSearchMethodNameMatch.<init>:(Lorg/eclipse/jdt/core/IMethod;I)V
            invokevirtual org.eclipse.jdt.core.search.MethodNameMatchRequestor.acceptMethodNameMatch:(Lorg/eclipse/jdt/core/search/MethodNameMatch;)V
         9: .line 1533
            goto 42
        10: .line 1535
      StackMap locals: char[]
      StackMap stack:
            aload 11 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getParameterNames:()[Ljava/lang/String;
            astore 13 /* stringParameterNames */
        start local 13 // java.lang.String[] stringParameterNames
        11: .line 1536
            aload 11 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getParameterTypes:()[Ljava/lang/String;
            astore 14 /* stringParameterTypes */
        start local 14 // java.lang.String[] stringParameterTypes
        12: .line 1537
            aload 13 /* stringParameterNames */
            arraylength
            istore 15 /* length */
        start local 15 // int length
        13: .line 1538
            iload 15 /* length */
            anewarray char[]
            astore 16 /* parameterNames */
        start local 16 // char[][] parameterNames
        14: .line 1539
            iload 15 /* length */
            anewarray char[]
            astore 17 /* parameterTypes */
        start local 17 // char[][] parameterTypes
        15: .line 1540
            iconst_0
            istore 18 /* l */
        start local 18 // int l
        16: goto 20
        17: .line 1541
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor java.lang.String char[] org.eclipse.jdt.core.IType char[] char[] org.eclipse.jdt.core.IMethod[] int org.eclipse.jdt.core.IMethod char[] java.lang.String[] java.lang.String[] int char[][] char[][] int
      StackMap stack:
            aload 16 /* parameterNames */
            iload 18 /* l */
            aload 13 /* stringParameterNames */
            iload 18 /* l */
            aaload
            invokevirtual java.lang.String.toCharArray:()[C
            aastore
        18: .line 1542
            aload 17 /* parameterTypes */
            iload 18 /* l */
            aload 14 /* stringParameterTypes */
            iload 18 /* l */
            aaload
            invokestatic org.eclipse.jdt.core.Signature.getTypeErasure:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            invokestatic org.eclipse.jdt.core.Signature.toCharArray:([C)[C
            aastore
        19: .line 1540
            iinc 18 /* l */ 1
      StackMap locals:
      StackMap stack:
        20: iload 18 /* l */
            iload 15 /* length */
            if_icmplt 17
        end local 18 // int l
        21: .line 1544
            aload 11 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getReturnType:()Ljava/lang/String;
            astore 18 /* returnSignature */
        start local 18 // java.lang.String returnSignature
        22: .line 1545
            aload 18 /* returnSignature */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 19 /* signature */
        start local 19 // char[] signature
        23: .line 1546
            aload 19 /* signature */
            invokestatic org.eclipse.jdt.core.Signature.getTypeErasure:([C)[C
            invokestatic org.eclipse.jdt.core.Signature.toCharArray:([C)[C
            astore 20 /* returnErasure */
        start local 20 // char[] returnErasure
        24: .line 1547
            aload 20 /* returnErasure */
            bipush 36
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.replace:([CCC)V
        25: .line 1548
            aload 20 /* returnErasure */
            astore 21 /* returnTypeName */
        start local 21 // char[] returnTypeName
        26: .line 1550
            aload 3 /* nameRequestor */
        27: .line 1551
            aload 12 /* rMethodName */
        28: .line 1552
            aload 16 /* parameterNames */
            arraylength
        29: .line 1553
            aload 7 /* rDeclaringQualification */
        30: .line 1554
            aload 8 /* rSimpleName */
        31: .line 1555
            aload 6 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getFlags:()I
        32: .line 1556
            aload 5 /* packageDeclaration */
        33: .line 1557
            aconst_null
        34: .line 1558
            aload 17 /* parameterTypes */
        35: .line 1559
            aload 16 /* parameterNames */
        36: .line 1560
            aload 21 /* returnTypeName */
        37: .line 1561
            aload 11 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getFlags:()I
        38: .line 1562
            aload 4 /* path */
        39: .line 1563
            aconst_null
        40: .line 1564
            iload 10 /* k */
        41: .line 1550
            invokeinterface org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor.acceptMethod:([CI[C[CI[C[C[[C[[C[CILjava/lang/String;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;I)V
        end local 21 // char[] returnTypeName
        end local 20 // char[] returnErasure
        end local 19 // char[] signature
        end local 18 // java.lang.String returnSignature
        end local 17 // char[][] parameterTypes
        end local 16 // char[][] parameterNames
        end local 15 // int length
        end local 14 // java.lang.String[] stringParameterTypes
        end local 13 // java.lang.String[] stringParameterNames
        end local 12 // char[] rMethodName
        end local 11 // org.eclipse.jdt.core.IMethod method
        42: .line 1525
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor java.lang.String char[] org.eclipse.jdt.core.IType char[] char[] org.eclipse.jdt.core.IMethod[] int
      StackMap stack:
            iinc 10 /* k */ 1
      StackMap locals:
      StackMap stack:
        43: iload 10 /* k */
            aload 9 /* methods */
            arraylength
            if_icmplt 3
        end local 10 // int k
        44: .line 1568
            return
        end local 9 // org.eclipse.jdt.core.IMethod[] methods
        end local 8 // char[] rSimpleName
        end local 7 // char[] rDeclaringQualification
        end local 6 // org.eclipse.jdt.core.IType type
        end local 5 // char[] packageDeclaration
        end local 4 // java.lang.String path
        end local 3 // org.eclipse.jdt.internal.core.search.IRestrictedAccessMethodRequestor nameRequestor
        end local 2 // int methodMatchRule
        end local 1 // char[] methodName
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   45     0                     this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0   45     1               methodName  [C
            0   45     2          methodMatchRule  I
            0   45     3            nameRequestor  Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessMethodRequestor;
            0   45     4                     path  Ljava/lang/String;
            0   45     5       packageDeclaration  [C
            0   45     6                     type  Lorg/eclipse/jdt/core/IType;
            0   45     7  rDeclaringQualification  [C
            0   45     8              rSimpleName  [C
            1   45     9                  methods  [Lorg/eclipse/jdt/core/IMethod;
            2   44    10                        k  I
            4   42    11                   method  Lorg/eclipse/jdt/core/IMethod;
            6   42    12              rMethodName  [C
           11   42    13     stringParameterNames  [Ljava/lang/String;
           12   42    14     stringParameterTypes  [Ljava/lang/String;
           13   42    15                   length  I
           14   42    16           parameterNames  [[C
           15   42    17           parameterTypes  [[C
           16   21    18                        l  I
           22   42    18          returnSignature  Ljava/lang/String;
           23   42    19                signature  [C
           24   42    20            returnErasure  [C
           26   42    21           returnTypeName  [C
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                         Name  Flags
      methodName               final
      methodMatchRule          final
      nameRequestor            final
      path                     final
      packageDeclaration       
      type                     
      rDeclaringQualification  
      rSimpleName              

  public void searchAllSecondaryTypeNames(org.eclipse.jdt.core.IPackageFragmentRoot[], org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor, boolean, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: ([Lorg/eclipse/jdt/core/IPackageFragmentRoot;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor;ZLorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=15, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // org.eclipse.jdt.core.IPackageFragmentRoot[] sourceFolders
        start local 2 // org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor nameRequestor
        start local 3 // boolean waitForIndexes
        start local 4 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
         0: .line 1582
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 16
         1: .line 1583
            ldc "BasicSearchEngine.searchAllSecondaryTypeNames(IPackageFragmentRoot[], IRestrictedAccessTypeRequestor, boolean, IProgressMonitor)"
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         2: .line 1584
            new java.lang.StringBuffer
            dup
            ldc "\t- source folders: "
            invokespecial java.lang.StringBuffer.<init>:(Ljava/lang/String;)V
            astore 5 /* buffer */
        start local 5 // java.lang.StringBuffer buffer
         3: .line 1585
            aload 1 /* sourceFolders */
            arraylength
            istore 6 /* length */
        start local 6 // int length
         4: .line 1586
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         5: goto 12
         6: .line 1587
      StackMap locals: java.lang.StringBuffer int int
      StackMap stack:
            iload 7 /* i */
            ifne 9
         7: .line 1588
            aload 5 /* buffer */
            bipush 91
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         8: .line 1589
            goto 10
         9: .line 1590
      StackMap locals:
      StackMap stack:
            aload 5 /* buffer */
            bipush 44
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        10: .line 1592
      StackMap locals:
      StackMap stack:
            aload 5 /* buffer */
            aload 1 /* sourceFolders */
            iload 7 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        11: .line 1586
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 7 /* i */
            iload 6 /* length */
            if_icmplt 6
        end local 7 // int i
        13: .line 1594
            aload 5 /* buffer */
            ldc "]\n\t- waitForIndexes: "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        14: .line 1595
            aload 5 /* buffer */
            iload 3 /* waitForIndexes */
            invokevirtual java.lang.StringBuffer.append:(Z)Ljava/lang/StringBuffer;
            pop
        15: .line 1596
            aload 5 /* buffer */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        end local 6 // int length
        end local 5 // java.lang.StringBuffer buffer
        16: .line 1599
      StackMap locals:
      StackMap stack:
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getIndexManager:()Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
            astore 5 /* indexManager */
        start local 5 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        17: .line 1600
            new org.eclipse.jdt.internal.core.search.matching.SecondaryTypeDeclarationPattern
            dup
            invokespecial org.eclipse.jdt.internal.core.search.matching.SecondaryTypeDeclarationPattern.<init>:()V
            astore 6 /* pattern */
        start local 6 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern pattern
        18: .line 1603
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 7 /* workingCopyPaths */
        start local 7 // java.util.HashSet workingCopyPaths
        19: .line 1604
            aconst_null
            astore 8 /* workingCopyPath */
        start local 8 // java.lang.String workingCopyPath
        20: .line 1605
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getWorkingCopies:()[Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 9 /* copies */
        start local 9 // org.eclipse.jdt.core.ICompilationUnit[] copies
        21: .line 1606
            aload 9 /* copies */
            ifnonnull 22
            iconst_0
            goto 23
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.IPackageFragmentRoot[] org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[]
      StackMap stack:
        22: aload 9 /* copies */
            arraylength
      StackMap locals:
      StackMap stack: int
        23: istore 10 /* copiesLength */
        start local 10 // int copiesLength
        24: .line 1607
            aload 9 /* copies */
            ifnull 34
        25: .line 1608
            iload 10 /* copiesLength */
            iconst_1
            if_icmpne 28
        26: .line 1609
            aload 9 /* copies */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            astore 8 /* workingCopyPath */
        27: .line 1610
            goto 34
        28: .line 1611
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        29: goto 33
        30: .line 1612
      StackMap locals: int
      StackMap stack:
            aload 9 /* copies */
            iload 11 /* i */
            aaload
            astore 12 /* workingCopy */
        start local 12 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        31: .line 1613
            aload 7 /* workingCopyPaths */
            aload 12 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 12 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        32: .line 1611
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        33: iload 11 /* i */
            iload 10 /* copiesLength */
            if_icmplt 30
        end local 11 // int i
        34: .line 1617
      StackMap locals:
      StackMap stack:
            aload 8 /* workingCopyPath */
            astore 11 /* singleWkcpPath */
        start local 11 // java.lang.String singleWkcpPath
        35: .line 1620
            new org.eclipse.jdt.internal.core.search.BasicSearchEngine$4
            dup
            aload 0 /* this */
            iload 10 /* copiesLength */
            aload 11 /* singleWkcpPath */
            aload 7 /* workingCopyPaths */
            aload 2 /* nameRequestor */
            invokespecial org.eclipse.jdt.internal.core.search.BasicSearchEngine$4.<init>:(Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;ILjava/lang/String;Ljava/util/HashSet;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor;)V
            astore 12 /* searchRequestor */
        start local 12 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor searchRequestor
        36: .line 1676
            aload 4 /* progressMonitor */
            getstatic org.eclipse.jdt.internal.core.util.Messages.engine_searching:Ljava/lang/String;
            bipush 100
            invokestatic org.eclipse.core.runtime.SubMonitor.convert:(Lorg/eclipse/core/runtime/IProgressMonitor;Ljava/lang/String;I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 13 /* subMonitor */
        start local 13 // org.eclipse.core.runtime.SubMonitor subMonitor
        37: .line 1677
            aload 5 /* indexManager */
        38: .line 1678
            new org.eclipse.jdt.internal.core.search.PatternSearchJob
            dup
        39: .line 1679
            aload 6 /* pattern */
        40: .line 1680
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getDefaultSearchParticipant:()Lorg/eclipse/jdt/core/search/SearchParticipant;
        41: .line 1681
            aload 1 /* sourceFolders */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.createJavaSearchScope:([Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
        42: .line 1682
            aload 12 /* searchRequestor */
        43: .line 1678
            invokespecial org.eclipse.jdt.internal.core.search.PatternSearchJob.<init>:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;)V
        44: .line 1683
            iload 3 /* waitForIndexes */
            ifeq 46
        45: .line 1684
            iconst_3
            goto 47
        46: .line 1685
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.IPackageFragmentRoot[] org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor
      StackMap stack: org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.PatternSearchJob
            iconst_1
        47: .line 1686
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.IPackageFragmentRoot[] org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor
      StackMap stack: org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.PatternSearchJob int
            aload 13 /* subMonitor */
            bipush 100
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
        48: .line 1677
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.performConcurrentJob:(Lorg/eclipse/jdt/internal/core/search/processing/IJob;ILorg/eclipse/core/runtime/IProgressMonitor;)Z
            pop
        end local 13 // org.eclipse.core.runtime.SubMonitor subMonitor
        49: .line 1687
            goto 56
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.IPackageFragmentRoot[] org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor
      StackMap stack: org.eclipse.core.runtime.OperationCanceledException
        50: pop
        end local 12 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor searchRequestor
        end local 11 // java.lang.String singleWkcpPath
        end local 10 // int copiesLength
        end local 9 // org.eclipse.jdt.core.ICompilationUnit[] copies
        end local 8 // java.lang.String workingCopyPath
        end local 7 // java.util.HashSet workingCopyPaths
        end local 6 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern pattern
        end local 5 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        51: .line 1690
            goto 56
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.IPackageFragmentRoot[] org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor
      StackMap stack: java.lang.Throwable
        52: astore 14
        53: .line 1691
            aload 4 /* progressMonitor */
            ifnull 55
        54: .line 1692
            aload 4 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
        55: .line 1694
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.IPackageFragmentRoot[] org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor top top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 14
            athrow
        56: .line 1691
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.IPackageFragmentRoot[] org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor
      StackMap stack:
            aload 4 /* progressMonitor */
            ifnull 58
        57: .line 1692
            aload 4 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
        58: .line 1695
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
        end local 3 // boolean waitForIndexes
        end local 2 // org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor nameRequestor
        end local 1 // org.eclipse.jdt.core.IPackageFragmentRoot[] sourceFolders
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   59     0              this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0   59     1     sourceFolders  [Lorg/eclipse/jdt/core/IPackageFragmentRoot;
            0   59     2     nameRequestor  Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor;
            0   59     3    waitForIndexes  Z
            0   59     4   progressMonitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            3   16     5            buffer  Ljava/lang/StringBuffer;
            4   16     6            length  I
            5   13     7                 i  I
           17   51     5      indexManager  Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
           18   51     6           pattern  Lorg/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern;
           19   51     7  workingCopyPaths  Ljava/util/HashSet;
           20   51     8   workingCopyPath  Ljava/lang/String;
           21   51     9            copies  [Lorg/eclipse/jdt/core/ICompilationUnit;
           24   51    10      copiesLength  I
           29   34    11                 i  I
           31   32    12       workingCopy  Lorg/eclipse/jdt/core/ICompilationUnit;
           35   51    11    singleWkcpPath  Ljava/lang/String;
           36   51    12   searchRequestor  Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;
           37   49    13        subMonitor  Lorg/eclipse/core/runtime/SubMonitor;
      Exception table:
        from    to  target  type
          36    49      50  Class org.eclipse.core.runtime.OperationCanceledException
           0    52      52  any
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                 Name  Flags
      sourceFolders    
      nameRequestor    final
      waitForIndexes   
      progressMonitor  

  public void searchAllTypeNames(char[], int, char[], int, int, org.eclipse.jdt.core.search.IJavaSearchScope, org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor, int, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: ([CI[CIILorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor;ILorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=13, locals=36, args_size=10
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // char[] packageName
        start local 2 // int packageMatchRule
        start local 3 // char[] typeName
        start local 4 // int typeMatchRule
        start local 5 // int searchFor
        start local 6 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        start local 7 // org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor nameRequestor
        start local 8 // int waitingPolicy
        start local 9 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
         0: .line 1718
            aload 3 /* typeName */
            ifnonnull 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.String
            dup
            aload 3 /* typeName */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals:
      StackMap stack: java.lang.String
         2: iload 4 /* typeMatchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.validateMatchRule:(Ljava/lang/String;I)I
            istore 10 /* validatedTypeMatchRule */
        start local 10 // int validatedTypeMatchRule
         3: .line 1721
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 17
         4: .line 1722
            ldc "BasicSearchEngine.searchAllTypeNames(char[], char[], int, int, IJavaSearchScope, IRestrictedAccessTypeRequestor, int, IProgressMonitor)"
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         5: .line 1723
            new java.lang.StringBuilder
            dup
            ldc "\t- package name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* packageName */
            ifnonnull 6
            ldc "null"
            goto 7
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder
         6: new java.lang.String
            dup
            aload 1 /* packageName */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder java.lang.String
         7: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         8: .line 1724
            new java.lang.StringBuilder
            dup
            ldc "\t- package match rule: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* packageMatchRule */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getMatchRuleString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         9: .line 1725
            new java.lang.StringBuilder
            dup
            ldc "\t- type name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* typeName */
            ifnonnull 10
            ldc "null"
            goto 11
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
        10: new java.lang.String
            dup
            aload 3 /* typeName */
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack: java.lang.StringBuilder java.lang.String
        11: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        12: .line 1726
            new java.lang.StringBuilder
            dup
            ldc "\t- type match rule: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* typeMatchRule */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getMatchRuleString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        13: .line 1727
            iload 10 /* validatedTypeMatchRule */
            iload 4 /* typeMatchRule */
            if_icmpeq 15
        14: .line 1728
            new java.lang.StringBuilder
            dup
            ldc "\t- validated type match rule: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 10 /* validatedTypeMatchRule */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getMatchRuleString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        15: .line 1730
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "\t- search for: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 5 /* searchFor */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        16: .line 1731
            new java.lang.StringBuilder
            dup
            ldc "\t- scope: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* scope */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        17: .line 1733
      StackMap locals:
      StackMap stack:
            iload 10 /* validatedTypeMatchRule */
            iconst_m1
            if_icmpne 21
        18: .line 1962
            aload 9 /* progressMonitor */
            ifnull 20
        19: .line 1963
            aload 9 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
        20: .line 1733
      StackMap locals:
      StackMap stack:
            return
        21: .line 1736
      StackMap locals:
      StackMap stack:
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getIndexManager:()Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
            astore 11 /* indexManager */
        start local 11 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        22: .line 1738
            iload 5 /* searchFor */
            tableswitch { // 5 - 11
                    5: 23
                    6: 29
                    7: 33
                    8: 35
                    9: 27
                   10: 25
                   11: 31
              default: 37
          }
        23: .line 1740
      StackMap locals: org.eclipse.jdt.internal.core.search.indexing.IndexManager
      StackMap stack:
            bipush 67
            istore 12 /* typeSuffix */
        start local 12 // char typeSuffix
        24: .line 1741
            goto 38
        end local 12 // char typeSuffix
        25: .line 1743
      StackMap locals:
      StackMap stack:
            bipush 10
            istore 12 /* typeSuffix */
        start local 12 // char typeSuffix
        26: .line 1744
            goto 38
        end local 12 // char typeSuffix
        27: .line 1746
      StackMap locals:
      StackMap stack:
            bipush 9
            istore 12 /* typeSuffix */
        start local 12 // char typeSuffix
        28: .line 1747
            goto 38
        end local 12 // char typeSuffix
        29: .line 1749
      StackMap locals:
      StackMap stack:
            bipush 73
            istore 12 /* typeSuffix */
        start local 12 // char typeSuffix
        30: .line 1750
            goto 38
        end local 12 // char typeSuffix
        31: .line 1752
      StackMap locals:
      StackMap stack:
            bipush 11
            istore 12 /* typeSuffix */
        start local 12 // char typeSuffix
        32: .line 1753
            goto 38
        end local 12 // char typeSuffix
        33: .line 1755
      StackMap locals:
      StackMap stack:
            bipush 69
            istore 12 /* typeSuffix */
        start local 12 // char typeSuffix
        34: .line 1756
            goto 38
        end local 12 // char typeSuffix
        35: .line 1758
      StackMap locals:
      StackMap stack:
            bipush 65
            istore 12 /* typeSuffix */
        start local 12 // char typeSuffix
        36: .line 1759
            goto 38
        end local 12 // char typeSuffix
        37: .line 1761
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 12 /* typeSuffix */
        start local 12 // char typeSuffix
        38: .line 1764
      StackMap locals: int
      StackMap stack:
            iload 2 /* packageMatchRule */
            ifne 47
        39: .line 1765
            new org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern
            dup
        40: .line 1766
            aload 1 /* packageName */
        41: .line 1767
            aconst_null
        42: .line 1768
            aload 3 /* typeName */
        43: .line 1769
            iload 12 /* typeSuffix */
        44: .line 1770
            iload 10 /* validatedTypeMatchRule */
        45: .line 1765
            invokespecial org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern.<init>:([C[[C[CCI)V
        46: .line 1770
            goto 54
        47: .line 1771
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern
            dup
        48: .line 1772
            aload 1 /* packageName */
        49: .line 1773
            iload 2 /* packageMatchRule */
        50: .line 1774
            aload 3 /* typeName */
        51: .line 1775
            iload 12 /* typeSuffix */
        52: .line 1776
            iload 10 /* validatedTypeMatchRule */
        53: .line 1771
            invokespecial org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern.<init>:([CI[CCI)V
        54: .line 1764
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern
            astore 13 /* pattern */
        start local 13 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern pattern
        55: .line 1779
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 14 /* workingCopyPaths */
        start local 14 // java.util.HashSet workingCopyPaths
        56: .line 1780
            aconst_null
            astore 15 /* workingCopyPath */
        start local 15 // java.lang.String workingCopyPath
        57: .line 1781
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getWorkingCopies:()[Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 16 /* copies */
        start local 16 // org.eclipse.jdt.core.ICompilationUnit[] copies
        58: .line 1782
            aload 16 /* copies */
            ifnonnull 59
            iconst_0
            goto 60
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[]
      StackMap stack:
        59: aload 16 /* copies */
            arraylength
      StackMap locals:
      StackMap stack: int
        60: istore 17 /* copiesLength */
        start local 17 // int copiesLength
        61: .line 1783
            aload 16 /* copies */
            ifnull 71
        62: .line 1784
            iload 17 /* copiesLength */
            iconst_1
            if_icmpne 65
        63: .line 1785
            aload 16 /* copies */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            astore 15 /* workingCopyPath */
        64: .line 1786
            goto 71
        65: .line 1787
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 18 /* i */
        start local 18 // int i
        66: goto 70
        67: .line 1788
      StackMap locals: int
      StackMap stack:
            aload 16 /* copies */
            iload 18 /* i */
            aaload
            astore 19 /* workingCopy */
        start local 19 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        68: .line 1789
            aload 14 /* workingCopyPaths */
            aload 19 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 19 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        69: .line 1787
            iinc 18 /* i */ 1
      StackMap locals:
      StackMap stack:
        70: iload 18 /* i */
            iload 17 /* copiesLength */
            if_icmplt 67
        end local 18 // int i
        71: .line 1793
      StackMap locals:
      StackMap stack:
            aload 15 /* workingCopyPath */
            astore 18 /* singleWkcpPath */
        start local 18 // java.lang.String singleWkcpPath
        72: .line 1796
            new org.eclipse.jdt.internal.core.search.BasicSearchEngine$5
            dup
            aload 0 /* this */
            iload 17 /* copiesLength */
            aload 18 /* singleWkcpPath */
            aload 14 /* workingCopyPaths */
            aload 7 /* nameRequestor */
            invokespecial org.eclipse.jdt.internal.core.search.BasicSearchEngine$5.<init>:(Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;ILjava/lang/String;Ljava/util/HashSet;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor;)V
            astore 19 /* searchRequestor */
        start local 19 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor searchRequestor
        73: .line 1849
            aload 9 /* progressMonitor */
            getstatic org.eclipse.jdt.internal.core.util.Messages.engine_searching:Ljava/lang/String;
            sipush 1000
            invokestatic org.eclipse.core.runtime.SubMonitor.convert:(Lorg/eclipse/core/runtime/IProgressMonitor;Ljava/lang/String;I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 20 /* subMonitor */
        start local 20 // org.eclipse.core.runtime.SubMonitor subMonitor
        74: .line 1851
            aload 11 /* indexManager */
        75: .line 1852
            new org.eclipse.jdt.internal.core.search.PatternSearchJob
            dup
        76: .line 1853
            aload 13 /* pattern */
        77: .line 1854
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getDefaultSearchParticipant:()Lorg/eclipse/jdt/core/search/SearchParticipant;
        78: .line 1855
            aload 6 /* scope */
        79: .line 1856
            aload 19 /* searchRequestor */
        80: .line 1852
            invokespecial org.eclipse.jdt.internal.core.search.PatternSearchJob.<init>:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;)V
        81: .line 1857
            iload 8 /* waitingPolicy */
        82: .line 1858
            aload 20 /* subMonitor */
            sipush 1000
            iload 17 /* copiesLength */
            isub
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
        83: .line 1851
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.performConcurrentJob:(Lorg/eclipse/jdt/internal/core/search/processing/IJob;ILorg/eclipse/core/runtime/IProgressMonitor;)Z
            pop
        84: .line 1861
            aload 16 /* copies */
            ifnull 144
        85: .line 1862
            iconst_0
            istore 21 /* i */
        start local 21 // int i
        86: goto 138
        87: .line 1863
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int
      StackMap stack:
            aload 20 /* subMonitor */
            iload 21 /* i */
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 22 /* iterationMonitor */
        start local 22 // org.eclipse.core.runtime.SubMonitor iterationMonitor
        88: .line 1864
            aload 16 /* copies */
            iload 21 /* i */
            aaload
            astore 23 /* workingCopy */
        start local 23 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        89: .line 1865
            aload 6 /* scope */
            instanceof org.eclipse.jdt.internal.core.search.HierarchyScope
            ifeq 91
        90: .line 1866
            aload 6 /* scope */
            checkcast org.eclipse.jdt.internal.core.search.HierarchyScope
            aload 23 /* workingCopy */
            aload 22 /* iterationMonitor */
            invokevirtual org.eclipse.jdt.internal.core.search.HierarchyScope.encloses:(Lorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IProgressMonitor;)Z
            ifne 92
            goto 137
        91: .line 1868
      StackMap locals: org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit
      StackMap stack:
            aload 6 /* scope */
            aload 23 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.search.IJavaSearchScope.encloses:(Lorg/eclipse/jdt/core/IJavaElement;)Z
            ifne 92
            goto 137
        92: .line 1870
      StackMap locals:
      StackMap stack:
            aload 23 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            astore 24 /* path */
        start local 24 // java.lang.String path
        93: .line 1871
            aload 23 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.isConsistent:()Z
            ifeq 128
        94: .line 1872
            aload 23 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPackageDeclarations:()[Lorg/eclipse/jdt/core/IPackageDeclaration;
            astore 25 /* packageDeclarations */
        start local 25 // org.eclipse.jdt.core.IPackageDeclaration[] packageDeclarations
        95: .line 1873
            aload 25 /* packageDeclarations */
            arraylength
            ifne 96
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            goto 97
      StackMap locals: java.lang.String org.eclipse.jdt.core.IPackageDeclaration[]
      StackMap stack:
        96: aload 25 /* packageDeclarations */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.core.IPackageDeclaration.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
      StackMap locals:
      StackMap stack: char[]
        97: astore 26 /* packageDeclaration */
        start local 26 // char[] packageDeclaration
        98: .line 1874
            aload 23 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getAllTypes:()[Lorg/eclipse/jdt/core/IType;
            astore 27 /* allTypes */
        start local 27 // org.eclipse.jdt.core.IType[] allTypes
        99: .line 1875
            iconst_0
            istore 28 /* j */
        start local 28 // int j
       100: aload 27 /* allTypes */
            arraylength
            istore 29 /* allTypesLength */
        start local 29 // int allTypesLength
       101: goto 126
       102: .line 1876
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int
      StackMap stack:
            aload 27 /* allTypes */
            iload 28 /* j */
            aaload
            astore 30 /* type */
        start local 30 // org.eclipse.jdt.core.IType type
       103: .line 1877
            aload 30 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getParent:()Lorg/eclipse/jdt/core/IJavaElement;
            astore 31 /* parent */
        start local 31 // org.eclipse.jdt.core.IJavaElement parent
       104: .line 1879
            aload 31 /* parent */
            instanceof org.eclipse.jdt.core.IType
            ifeq 108
       105: .line 1880
            aload 31 /* parent */
            checkcast org.eclipse.jdt.core.IType
            bipush 46
            invokeinterface org.eclipse.jdt.core.IType.getTypeQualifiedName:(C)Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 33 /* parentQualifiedName */
        start local 33 // char[] parentQualifiedName
       106: .line 1881
            bipush 46
            aload 33 /* parentQualifiedName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[C)[[C
            astore 32 /* enclosingTypeNames */
        end local 33 // char[] parentQualifiedName
        start local 32 // char[][] enclosingTypeNames
       107: .line 1882
            goto 109
        end local 32 // char[][] enclosingTypeNames
       108: .line 1883
      StackMap locals: org.eclipse.jdt.core.IType org.eclipse.jdt.core.IJavaElement
      StackMap stack:
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR_CHAR:[[C
            astore 32 /* enclosingTypeNames */
        start local 32 // char[][] enclosingTypeNames
       109: .line 1885
      StackMap locals: char[][]
      StackMap stack:
            aload 30 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 33 /* simpleName */
        start local 33 // char[] simpleName
       110: .line 1887
            aload 30 /* type */
            invokeinterface org.eclipse.jdt.core.IType.isEnum:()Z
            ifeq 113
       111: .line 1888
            iconst_3
            istore 34 /* kind */
        start local 34 // int kind
       112: .line 1889
            goto 120
        end local 34 // int kind
      StackMap locals: char[]
      StackMap stack:
       113: aload 30 /* type */
            invokeinterface org.eclipse.jdt.core.IType.isAnnotation:()Z
            ifeq 116
       114: .line 1890
            iconst_4
            istore 34 /* kind */
        start local 34 // int kind
       115: .line 1891
            goto 120
        end local 34 // int kind
      StackMap locals:
      StackMap stack:
       116: aload 30 /* type */
            invokeinterface org.eclipse.jdt.core.IType.isClass:()Z
            ifeq 119
       117: .line 1892
            iconst_1
            istore 34 /* kind */
        start local 34 // int kind
       118: .line 1893
            goto 120
        end local 34 // int kind
       119: .line 1894
      StackMap locals:
      StackMap stack:
            iconst_2
            istore 34 /* kind */
        start local 34 // int kind
       120: .line 1896
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 12 /* typeSuffix */
            aload 1 /* packageName */
            iload 2 /* packageMatchRule */
            aload 3 /* typeName */
            iload 10 /* validatedTypeMatchRule */
            iload 34 /* kind */
            aload 26 /* packageDeclaration */
            aload 33 /* simpleName */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.match:(C[CI[CII[C[C)Z
            ifeq 125
       121: .line 1897
            aload 7 /* nameRequestor */
            instanceof org.eclipse.jdt.internal.core.search.TypeNameMatchRequestorWrapper
            ifeq 124
       122: .line 1898
            aload 7 /* nameRequestor */
            checkcast org.eclipse.jdt.internal.core.search.TypeNameMatchRequestorWrapper
            getfield org.eclipse.jdt.internal.core.search.TypeNameMatchRequestorWrapper.requestor:Lorg/eclipse/jdt/core/search/TypeNameMatchRequestor;
            new org.eclipse.jdt.internal.core.search.JavaSearchTypeNameMatch
            dup
            aload 30 /* type */
            aload 30 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getFlags:()I
            invokespecial org.eclipse.jdt.internal.core.search.JavaSearchTypeNameMatch.<init>:(Lorg/eclipse/jdt/core/IType;I)V
            invokevirtual org.eclipse.jdt.core.search.TypeNameMatchRequestor.acceptTypeNameMatch:(Lorg/eclipse/jdt/core/search/TypeNameMatch;)V
       123: .line 1899
            goto 125
       124: .line 1900
      StackMap locals:
      StackMap stack:
            aload 7 /* nameRequestor */
            aload 30 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getFlags:()I
            aload 26 /* packageDeclaration */
            aload 33 /* simpleName */
            aload 32 /* enclosingTypeNames */
            aload 24 /* path */
            aconst_null
            invokeinterface org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor.acceptType:(I[C[C[[CLjava/lang/String;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)V
        end local 34 // int kind
        end local 33 // char[] simpleName
        end local 32 // char[][] enclosingTypeNames
        end local 31 // org.eclipse.jdt.core.IJavaElement parent
        end local 30 // org.eclipse.jdt.core.IType type
       125: .line 1875
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int
      StackMap stack:
            iinc 28 /* j */ 1
      StackMap locals:
      StackMap stack:
       126: iload 28 /* j */
            iload 29 /* allTypesLength */
            if_icmplt 102
        end local 29 // int allTypesLength
        end local 28 // int j
        end local 27 // org.eclipse.jdt.core.IType[] allTypes
        end local 26 // char[] packageDeclaration
        end local 25 // org.eclipse.jdt.core.IPackageDeclaration[] packageDeclarations
       127: .line 1904
            goto 137
       128: .line 1905
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getParser:()Lorg/eclipse/jdt/internal/compiler/parser/Parser;
            astore 25 /* basicParser */
        start local 25 // org.eclipse.jdt.internal.compiler.parser.Parser basicParser
       129: .line 1906
            aload 23 /* workingCopy */
            checkcast org.eclipse.jdt.internal.compiler.env.ICompilationUnit
            astore 26 /* unit */
        start local 26 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit unit
       130: .line 1907
            new org.eclipse.jdt.internal.compiler.CompilationResult
            dup
            aload 26 /* unit */
            iconst_0
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.compilerOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.maxProblemsPerUnit:I
            invokespecial org.eclipse.jdt.internal.compiler.CompilationResult.<init>:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;III)V
            astore 27 /* compilationUnitResult */
        start local 27 // org.eclipse.jdt.internal.compiler.CompilationResult compilationUnitResult
       131: .line 1908
            aload 25 /* basicParser */
            aload 26 /* unit */
            aload 27 /* compilationUnitResult */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Parser.dietParse:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;Lorg/eclipse/jdt/internal/compiler/CompilationResult;)Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            astore 28 /* parsedUnit */
        start local 28 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
       132: .line 1909
            aload 28 /* parsedUnit */
            ifnull 137
       133: .line 1910
            aload 28 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.currentPackage:Lorg/eclipse/jdt/internal/compiler/ast/ImportReference;
            ifnonnull 134
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            goto 135
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int org.eclipse.core.runtime.SubMonitor org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.internal.compiler.parser.Parser org.eclipse.jdt.internal.compiler.env.ICompilationUnit org.eclipse.jdt.internal.compiler.CompilationResult org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration
      StackMap stack:
       134: aload 28 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.currentPackage:Lorg/eclipse/jdt/internal/compiler/ast/ImportReference;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.ImportReference.getImportName:()[[C
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([[CC)[C
      StackMap locals:
      StackMap stack: char[]
       135: astore 29 /* packageDeclaration */
        start local 29 // char[] packageDeclaration
       136: .line 1956
            aload 28 /* parsedUnit */
            new org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllTypeDeclarationsVisitor
            dup
            aload 0 /* this */
            iload 12 /* typeSuffix */
            aload 1 /* packageName */
            iload 2 /* packageMatchRule */
            aload 3 /* typeName */
            iload 10 /* validatedTypeMatchRule */
            aload 29 /* packageDeclaration */
            aload 7 /* nameRequestor */
            aload 23 /* workingCopy */
            aload 24 /* path */
            invokespecial org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllTypeDeclarationsVisitor.<init>:(Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;C[CI[CI[CLorg/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor;Lorg/eclipse/jdt/core/ICompilationUnit;Ljava/lang/String;)V
            aload 28 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.scope:Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;)V
        end local 29 // char[] packageDeclaration
        end local 28 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
        end local 27 // org.eclipse.jdt.internal.compiler.CompilationResult compilationUnitResult
        end local 26 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit unit
        end local 25 // org.eclipse.jdt.internal.compiler.parser.Parser basicParser
        end local 24 // java.lang.String path
        end local 23 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        end local 22 // org.eclipse.core.runtime.SubMonitor iterationMonitor
       137: .line 1862
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor int org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int
      StackMap stack:
            iinc 21 /* i */ 1
      StackMap locals:
      StackMap stack:
       138: iload 21 /* i */
            iload 17 /* copiesLength */
            if_icmplt 87
        end local 21 // int i
        end local 20 // org.eclipse.core.runtime.SubMonitor subMonitor
        end local 19 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor searchRequestor
        end local 18 // java.lang.String singleWkcpPath
        end local 17 // int copiesLength
        end local 16 // org.eclipse.jdt.core.ICompilationUnit[] copies
        end local 15 // java.lang.String workingCopyPath
        end local 14 // java.util.HashSet workingCopyPaths
        end local 13 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern pattern
        end local 12 // char typeSuffix
        end local 11 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        end local 10 // int validatedTypeMatchRule
       139: .line 1961
            goto 144
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor
      StackMap stack: java.lang.Throwable
       140: astore 35
       141: .line 1962
            aload 9 /* progressMonitor */
            ifnull 143
       142: .line 1963
            aload 9 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
       143: .line 1965
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor top top top top top top top top top top top top top top top top top top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 35
            athrow
       144: .line 1962
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[] int char[] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor
      StackMap stack:
            aload 9 /* progressMonitor */
            ifnull 146
       145: .line 1963
            aload 9 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
       146: .line 1966
      StackMap locals:
      StackMap stack:
            return
        end local 9 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
        end local 8 // int waitingPolicy
        end local 7 // org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor nameRequestor
        end local 6 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        end local 5 // int searchFor
        end local 4 // int typeMatchRule
        end local 3 // char[] typeName
        end local 2 // int packageMatchRule
        end local 1 // char[] packageName
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0  147     0                    this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0  147     1             packageName  [C
            0  147     2        packageMatchRule  I
            0  147     3                typeName  [C
            0  147     4           typeMatchRule  I
            0  147     5               searchFor  I
            0  147     6                   scope  Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            0  147     7           nameRequestor  Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor;
            0  147     8           waitingPolicy  I
            0  147     9         progressMonitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            3  139    10  validatedTypeMatchRule  I
           22  139    11            indexManager  Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
           24   25    12              typeSuffix  C
           26   27    12              typeSuffix  C
           28   29    12              typeSuffix  C
           30   31    12              typeSuffix  C
           32   33    12              typeSuffix  C
           34   35    12              typeSuffix  C
           36   37    12              typeSuffix  C
           38  139    12              typeSuffix  C
           55  139    13                 pattern  Lorg/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern;
           56  139    14        workingCopyPaths  Ljava/util/HashSet;
           57  139    15         workingCopyPath  Ljava/lang/String;
           58  139    16                  copies  [Lorg/eclipse/jdt/core/ICompilationUnit;
           61  139    17            copiesLength  I
           66   71    18                       i  I
           68   69    19             workingCopy  Lorg/eclipse/jdt/core/ICompilationUnit;
           72  139    18          singleWkcpPath  Ljava/lang/String;
           73  139    19         searchRequestor  Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;
           74  139    20              subMonitor  Lorg/eclipse/core/runtime/SubMonitor;
           86  139    21                       i  I
           88  137    22        iterationMonitor  Lorg/eclipse/core/runtime/SubMonitor;
           89  137    23             workingCopy  Lorg/eclipse/jdt/core/ICompilationUnit;
           93  137    24                    path  Ljava/lang/String;
           95  127    25     packageDeclarations  [Lorg/eclipse/jdt/core/IPackageDeclaration;
           98  127    26      packageDeclaration  [C
           99  127    27                allTypes  [Lorg/eclipse/jdt/core/IType;
          100  127    28                       j  I
          101  127    29          allTypesLength  I
          103  125    30                    type  Lorg/eclipse/jdt/core/IType;
          104  125    31                  parent  Lorg/eclipse/jdt/core/IJavaElement;
          107  108    32      enclosingTypeNames  [[C
          109  125    32      enclosingTypeNames  [[C
          106  107    33     parentQualifiedName  [C
          110  125    33              simpleName  [C
          112  113    34                    kind  I
          115  116    34                    kind  I
          118  119    34                    kind  I
          120  125    34                    kind  I
          129  137    25             basicParser  Lorg/eclipse/jdt/internal/compiler/parser/Parser;
          130  137    26                    unit  Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;
          131  137    27   compilationUnitResult  Lorg/eclipse/jdt/internal/compiler/CompilationResult;
          132  137    28              parsedUnit  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
          136  137    29      packageDeclaration  [C
      Exception table:
        from    to  target  type
           0    18     140  any
          21   140     140  any
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                  Name  Flags
      packageName       final
      packageMatchRule  final
      typeName          final
      typeMatchRule     final
      searchFor         
      scope             
      nameRequestor     final
      waitingPolicy     
      progressMonitor   

  public void searchAllTypeNames(char[][], char[][], int, int, org.eclipse.jdt.core.search.IJavaSearchScope, org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor, int, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: ([[C[[CIILorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor;ILorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=35, args_size=9
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // char[][] qualifications
        start local 2 // char[][] typeNames
        start local 3 // int matchRule
        start local 4 // int searchFor
        start local 5 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        start local 6 // org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor nameRequestor
        start local 7 // int waitingPolicy
        start local 8 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
         0: .line 1987
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 11
         1: .line 1988
            ldc "BasicSearchEngine.searchAllTypeNames(char[][], char[][], int, int, IJavaSearchScope, IRestrictedAccessTypeRequestor, int, IProgressMonitor)"
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         2: .line 1989
            new java.lang.StringBuilder
            dup
            ldc "\t- package name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* qualifications */
            ifnonnull 3
            ldc "null"
            goto 4
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         3: new java.lang.String
            dup
            aload 1 /* qualifications */
            bipush 44
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([[CC)[C
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor
      StackMap stack: java.lang.StringBuilder java.lang.String
         4: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         5: .line 1990
            new java.lang.StringBuilder
            dup
            ldc "\t- type name: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* typeNames */
            ifnonnull 6
            ldc "null"
            goto 7
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         6: new java.lang.String
            dup
            aload 2 /* typeNames */
            bipush 44
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([[CC)[C
            invokespecial java.lang.String.<init>:([C)V
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor
      StackMap stack: java.lang.StringBuilder java.lang.String
         7: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         8: .line 1991
            new java.lang.StringBuilder
            dup
            ldc "\t- match rule: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* matchRule */
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getMatchRuleString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         9: .line 1992
            new java.lang.StringBuilder
            dup
            ldc "\t- search for: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* searchFor */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        10: .line 1993
            new java.lang.StringBuilder
            dup
            ldc "\t- scope: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* scope */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        11: .line 1995
      StackMap locals:
      StackMap stack:
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getIndexManager:()Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
            astore 9 /* indexManager */
        start local 9 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        12: .line 1999
            iload 4 /* searchFor */
            tableswitch { // 5 - 11
                    5: 13
                    6: 19
                    7: 23
                    8: 25
                    9: 17
                   10: 15
                   11: 21
              default: 27
          }
        13: .line 2001
      StackMap locals: org.eclipse.jdt.internal.core.search.indexing.IndexManager
      StackMap stack:
            bipush 67
            istore 10 /* typeSuffix */
        start local 10 // char typeSuffix
        14: .line 2002
            goto 28
        end local 10 // char typeSuffix
        15: .line 2004
      StackMap locals:
      StackMap stack:
            bipush 10
            istore 10 /* typeSuffix */
        start local 10 // char typeSuffix
        16: .line 2005
            goto 28
        end local 10 // char typeSuffix
        17: .line 2007
      StackMap locals:
      StackMap stack:
            bipush 9
            istore 10 /* typeSuffix */
        start local 10 // char typeSuffix
        18: .line 2008
            goto 28
        end local 10 // char typeSuffix
        19: .line 2010
      StackMap locals:
      StackMap stack:
            bipush 73
            istore 10 /* typeSuffix */
        start local 10 // char typeSuffix
        20: .line 2011
            goto 28
        end local 10 // char typeSuffix
        21: .line 2013
      StackMap locals:
      StackMap stack:
            bipush 11
            istore 10 /* typeSuffix */
        start local 10 // char typeSuffix
        22: .line 2014
            goto 28
        end local 10 // char typeSuffix
        23: .line 2016
      StackMap locals:
      StackMap stack:
            bipush 69
            istore 10 /* typeSuffix */
        start local 10 // char typeSuffix
        24: .line 2017
            goto 28
        end local 10 // char typeSuffix
        25: .line 2019
      StackMap locals:
      StackMap stack:
            bipush 65
            istore 10 /* typeSuffix */
        start local 10 // char typeSuffix
        26: .line 2020
            goto 28
        end local 10 // char typeSuffix
        27: .line 2022
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 10 /* typeSuffix */
        start local 10 // char typeSuffix
        28: .line 2025
      StackMap locals: int
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern
            dup
            aload 1 /* qualifications */
            aload 2 /* typeNames */
            iload 10 /* typeSuffix */
            iload 3 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.<init>:([[C[[CCI)V
            astore 11 /* pattern */
        start local 11 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern pattern
        29: .line 2028
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 12 /* workingCopyPaths */
        start local 12 // java.util.HashSet workingCopyPaths
        30: .line 2029
            aconst_null
            astore 13 /* workingCopyPath */
        start local 13 // java.lang.String workingCopyPath
        31: .line 2030
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getWorkingCopies:()[Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 14 /* copies */
        start local 14 // org.eclipse.jdt.core.ICompilationUnit[] copies
        32: .line 2031
            aload 14 /* copies */
            ifnonnull 33
            iconst_0
            goto 34
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[]
      StackMap stack:
        33: aload 14 /* copies */
            arraylength
      StackMap locals:
      StackMap stack: int
        34: istore 15 /* copiesLength */
        start local 15 // int copiesLength
        35: .line 2032
            aload 14 /* copies */
            ifnull 45
        36: .line 2033
            iload 15 /* copiesLength */
            iconst_1
            if_icmpne 39
        37: .line 2034
            aload 14 /* copies */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            astore 13 /* workingCopyPath */
        38: .line 2035
            goto 45
        39: .line 2036
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 16 /* i */
        start local 16 // int i
        40: goto 44
        41: .line 2037
      StackMap locals: int
      StackMap stack:
            aload 14 /* copies */
            iload 16 /* i */
            aaload
            astore 17 /* workingCopy */
        start local 17 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        42: .line 2038
            aload 12 /* workingCopyPaths */
            aload 17 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 17 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        43: .line 2036
            iinc 16 /* i */ 1
      StackMap locals:
      StackMap stack:
        44: iload 16 /* i */
            iload 15 /* copiesLength */
            if_icmplt 41
        end local 16 // int i
        45: .line 2042
      StackMap locals:
      StackMap stack:
            aload 13 /* workingCopyPath */
            astore 16 /* singleWkcpPath */
        start local 16 // java.lang.String singleWkcpPath
        46: .line 2045
            new org.eclipse.jdt.internal.core.search.BasicSearchEngine$6
            dup
            aload 0 /* this */
            iload 15 /* copiesLength */
            aload 16 /* singleWkcpPath */
            aload 12 /* workingCopyPaths */
            aload 6 /* nameRequestor */
            invokespecial org.eclipse.jdt.internal.core.search.BasicSearchEngine$6.<init>:(Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;ILjava/lang/String;Ljava/util/HashSet;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor;)V
            astore 17 /* searchRequestor */
        start local 17 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor searchRequestor
        47: .line 2099
            aload 8 /* progressMonitor */
            getstatic org.eclipse.jdt.internal.core.util.Messages.engine_searching:Ljava/lang/String;
            bipush 100
            invokestatic org.eclipse.core.runtime.SubMonitor.convert:(Lorg/eclipse/core/runtime/IProgressMonitor;Ljava/lang/String;I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 18 /* subMonitor */
        start local 18 // org.eclipse.core.runtime.SubMonitor subMonitor
        48: .line 2101
            aload 9 /* indexManager */
        49: .line 2102
            new org.eclipse.jdt.internal.core.search.PatternSearchJob
            dup
        50: .line 2103
            aload 11 /* pattern */
        51: .line 2104
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getDefaultSearchParticipant:()Lorg/eclipse/jdt/core/search/SearchParticipant;
        52: .line 2105
            aload 5 /* scope */
        53: .line 2106
            aload 17 /* searchRequestor */
        54: .line 2102
            invokespecial org.eclipse.jdt.internal.core.search.PatternSearchJob.<init>:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;)V
        55: .line 2107
            iload 7 /* waitingPolicy */
        56: .line 2108
            aload 18 /* subMonitor */
            bipush 100
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
        57: .line 2101
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.performConcurrentJob:(Lorg/eclipse/jdt/internal/core/search/processing/IJob;ILorg/eclipse/core/runtime/IProgressMonitor;)Z
            pop
        58: .line 2111
            aload 14 /* copies */
            ifnull 117
        59: .line 2112
            iconst_0
            istore 19 /* i */
        start local 19 // int i
        60: aload 14 /* copies */
            arraylength
            istore 20 /* length */
        start local 20 // int length
        61: goto 111
        62: .line 2113
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int int
      StackMap stack:
            aload 14 /* copies */
            iload 19 /* i */
            aaload
            astore 21 /* workingCopy */
        start local 21 // org.eclipse.jdt.core.ICompilationUnit workingCopy
        63: .line 2114
            aload 21 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            astore 22 /* path */
        start local 22 // java.lang.String path
        64: .line 2115
            aload 21 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.isConsistent:()Z
            ifeq 100
        65: .line 2116
            aload 21 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPackageDeclarations:()[Lorg/eclipse/jdt/core/IPackageDeclaration;
            astore 23 /* packageDeclarations */
        start local 23 // org.eclipse.jdt.core.IPackageDeclaration[] packageDeclarations
        66: .line 2117
            aload 23 /* packageDeclarations */
            arraylength
            ifne 67
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            goto 68
      StackMap locals: org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[]
      StackMap stack:
        67: aload 23 /* packageDeclarations */
            iconst_0
            aaload
            invokeinterface org.eclipse.jdt.core.IPackageDeclaration.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
      StackMap locals:
      StackMap stack: char[]
        68: astore 24 /* packageDeclaration */
        start local 24 // char[] packageDeclaration
        69: .line 2118
            aload 21 /* workingCopy */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getAllTypes:()[Lorg/eclipse/jdt/core/IType;
            astore 25 /* allTypes */
        start local 25 // org.eclipse.jdt.core.IType[] allTypes
        70: .line 2119
            iconst_0
            istore 26 /* j */
        start local 26 // int j
        71: aload 25 /* allTypes */
            arraylength
            istore 27 /* allTypesLength */
        start local 27 // int allTypesLength
        72: goto 98
        73: .line 2120
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int int org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int
      StackMap stack:
            aload 25 /* allTypes */
            iload 26 /* j */
            aaload
            astore 28 /* type */
        start local 28 // org.eclipse.jdt.core.IType type
        74: .line 2121
            aload 28 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getParent:()Lorg/eclipse/jdt/core/IJavaElement;
            astore 29 /* parent */
        start local 29 // org.eclipse.jdt.core.IJavaElement parent
        75: .line 2123
            aload 24 /* packageDeclaration */
            astore 31 /* qualification */
        start local 31 // char[] qualification
        76: .line 2124
            aload 29 /* parent */
            instanceof org.eclipse.jdt.core.IType
            ifeq 81
        77: .line 2125
            aload 29 /* parent */
            checkcast org.eclipse.jdt.core.IType
            bipush 46
            invokeinterface org.eclipse.jdt.core.IType.getTypeQualifiedName:(C)Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 32 /* parentQualifiedName */
        start local 32 // char[] parentQualifiedName
        78: .line 2126
            bipush 46
            aload 32 /* parentQualifiedName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[C)[[C
            astore 30 /* enclosingTypeNames */
        start local 30 // char[][] enclosingTypeNames
        79: .line 2127
            aload 31 /* qualification */
            aload 32 /* parentQualifiedName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concat:([C[C)[C
            astore 31 /* qualification */
        end local 32 // char[] parentQualifiedName
        80: .line 2128
            goto 82
        end local 30 // char[][] enclosingTypeNames
        81: .line 2129
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int int org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int org.eclipse.jdt.core.IType org.eclipse.jdt.core.IJavaElement top char[]
      StackMap stack:
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR_CHAR:[[C
            astore 30 /* enclosingTypeNames */
        start local 30 // char[][] enclosingTypeNames
        82: .line 2131
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int int org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int org.eclipse.jdt.core.IType org.eclipse.jdt.core.IJavaElement char[][] char[]
      StackMap stack:
            aload 28 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 32 /* simpleName */
        start local 32 // char[] simpleName
        83: .line 2132
            iconst_0
            istore 33 /* suffix */
        start local 33 // char suffix
        84: .line 2133
            aload 28 /* type */
            invokeinterface org.eclipse.jdt.core.IType.isClass:()Z
            ifeq 87
        85: .line 2134
            bipush 67
            istore 33 /* suffix */
        86: .line 2135
            goto 95
      StackMap locals: char[] int
      StackMap stack:
        87: aload 28 /* type */
            invokeinterface org.eclipse.jdt.core.IType.isInterface:()Z
            ifeq 90
        88: .line 2136
            bipush 73
            istore 33 /* suffix */
        89: .line 2137
            goto 95
      StackMap locals:
      StackMap stack:
        90: aload 28 /* type */
            invokeinterface org.eclipse.jdt.core.IType.isEnum:()Z
            ifeq 93
        91: .line 2138
            bipush 69
            istore 33 /* suffix */
        92: .line 2139
            goto 95
      StackMap locals:
      StackMap stack:
        93: aload 28 /* type */
            invokeinterface org.eclipse.jdt.core.IType.isAnnotation:()Z
            ifeq 95
        94: .line 2140
            bipush 65
            istore 33 /* suffix */
        95: .line 2142
      StackMap locals:
      StackMap stack:
            aload 11 /* pattern */
            new org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern
            dup
            aload 31 /* qualification */
            aload 32 /* simpleName */
            iload 33 /* suffix */
            iload 3 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern.<init>:([C[CCI)V
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.matchesDecodedKey:(Lorg/eclipse/jdt/core/search/SearchPattern;)Z
            ifeq 97
        96: .line 2143
            aload 6 /* nameRequestor */
            aload 28 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getFlags:()I
            aload 24 /* packageDeclaration */
            aload 32 /* simpleName */
            aload 30 /* enclosingTypeNames */
            aload 22 /* path */
            aconst_null
            invokeinterface org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor.acceptType:(I[C[C[[CLjava/lang/String;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)V
        end local 33 // char suffix
        end local 32 // char[] simpleName
        end local 31 // char[] qualification
        end local 30 // char[][] enclosingTypeNames
        end local 29 // org.eclipse.jdt.core.IJavaElement parent
        end local 28 // org.eclipse.jdt.core.IType type
        97: .line 2119
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int int org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.core.IPackageDeclaration[] char[] org.eclipse.jdt.core.IType[] int int
      StackMap stack:
            iinc 26 /* j */ 1
      StackMap locals:
      StackMap stack:
        98: iload 26 /* j */
            iload 27 /* allTypesLength */
            if_icmplt 73
        end local 27 // int allTypesLength
        end local 26 // int j
        end local 25 // org.eclipse.jdt.core.IType[] allTypes
        end local 24 // char[] packageDeclaration
        end local 23 // org.eclipse.jdt.core.IPackageDeclaration[] packageDeclarations
        99: .line 2146
            goto 110
       100: .line 2147
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int int org.eclipse.jdt.core.ICompilationUnit java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getParser:()Lorg/eclipse/jdt/internal/compiler/parser/Parser;
            astore 23 /* basicParser */
        start local 23 // org.eclipse.jdt.internal.compiler.parser.Parser basicParser
       101: .line 2148
            aload 21 /* workingCopy */
            checkcast org.eclipse.jdt.internal.compiler.env.ICompilationUnit
            astore 24 /* unit */
        start local 24 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit unit
       102: .line 2149
            new org.eclipse.jdt.internal.compiler.CompilationResult
            dup
            aload 24 /* unit */
            iconst_0
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.BasicSearchEngine.compilerOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.maxProblemsPerUnit:I
            invokespecial org.eclipse.jdt.internal.compiler.CompilationResult.<init>:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;III)V
            astore 25 /* compilationUnitResult */
        start local 25 // org.eclipse.jdt.internal.compiler.CompilationResult compilationUnitResult
       103: .line 2150
            aload 23 /* basicParser */
            aload 24 /* unit */
            aload 25 /* compilationUnitResult */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Parser.dietParse:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;Lorg/eclipse/jdt/internal/compiler/CompilationResult;)Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            astore 26 /* parsedUnit */
        start local 26 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
       104: .line 2151
            aload 26 /* parsedUnit */
            ifnull 110
       105: .line 2152
            aload 26 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.currentPackage:Lorg/eclipse/jdt/internal/compiler/ast/ImportReference;
            ifnonnull 107
       106: .line 2153
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            goto 108
       107: .line 2154
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int int org.eclipse.jdt.core.ICompilationUnit java.lang.String org.eclipse.jdt.internal.compiler.parser.Parser org.eclipse.jdt.internal.compiler.env.ICompilationUnit org.eclipse.jdt.internal.compiler.CompilationResult org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration
      StackMap stack:
            aload 26 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.currentPackage:Lorg/eclipse/jdt/internal/compiler/ast/ImportReference;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.ImportReference.getImportName:()[[C
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([[CC)[C
       108: .line 2152
      StackMap locals:
      StackMap stack: char[]
            astore 27 /* packageDeclaration */
        start local 27 // char[] packageDeclaration
       109: .line 2192
            aload 26 /* parsedUnit */
            new org.eclipse.jdt.internal.core.search.BasicSearchEngine$2AllTypeDeclarationsVisitor
            dup
            aload 0 /* this */
            aload 27 /* packageDeclaration */
            iload 3 /* matchRule */
            aload 11 /* pattern */
            aload 6 /* nameRequestor */
            aload 22 /* path */
            invokespecial org.eclipse.jdt.internal.core.search.BasicSearchEngine$2AllTypeDeclarationsVisitor.<init>:(Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;[CILorg/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern;Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor;Ljava/lang/String;)V
            aload 26 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.scope:Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.traverse:(Lorg/eclipse/jdt/internal/compiler/ASTVisitor;Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;)V
        end local 27 // char[] packageDeclaration
        end local 26 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
        end local 25 // org.eclipse.jdt.internal.compiler.CompilationResult compilationUnitResult
        end local 24 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit unit
        end local 23 // org.eclipse.jdt.internal.compiler.parser.Parser basicParser
        end local 22 // java.lang.String path
        end local 21 // org.eclipse.jdt.core.ICompilationUnit workingCopy
       110: .line 2112
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.core.search.indexing.IndexManager int org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern java.util.HashSet java.lang.String org.eclipse.jdt.core.ICompilationUnit[] int java.lang.String org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.core.runtime.SubMonitor int int
      StackMap stack:
            iinc 19 /* i */ 1
      StackMap locals:
      StackMap stack:
       111: iload 19 /* i */
            iload 20 /* length */
            if_icmplt 62
        end local 20 // int length
        end local 19 // int i
        end local 18 // org.eclipse.core.runtime.SubMonitor subMonitor
        end local 17 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor searchRequestor
        end local 16 // java.lang.String singleWkcpPath
        end local 15 // int copiesLength
        end local 14 // org.eclipse.jdt.core.ICompilationUnit[] copies
        end local 13 // java.lang.String workingCopyPath
        end local 12 // java.util.HashSet workingCopyPaths
        end local 11 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern pattern
        end local 10 // char typeSuffix
        end local 9 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
       112: .line 2197
            goto 117
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor
      StackMap stack: java.lang.Throwable
       113: astore 34
       114: .line 2198
            aload 8 /* progressMonitor */
            ifnull 116
       115: .line 2199
            aload 8 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
       116: .line 2201
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor top top top top top top top top top top top top top top top top top top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 34
            athrow
       117: .line 2198
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine char[][] char[][] int int org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor int org.eclipse.core.runtime.IProgressMonitor
      StackMap stack:
            aload 8 /* progressMonitor */
            ifnull 119
       118: .line 2199
            aload 8 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
       119: .line 2202
      StackMap locals:
      StackMap stack:
            return
        end local 8 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
        end local 7 // int waitingPolicy
        end local 6 // org.eclipse.jdt.internal.core.search.IRestrictedAccessTypeRequestor nameRequestor
        end local 5 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        end local 4 // int searchFor
        end local 3 // int matchRule
        end local 2 // char[][] typeNames
        end local 1 // char[][] qualifications
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0  120     0                   this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0  120     1         qualifications  [[C
            0  120     2              typeNames  [[C
            0  120     3              matchRule  I
            0  120     4              searchFor  I
            0  120     5                  scope  Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            0  120     6          nameRequestor  Lorg/eclipse/jdt/internal/core/search/IRestrictedAccessTypeRequestor;
            0  120     7          waitingPolicy  I
            0  120     8        progressMonitor  Lorg/eclipse/core/runtime/IProgressMonitor;
           12  112     9           indexManager  Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
           14   15    10             typeSuffix  C
           16   17    10             typeSuffix  C
           18   19    10             typeSuffix  C
           20   21    10             typeSuffix  C
           22   23    10             typeSuffix  C
           24   25    10             typeSuffix  C
           26   27    10             typeSuffix  C
           28  112    10             typeSuffix  C
           29  112    11                pattern  Lorg/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern;
           30  112    12       workingCopyPaths  Ljava/util/HashSet;
           31  112    13        workingCopyPath  Ljava/lang/String;
           32  112    14                 copies  [Lorg/eclipse/jdt/core/ICompilationUnit;
           35  112    15           copiesLength  I
           40   45    16                      i  I
           42   43    17            workingCopy  Lorg/eclipse/jdt/core/ICompilationUnit;
           46  112    16         singleWkcpPath  Ljava/lang/String;
           47  112    17        searchRequestor  Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;
           48  112    18             subMonitor  Lorg/eclipse/core/runtime/SubMonitor;
           60  112    19                      i  I
           61  112    20                 length  I
           63  110    21            workingCopy  Lorg/eclipse/jdt/core/ICompilationUnit;
           64  110    22                   path  Ljava/lang/String;
           66   99    23    packageDeclarations  [Lorg/eclipse/jdt/core/IPackageDeclaration;
           69   99    24     packageDeclaration  [C
           70   99    25               allTypes  [Lorg/eclipse/jdt/core/IType;
           71   99    26                      j  I
           72   99    27         allTypesLength  I
           74   97    28                   type  Lorg/eclipse/jdt/core/IType;
           75   97    29                 parent  Lorg/eclipse/jdt/core/IJavaElement;
           79   81    30     enclosingTypeNames  [[C
           82   97    30     enclosingTypeNames  [[C
           76   97    31          qualification  [C
           78   80    32    parentQualifiedName  [C
           83   97    32             simpleName  [C
           84   97    33                 suffix  C
          101  110    23            basicParser  Lorg/eclipse/jdt/internal/compiler/parser/Parser;
          102  110    24                   unit  Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;
          103  110    25  compilationUnitResult  Lorg/eclipse/jdt/internal/compiler/CompilationResult;
          104  110    26             parsedUnit  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
          109  110    27     packageDeclaration  [C
      Exception table:
        from    to  target  type
           0   113     113  any
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                 Name  Flags
      qualifications   final
      typeNames        final
      matchRule        final
      searchFor        
      scope            
      nameRequestor    final
      waitingPolicy    
      progressMonitor  

  public void searchDeclarations(org.eclipse.jdt.core.IJavaElement, org.eclipse.jdt.core.search.SearchRequestor, org.eclipse.jdt.core.search.SearchPattern, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: (Lorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=11, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // org.eclipse.jdt.core.IJavaElement enclosingElement
        start local 2 // org.eclipse.jdt.core.search.SearchRequestor requestor
        start local 3 // org.eclipse.jdt.core.search.SearchPattern pattern
        start local 4 // org.eclipse.core.runtime.IProgressMonitor monitor
         0: .line 2206
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 2
         1: .line 2207
            new java.lang.StringBuilder
            dup
            ldc "\t- java element: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* enclosingElement */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         2: .line 2209
      StackMap locals:
      StackMap stack:
            iconst_1
            anewarray org.eclipse.jdt.core.IJavaElement
            dup
            iconst_0
            aload 1 /* enclosingElement */
            aastore
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.createJavaSearchScope:([Lorg/eclipse/jdt/core/IJavaElement;)Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            astore 5 /* scope */
        start local 5 // org.eclipse.jdt.core.search.IJavaSearchScope scope
         3: .line 2210
            aload 1 /* enclosingElement */
            checkcast org.eclipse.jdt.internal.core.JavaElement
            invokevirtual org.eclipse.jdt.internal.core.JavaElement.resource:()Lorg/eclipse/core/resources/IResource;
            astore 6 /* resource */
        start local 6 // org.eclipse.core.resources.IResource resource
         4: .line 2211
            aload 1 /* enclosingElement */
            instanceof org.eclipse.jdt.core.IMember
            ifeq 12
         5: .line 2212
            aload 1 /* enclosingElement */
            checkcast org.eclipse.jdt.core.IMember
            astore 7 /* member */
        start local 7 // org.eclipse.jdt.core.IMember member
         6: .line 2213
            aload 7 /* member */
            invokeinterface org.eclipse.jdt.core.IMember.getCompilationUnit:()Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 8 /* cu */
        start local 8 // org.eclipse.jdt.core.ICompilationUnit cu
         7: .line 2214
            aload 8 /* cu */
            ifnull 10
         8: .line 2215
            aload 8 /* cu */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getResource:()Lorg/eclipse/core/resources/IResource;
            astore 6 /* resource */
         9: .line 2216
            goto 12
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.IJavaElement org.eclipse.jdt.core.search.SearchRequestor org.eclipse.jdt.core.search.SearchPattern org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.core.resources.IResource org.eclipse.jdt.core.IMember org.eclipse.jdt.core.ICompilationUnit
      StackMap stack:
        10: aload 7 /* member */
            invokeinterface org.eclipse.jdt.core.IMember.isBinary:()Z
            ifeq 12
        11: .line 2219
            aconst_null
            astore 6 /* resource */
        end local 8 // org.eclipse.jdt.core.ICompilationUnit cu
        end local 7 // org.eclipse.jdt.core.IMember member
        12: .line 2223
      StackMap locals:
      StackMap stack:
            aload 6 /* resource */
            instanceof org.eclipse.core.resources.IFile
            ifeq 35
        13: .line 2225
            aload 2 /* requestor */
            invokevirtual org.eclipse.jdt.core.search.SearchRequestor.beginReporting:()V
        14: .line 2226
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 16
        15: .line 2227
            new java.lang.StringBuilder
            dup
            ldc "Searching for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* pattern */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* resource */
            invokeinterface org.eclipse.core.resources.IResource.getFullPath:()Lorg/eclipse/core/runtime/IPath;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        16: .line 2229
      StackMap locals:
      StackMap stack:
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getDefaultSearchParticipant:()Lorg/eclipse/jdt/core/search/SearchParticipant;
            astore 7 /* participant */
        start local 7 // org.eclipse.jdt.core.search.SearchParticipant participant
        17: .line 2231
            aload 3 /* pattern */
        18: .line 2232
            iconst_1
            anewarray org.eclipse.jdt.core.search.SearchDocument
            dup
            iconst_0
            new org.eclipse.jdt.internal.core.search.JavaSearchDocument
            dup
            aload 1 /* enclosingElement */
            invokeinterface org.eclipse.jdt.core.IJavaElement.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aload 7 /* participant */
            invokespecial org.eclipse.jdt.internal.core.search.JavaSearchDocument.<init>:(Ljava/lang/String;Lorg/eclipse/jdt/core/search/SearchParticipant;)V
            aastore
        19: .line 2233
            aload 0 /* this */
            aload 1 /* enclosingElement */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.getWorkingCopies:(Lorg/eclipse/jdt/core/IJavaElement;)[Lorg/eclipse/jdt/core/ICompilationUnit;
        20: .line 2234
            aload 7 /* participant */
        21: .line 2230
            invokestatic org.eclipse.jdt.internal.core.search.matching.MatchLocator.addWorkingCopies:(Lorg/eclipse/jdt/core/search/SearchPattern;[Lorg/eclipse/jdt/core/search/SearchDocument;[Lorg/eclipse/jdt/core/ICompilationUnit;Lorg/eclipse/jdt/core/search/SearchParticipant;)[Lorg/eclipse/jdt/core/search/SearchDocument;
            astore 8 /* documents */
        start local 8 // org.eclipse.jdt.core.search.SearchDocument[] documents
        22: .line 2235
            aload 7 /* participant */
        23: .line 2236
            aload 8 /* documents */
        24: .line 2237
            aload 3 /* pattern */
        25: .line 2238
            aload 5 /* scope */
        26: .line 2239
            aload 2 /* requestor */
        27: .line 2240
            aload 4 /* monitor */
        28: .line 2235
            invokevirtual org.eclipse.jdt.core.search.SearchParticipant.locateMatches:([Lorg/eclipse/jdt/core/search/SearchDocument;Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/core/runtime/IProgressMonitor;)V
        end local 8 // org.eclipse.jdt.core.search.SearchDocument[] documents
        end local 7 // org.eclipse.jdt.core.search.SearchParticipant participant
        29: .line 2241
            goto 33
      StackMap locals:
      StackMap stack: java.lang.Throwable
        30: astore 9
        31: .line 2242
            aload 2 /* requestor */
            invokevirtual org.eclipse.jdt.core.search.SearchRequestor.endReporting:()V
        32: .line 2243
            aload 9
            athrow
        33: .line 2242
      StackMap locals:
      StackMap stack:
            aload 2 /* requestor */
            invokevirtual org.eclipse.jdt.core.search.SearchRequestor.endReporting:()V
        34: .line 2244
            goto 51
        35: .line 2245
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        36: .line 2246
            aload 3 /* pattern */
        37: .line 2247
            iconst_1
            anewarray org.eclipse.jdt.core.search.SearchParticipant
            dup
            iconst_0
            invokestatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.getDefaultSearchParticipant:()Lorg/eclipse/jdt/core/search/SearchParticipant;
            aastore
        38: .line 2248
            aload 5 /* scope */
        39: .line 2249
            aload 2 /* requestor */
        40: .line 2250
            aload 4 /* monitor */
        41: .line 2245
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.search:(Lorg/eclipse/jdt/core/search/SearchPattern;[Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/core/runtime/IProgressMonitor;)V
        42: .line 2252
            goto 51
      StackMap locals:
      StackMap stack: org.eclipse.core.runtime.CoreException
        43: astore 7 /* e */
        start local 7 // org.eclipse.core.runtime.CoreException e
        44: .line 2253
            aload 7 /* e */
            instanceof org.eclipse.jdt.core.JavaModelException
            ifeq 46
        45: .line 2254
            aload 7 /* e */
            checkcast org.eclipse.jdt.core.JavaModelException
            athrow
        46: .line 2255
      StackMap locals: org.eclipse.core.runtime.CoreException
      StackMap stack:
            new org.eclipse.jdt.core.JavaModelException
            dup
            aload 7 /* e */
            invokespecial org.eclipse.jdt.core.JavaModelException.<init>:(Lorg/eclipse/core/runtime/CoreException;)V
            athrow
        end local 7 // org.eclipse.core.runtime.CoreException e
        end local 6 // org.eclipse.core.resources.IResource resource
        end local 5 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        47: .line 2257
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.IJavaElement org.eclipse.jdt.core.search.SearchRequestor org.eclipse.jdt.core.search.SearchPattern org.eclipse.core.runtime.IProgressMonitor
      StackMap stack: java.lang.Throwable
            astore 10
        48: .line 2258
            aload 4 /* monitor */
            ifnull 50
        49: .line 2259
            aload 4 /* monitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
        50: .line 2261
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.IJavaElement org.eclipse.jdt.core.search.SearchRequestor org.eclipse.jdt.core.search.SearchPattern org.eclipse.core.runtime.IProgressMonitor top top top top top java.lang.Throwable
      StackMap stack:
            aload 10
            athrow
        51: .line 2258
      StackMap locals: org.eclipse.jdt.internal.core.search.BasicSearchEngine org.eclipse.jdt.core.IJavaElement org.eclipse.jdt.core.search.SearchRequestor org.eclipse.jdt.core.search.SearchPattern org.eclipse.core.runtime.IProgressMonitor
      StackMap stack:
            aload 4 /* monitor */
            ifnull 53
        52: .line 2259
            aload 4 /* monitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.done:()V
        53: .line 2262
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.eclipse.core.runtime.IProgressMonitor monitor
        end local 3 // org.eclipse.jdt.core.search.SearchPattern pattern
        end local 2 // org.eclipse.jdt.core.search.SearchRequestor requestor
        end local 1 // org.eclipse.jdt.core.IJavaElement enclosingElement
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   54     0              this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0   54     1  enclosingElement  Lorg/eclipse/jdt/core/IJavaElement;
            0   54     2         requestor  Lorg/eclipse/jdt/core/search/SearchRequestor;
            0   54     3           pattern  Lorg/eclipse/jdt/core/search/SearchPattern;
            0   54     4           monitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            3   47     5             scope  Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            4   47     6          resource  Lorg/eclipse/core/resources/IResource;
            6   12     7            member  Lorg/eclipse/jdt/core/IMember;
            7   12     8                cu  Lorg/eclipse/jdt/core/ICompilationUnit;
           17   29     7       participant  Lorg/eclipse/jdt/core/search/SearchParticipant;
           22   29     8         documents  [Lorg/eclipse/jdt/core/search/SearchDocument;
           44   47     7                 e  Lorg/eclipse/core/runtime/CoreException;
      Exception table:
        from    to  target  type
          13    30      30  any
          12    42      43  Class org.eclipse.core.runtime.CoreException
           0    47      47  any
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                  Name  Flags
      enclosingElement  
      requestor         
      pattern           
      monitor           

  public void searchDeclarationsOfAccessedFields(org.eclipse.jdt.core.IJavaElement, org.eclipse.jdt.core.search.SearchRequestor, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: (Lorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // org.eclipse.jdt.core.IJavaElement enclosingElement
        start local 2 // org.eclipse.jdt.core.search.SearchRequestor requestor
        start local 3 // org.eclipse.core.runtime.IProgressMonitor monitor
         0: .line 2273
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 2
         1: .line 2274
            ldc "BasicSearchEngine.searchDeclarationsOfAccessedFields(IJavaElement, SearchRequestor, SearchPattern, IProgressMonitor)"
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         2: .line 2277
      StackMap locals:
      StackMap stack:
            aload 1 /* enclosingElement */
            invokeinterface org.eclipse.jdt.core.IJavaElement.getElementType:()I
            tableswitch { // 5 - 9
                    5: 3
                    6: 4
                    7: 3
                    8: 3
                    9: 3
              default: 4
          }
         3: .line 2283
      StackMap locals:
      StackMap stack:
            goto 5
         4: .line 2285
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         5: .line 2287
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.DeclarationOfAccessedFieldsPattern
            dup
            aload 1 /* enclosingElement */
            invokespecial org.eclipse.jdt.internal.core.search.matching.DeclarationOfAccessedFieldsPattern.<init>:(Lorg/eclipse/jdt/core/IJavaElement;)V
            astore 4 /* pattern */
        start local 4 // org.eclipse.jdt.core.search.SearchPattern pattern
         6: .line 2288
            aload 0 /* this */
            aload 1 /* enclosingElement */
            aload 2 /* requestor */
            aload 4 /* pattern */
            aload 3 /* monitor */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.searchDeclarations:(Lorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/core/runtime/IProgressMonitor;)V
         7: .line 2289
            return
        end local 4 // org.eclipse.jdt.core.search.SearchPattern pattern
        end local 3 // org.eclipse.core.runtime.IProgressMonitor monitor
        end local 2 // org.eclipse.jdt.core.search.SearchRequestor requestor
        end local 1 // org.eclipse.jdt.core.IJavaElement enclosingElement
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0    8     1  enclosingElement  Lorg/eclipse/jdt/core/IJavaElement;
            0    8     2         requestor  Lorg/eclipse/jdt/core/search/SearchRequestor;
            0    8     3           monitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            6    8     4           pattern  Lorg/eclipse/jdt/core/search/SearchPattern;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                  Name  Flags
      enclosingElement  
      requestor         
      monitor           

  public void searchDeclarationsOfReferencedTypes(org.eclipse.jdt.core.IJavaElement, org.eclipse.jdt.core.search.SearchRequestor, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: (Lorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // org.eclipse.jdt.core.IJavaElement enclosingElement
        start local 2 // org.eclipse.jdt.core.search.SearchRequestor requestor
        start local 3 // org.eclipse.core.runtime.IProgressMonitor monitor
         0: .line 2300
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 2
         1: .line 2301
            ldc "BasicSearchEngine.searchDeclarationsOfReferencedTypes(IJavaElement, SearchRequestor, SearchPattern, IProgressMonitor)"
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         2: .line 2304
      StackMap locals:
      StackMap stack:
            aload 1 /* enclosingElement */
            invokeinterface org.eclipse.jdt.core.IJavaElement.getElementType:()I
            tableswitch { // 5 - 9
                    5: 3
                    6: 4
                    7: 3
                    8: 3
                    9: 3
              default: 4
          }
         3: .line 2310
      StackMap locals:
      StackMap stack:
            goto 5
         4: .line 2312
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         5: .line 2314
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.DeclarationOfReferencedTypesPattern
            dup
            aload 1 /* enclosingElement */
            invokespecial org.eclipse.jdt.internal.core.search.matching.DeclarationOfReferencedTypesPattern.<init>:(Lorg/eclipse/jdt/core/IJavaElement;)V
            astore 4 /* pattern */
        start local 4 // org.eclipse.jdt.core.search.SearchPattern pattern
         6: .line 2315
            aload 0 /* this */
            aload 1 /* enclosingElement */
            aload 2 /* requestor */
            aload 4 /* pattern */
            aload 3 /* monitor */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.searchDeclarations:(Lorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/core/runtime/IProgressMonitor;)V
         7: .line 2316
            return
        end local 4 // org.eclipse.jdt.core.search.SearchPattern pattern
        end local 3 // org.eclipse.core.runtime.IProgressMonitor monitor
        end local 2 // org.eclipse.jdt.core.search.SearchRequestor requestor
        end local 1 // org.eclipse.jdt.core.IJavaElement enclosingElement
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0    8     1  enclosingElement  Lorg/eclipse/jdt/core/IJavaElement;
            0    8     2         requestor  Lorg/eclipse/jdt/core/search/SearchRequestor;
            0    8     3           monitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            6    8     4           pattern  Lorg/eclipse/jdt/core/search/SearchPattern;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                  Name  Flags
      enclosingElement  
      requestor         
      monitor           

  public void searchDeclarationsOfSentMessages(org.eclipse.jdt.core.IJavaElement, org.eclipse.jdt.core.search.SearchRequestor, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: (Lorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
        start local 1 // org.eclipse.jdt.core.IJavaElement enclosingElement
        start local 2 // org.eclipse.jdt.core.search.SearchRequestor requestor
        start local 3 // org.eclipse.core.runtime.IProgressMonitor monitor
         0: .line 2327
            getstatic org.eclipse.jdt.internal.core.search.BasicSearchEngine.VERBOSE:Z
            ifeq 2
         1: .line 2328
            ldc "BasicSearchEngine.searchDeclarationsOfSentMessages(IJavaElement, SearchRequestor, SearchPattern, IProgressMonitor)"
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
         2: .line 2331
      StackMap locals:
      StackMap stack:
            aload 1 /* enclosingElement */
            invokeinterface org.eclipse.jdt.core.IJavaElement.getElementType:()I
            tableswitch { // 5 - 9
                    5: 3
                    6: 4
                    7: 3
                    8: 3
                    9: 3
              default: 4
          }
         3: .line 2337
      StackMap locals:
      StackMap stack:
            goto 5
         4: .line 2339
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         5: .line 2341
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.DeclarationOfReferencedMethodsPattern
            dup
            aload 1 /* enclosingElement */
            invokespecial org.eclipse.jdt.internal.core.search.matching.DeclarationOfReferencedMethodsPattern.<init>:(Lorg/eclipse/jdt/core/IJavaElement;)V
            astore 4 /* pattern */
        start local 4 // org.eclipse.jdt.core.search.SearchPattern pattern
         6: .line 2342
            aload 0 /* this */
            aload 1 /* enclosingElement */
            aload 2 /* requestor */
            aload 4 /* pattern */
            aload 3 /* monitor */
            invokevirtual org.eclipse.jdt.internal.core.search.BasicSearchEngine.searchDeclarations:(Lorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/jdt/core/search/SearchRequestor;Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/core/runtime/IProgressMonitor;)V
         7: .line 2343
            return
        end local 4 // org.eclipse.jdt.core.search.SearchPattern pattern
        end local 3 // org.eclipse.core.runtime.IProgressMonitor monitor
        end local 2 // org.eclipse.jdt.core.search.SearchRequestor requestor
        end local 1 // org.eclipse.jdt.core.IJavaElement enclosingElement
        end local 0 // org.eclipse.jdt.internal.core.search.BasicSearchEngine this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lorg/eclipse/jdt/internal/core/search/BasicSearchEngine;
            0    8     1  enclosingElement  Lorg/eclipse/jdt/core/IJavaElement;
            0    8     2         requestor  Lorg/eclipse/jdt/core/search/SearchRequestor;
            0    8     3           monitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            6    8     4           pattern  Lorg/eclipse/jdt/core/search/SearchPattern;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                  Name  Flags
      enclosingElement  
      requestor         
      monitor           
}
SourceFile: "BasicSearchEngine.java"
NestMembers:
  org.eclipse.jdt.internal.core.search.BasicSearchEngine$1  org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllConstructorDeclarationsVisitor  org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllMethodDeclarationVisitor  org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllMethodDeclarationVisitor$TypeInfo  org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllTypeDeclarationsVisitor  org.eclipse.jdt.internal.core.search.BasicSearchEngine$2  org.eclipse.jdt.internal.core.search.BasicSearchEngine$2AllMethodDeclarationVisitor  org.eclipse.jdt.internal.core.search.BasicSearchEngine$2AllMethodDeclarationVisitor$TypeInfo  org.eclipse.jdt.internal.core.search.BasicSearchEngine$2AllTypeDeclarationsVisitor  org.eclipse.jdt.internal.core.search.BasicSearchEngine$3  org.eclipse.jdt.internal.core.search.BasicSearchEngine$4  org.eclipse.jdt.internal.core.search.BasicSearchEngine$5  org.eclipse.jdt.internal.core.search.BasicSearchEngine$6
InnerClasses:
  org.eclipse.jdt.internal.core.search.BasicSearchEngine$1
  AllConstructorDeclarationsVisitor = org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllConstructorDeclarationsVisitor
  AllMethodDeclarationVisitor = org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllMethodDeclarationVisitor
  AllTypeDeclarationsVisitor = org.eclipse.jdt.internal.core.search.BasicSearchEngine$1AllTypeDeclarationsVisitor
  org.eclipse.jdt.internal.core.search.BasicSearchEngine$2
  AllMethodDeclarationVisitor = org.eclipse.jdt.internal.core.search.BasicSearchEngine$2AllMethodDeclarationVisitor
  AllTypeDeclarationsVisitor = org.eclipse.jdt.internal.core.search.BasicSearchEngine$2AllTypeDeclarationsVisitor
  org.eclipse.jdt.internal.core.search.BasicSearchEngine$3
  org.eclipse.jdt.internal.core.search.BasicSearchEngine$4
  org.eclipse.jdt.internal.core.search.BasicSearchEngine$5
  org.eclipse.jdt.internal.core.search.BasicSearchEngine$6