public abstract class org.eclipse.jdt.core.search.SearchPattern
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.eclipse.jdt.core.search.SearchPattern
  super_class: java.lang.Object
{
  public static final int R_EXACT_MATCH;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int R_PREFIX_MATCH;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int R_PATTERN_MATCH;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int R_REGEXP_MATCH;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  public static final int R_CASE_SENSITIVE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  public static final int R_ERASURE_MATCH;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  public static final int R_EQUIVALENT_MATCH;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 32

  public static final int R_FULL_MATCH;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 64

  public static final int R_CAMELCASE_MATCH;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 128

  public static final int R_CAMELCASE_SAME_PART_COUNT_MATCH;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 256

  public static final int R_SUBSTRING_MATCH;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 512

  private static final int MODE_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 391

  private int matchRule;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  public org.eclipse.jdt.core.IJavaElement focus;
    descriptor: Lorg/eclipse/jdt/core/IJavaElement;
    flags: (0x0001) ACC_PUBLIC

  public int kind;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

  public boolean mustResolve;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

  public void <init>(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
        start local 1 // int matchRule
         0: .line 287
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 252
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.core.search.SearchPattern.mustResolve:Z
         2: .line 288
            aload 0 /* this */
            iload 1 /* matchRule */
            putfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
         3: .line 290
            iload 1 /* matchRule */
            bipush 48
            iand
            ifne 5
         4: .line 291
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
            bipush 64
            ior
            putfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
         5: .line 294
      StackMap locals: org.eclipse.jdt.core.search.SearchPattern int
      StackMap stack:
            iload 1 /* matchRule */
            sipush 128
            iand
            ifeq 9
         6: .line 295
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
            sipush -257
            iand
            putfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
         7: .line 296
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
            bipush -2
            iand
            putfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
         8: .line 297
            goto 11
      StackMap locals:
      StackMap stack:
         9: iload 1 /* matchRule */
            sipush 256
            iand
            ifeq 11
        10: .line 298
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
            bipush -2
            iand
            putfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
        11: .line 299
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int matchRule
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lorg/eclipse/jdt/core/search/SearchPattern;
            0   12     1  matchRule  I
    MethodParameters:
           Name  Flags
      matchRule  

  public void acceptMatch(java.lang.String, java.lang.String, char, org.eclipse.jdt.core.search.SearchPattern, org.eclipse.jdt.internal.core.search.IndexQueryRequestor, org.eclipse.jdt.core.search.SearchParticipant, org.eclipse.jdt.core.search.IJavaSearchScope);
    descriptor: (Ljava/lang/String;Ljava/lang/String;CLorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=8, args_size=8
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
        start local 1 // java.lang.String relativePath
        start local 2 // java.lang.String containerPath
        start local 3 // char separator
        start local 4 // org.eclipse.jdt.core.search.SearchPattern pattern
        start local 5 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor requestor
        start local 6 // org.eclipse.jdt.core.search.SearchParticipant participant
        start local 7 // org.eclipse.jdt.core.search.IJavaSearchScope scope
         0: .line 306
            aload 0 /* this */
            aload 1 /* relativePath */
            aload 2 /* containerPath */
            iload 3 /* separator */
            aload 4 /* pattern */
            aload 5 /* requestor */
            aload 6 /* participant */
            aload 7 /* scope */
            aconst_null
            invokevirtual org.eclipse.jdt.core.search.SearchPattern.acceptMatch:(Ljava/lang/String;Ljava/lang/String;CLorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/core/runtime/IProgressMonitor;)V
         1: .line 307
            return
        end local 7 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        end local 6 // org.eclipse.jdt.core.search.SearchParticipant participant
        end local 5 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor requestor
        end local 4 // org.eclipse.jdt.core.search.SearchPattern pattern
        end local 3 // char separator
        end local 2 // java.lang.String containerPath
        end local 1 // java.lang.String relativePath
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/eclipse/jdt/core/search/SearchPattern;
            0    2     1   relativePath  Ljava/lang/String;
            0    2     2  containerPath  Ljava/lang/String;
            0    2     3      separator  C
            0    2     4        pattern  Lorg/eclipse/jdt/core/search/SearchPattern;
            0    2     5      requestor  Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;
            0    2     6    participant  Lorg/eclipse/jdt/core/search/SearchParticipant;
            0    2     7          scope  Lorg/eclipse/jdt/core/search/IJavaSearchScope;
    MethodParameters:
               Name  Flags
      relativePath   
      containerPath  
      separator      
      pattern        
      requestor      
      participant    
      scope          

  public void acceptMatch(java.lang.String, java.lang.String, char, org.eclipse.jdt.core.search.SearchPattern, org.eclipse.jdt.internal.core.search.IndexQueryRequestor, org.eclipse.jdt.core.search.SearchParticipant, org.eclipse.jdt.core.search.IJavaSearchScope, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: (Ljava/lang/String;Ljava/lang/String;CLorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=12, args_size=9
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
        start local 1 // java.lang.String relativePath
        start local 2 // java.lang.String containerPath
        start local 3 // char separator
        start local 4 // org.eclipse.jdt.core.search.SearchPattern pattern
        start local 5 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor requestor
        start local 6 // org.eclipse.jdt.core.search.SearchParticipant participant
        start local 7 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        start local 8 // org.eclipse.core.runtime.IProgressMonitor monitor
         0: .line 314
            aload 7 /* scope */
            instanceof org.eclipse.jdt.internal.core.search.JavaSearchScope
            ifeq 10
         1: .line 315
            aload 7 /* scope */
            checkcast org.eclipse.jdt.internal.core.search.JavaSearchScope
            astore 9 /* javaSearchScope */
        start local 9 // org.eclipse.jdt.internal.core.search.JavaSearchScope javaSearchScope
         2: .line 318
            aload 9 /* javaSearchScope */
            aload 1 /* relativePath */
            aload 2 /* containerPath */
            invokevirtual org.eclipse.jdt.internal.core.search.JavaSearchScope.getAccessRuleSet:(Ljava/lang/String;Ljava/lang/String;)Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            astore 10 /* access */
        start local 10 // org.eclipse.jdt.internal.compiler.env.AccessRuleSet access
         3: .line 319
            aload 10 /* access */
            getstatic org.eclipse.jdt.internal.core.search.JavaSearchScope.NOT_ENCLOSED:Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            if_acmpeq 21
         4: .line 320
            new java.lang.StringBuffer
            dup
            aload 2 /* containerPath */
            invokevirtual java.lang.String.length:()I
            iconst_1
            iadd
            aload 1 /* relativePath */
            invokevirtual java.lang.String.length:()I
            iadd
            invokespecial java.lang.StringBuffer.<init>:(I)V
            astore 11 /* documentPath */
        start local 11 // java.lang.StringBuffer documentPath
         5: .line 321
            aload 11 /* documentPath */
            aload 2 /* containerPath */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 322
            aload 11 /* documentPath */
            iload 3 /* separator */
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         7: .line 323
            aload 11 /* documentPath */
            aload 1 /* relativePath */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         8: .line 324
            aload 5 /* requestor */
            aload 11 /* documentPath */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            aload 4 /* pattern */
            aload 6 /* participant */
            aload 10 /* access */
            invokevirtual org.eclipse.jdt.internal.core.search.IndexQueryRequestor.acceptIndexMatch:(Ljava/lang/String;Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;)Z
            ifne 21
         9: .line 325
            new org.eclipse.core.runtime.OperationCanceledException
            dup
            invokespecial org.eclipse.core.runtime.OperationCanceledException.<init>:()V
            athrow
        end local 11 // java.lang.StringBuffer documentPath
        end local 10 // org.eclipse.jdt.internal.compiler.env.AccessRuleSet access
        end local 9 // org.eclipse.jdt.internal.core.search.JavaSearchScope javaSearchScope
        10: .line 328
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuffer
            dup
            aload 2 /* containerPath */
            invokevirtual java.lang.String.length:()I
            iconst_1
            iadd
            aload 1 /* relativePath */
            invokevirtual java.lang.String.length:()I
            iadd
            invokespecial java.lang.StringBuffer.<init>:(I)V
            astore 9 /* buffer */
        start local 9 // java.lang.StringBuffer buffer
        11: .line 329
            aload 9 /* buffer */
            aload 2 /* containerPath */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        12: .line 330
            aload 9 /* buffer */
            iload 3 /* separator */
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        13: .line 331
            aload 9 /* buffer */
            aload 1 /* relativePath */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        14: .line 332
            aload 9 /* buffer */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            astore 10 /* documentPath */
        start local 10 // java.lang.String documentPath
        15: .line 333
            aload 7 /* scope */
            instanceof org.eclipse.jdt.internal.core.search.HierarchyScope
            ifeq 16
            aload 7 /* scope */
            checkcast org.eclipse.jdt.internal.core.search.HierarchyScope
            aload 10 /* documentPath */
            aload 8 /* monitor */
            invokevirtual org.eclipse.jdt.internal.core.search.HierarchyScope.encloses:(Ljava/lang/String;Lorg/eclipse/core/runtime/IProgressMonitor;)Z
            goto 17
        16: .line 334
      StackMap locals: java.lang.StringBuffer java.lang.String
      StackMap stack:
            aload 7 /* scope */
            aload 10 /* documentPath */
            invokeinterface org.eclipse.jdt.core.search.IJavaSearchScope.encloses:(Ljava/lang/String;)Z
        17: .line 333
      StackMap locals:
      StackMap stack: int
            istore 11 /* encloses */
        start local 11 // boolean encloses
        18: .line 335
            iload 11 /* encloses */
            ifeq 21
        19: .line 336
            aload 5 /* requestor */
            aload 10 /* documentPath */
            aload 4 /* pattern */
            aload 6 /* participant */
            aconst_null
            invokevirtual org.eclipse.jdt.internal.core.search.IndexQueryRequestor.acceptIndexMatch:(Ljava/lang/String;Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;)Z
            ifne 21
        20: .line 337
            new org.eclipse.core.runtime.OperationCanceledException
            dup
            invokespecial org.eclipse.core.runtime.OperationCanceledException.<init>:()V
            athrow
        end local 11 // boolean encloses
        end local 10 // java.lang.String documentPath
        end local 9 // java.lang.StringBuffer buffer
        21: .line 340
      StackMap locals:
      StackMap stack:
            return
        end local 8 // org.eclipse.core.runtime.IProgressMonitor monitor
        end local 7 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        end local 6 // org.eclipse.jdt.core.search.SearchParticipant participant
        end local 5 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor requestor
        end local 4 // org.eclipse.jdt.core.search.SearchPattern pattern
        end local 3 // char separator
        end local 2 // java.lang.String containerPath
        end local 1 // java.lang.String relativePath
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   22     0             this  Lorg/eclipse/jdt/core/search/SearchPattern;
            0   22     1     relativePath  Ljava/lang/String;
            0   22     2    containerPath  Ljava/lang/String;
            0   22     3        separator  C
            0   22     4          pattern  Lorg/eclipse/jdt/core/search/SearchPattern;
            0   22     5        requestor  Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;
            0   22     6      participant  Lorg/eclipse/jdt/core/search/SearchParticipant;
            0   22     7            scope  Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            0   22     8          monitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            2   10     9  javaSearchScope  Lorg/eclipse/jdt/internal/core/search/JavaSearchScope;
            3   10    10           access  Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            5   10    11     documentPath  Ljava/lang/StringBuffer;
           11   21     9           buffer  Ljava/lang/StringBuffer;
           15   21    10     documentPath  Ljava/lang/String;
           18   21    11         encloses  Z
    MethodParameters:
               Name  Flags
      relativePath   
      containerPath  
      separator      
      pattern        
      requestor      
      participant    
      scope          
      monitor        

  public org.eclipse.jdt.core.search.SearchPattern currentPattern();
    descriptor: ()Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
         0: .line 346
            aload 0 /* this */
            areturn
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/core/search/SearchPattern;

  public static final boolean camelCaseMatch(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // java.lang.String pattern
        start local 1 // java.lang.String name
         0: .line 408
            aload 0 /* pattern */
            ifnonnull 2
         1: .line 409
            iconst_1
            ireturn
         2: .line 410
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            ifnonnull 4
         3: .line 411
            iconst_0
            ireturn
         4: .line 413
      StackMap locals:
      StackMap stack:
            aload 0 /* pattern */
            iconst_0
            aload 0 /* pattern */
            invokevirtual java.lang.String.length:()I
            aload 1 /* name */
            iconst_0
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            iconst_0
            invokestatic org.eclipse.jdt.core.search.SearchPattern.camelCaseMatch:(Ljava/lang/String;IILjava/lang/String;IIZ)Z
            ireturn
        end local 1 // java.lang.String name
        end local 0 // java.lang.String pattern
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0  pattern  Ljava/lang/String;
            0    5     1     name  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      pattern  
      name     

  public static final boolean camelCaseMatch(java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Z)Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // java.lang.String pattern
        start local 1 // java.lang.String name
        start local 2 // boolean samePartCount
         0: .line 483
            aload 0 /* pattern */
            ifnonnull 2
         1: .line 484
            iconst_1
            ireturn
         2: .line 485
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            ifnonnull 4
         3: .line 486
            iconst_0
            ireturn
         4: .line 488
      StackMap locals:
      StackMap stack:
            aload 0 /* pattern */
            iconst_0
            aload 0 /* pattern */
            invokevirtual java.lang.String.length:()I
            aload 1 /* name */
            iconst_0
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            iload 2 /* samePartCount */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.camelCaseMatch:(Ljava/lang/String;IILjava/lang/String;IIZ)Z
            ireturn
        end local 2 // boolean samePartCount
        end local 1 // java.lang.String name
        end local 0 // java.lang.String pattern
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0        pattern  Ljava/lang/String;
            0    5     1           name  Ljava/lang/String;
            0    5     2  samePartCount  Z
    MethodParameters:
               Name  Flags
      pattern        
      name           
      samePartCount  

  public static final boolean camelCaseMatch(java.lang.String, int, int, java.lang.String, int, int);
    descriptor: (Ljava/lang/String;IILjava/lang/String;II)Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // java.lang.String pattern
        start local 1 // int patternStart
        start local 2 // int patternEnd
        start local 3 // java.lang.String name
        start local 4 // int nameStart
        start local 5 // int nameEnd
         0: .line 595
            aload 0 /* pattern */
            iload 1 /* patternStart */
            iload 2 /* patternEnd */
            aload 3 /* name */
            iload 4 /* nameStart */
            iload 5 /* nameEnd */
            iconst_0
            invokestatic org.eclipse.jdt.core.search.SearchPattern.camelCaseMatch:(Ljava/lang/String;IILjava/lang/String;IIZ)Z
            ireturn
        end local 5 // int nameEnd
        end local 4 // int nameStart
        end local 3 // java.lang.String name
        end local 2 // int patternEnd
        end local 1 // int patternStart
        end local 0 // java.lang.String pattern
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0       pattern  Ljava/lang/String;
            0    1     1  patternStart  I
            0    1     2    patternEnd  I
            0    1     3          name  Ljava/lang/String;
            0    1     4     nameStart  I
            0    1     5       nameEnd  I
    MethodParameters:
              Name  Flags
      pattern       
      patternStart  
      patternEnd    
      name          
      nameStart     
      nameEnd       

  public static final boolean camelCaseMatch(java.lang.String, int, int, java.lang.String, int, int, boolean);
    descriptor: (Ljava/lang/String;IILjava/lang/String;IIZ)Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=7, locals=7, args_size=7
        start local 0 // java.lang.String pattern
        start local 1 // int patternStart
        start local 2 // int patternEnd
        start local 3 // java.lang.String name
        start local 4 // int nameStart
        start local 5 // int nameEnd
        start local 6 // boolean samePartCount
         0: .line 707
            aload 0 /* pattern */
            iload 1 /* patternStart */
            iload 2 /* patternEnd */
            aload 3 /* name */
            iload 4 /* nameStart */
            iload 5 /* nameEnd */
            iload 6 /* samePartCount */
            invokestatic org.eclipse.jdt.internal.core.search.StringOperation.getCamelCaseMatchingRegions:(Ljava/lang/String;IILjava/lang/String;IIZ)[I
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 6 // boolean samePartCount
        end local 5 // int nameEnd
        end local 4 // int nameStart
        end local 3 // java.lang.String name
        end local 2 // int patternEnd
        end local 1 // int patternStart
        end local 0 // java.lang.String pattern
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0        pattern  Ljava/lang/String;
            0    2     1   patternStart  I
            0    2     2     patternEnd  I
            0    2     3           name  Ljava/lang/String;
            0    2     4      nameStart  I
            0    2     5        nameEnd  I
            0    2     6  samePartCount  Z
    MethodParameters:
               Name  Flags
      pattern        
      patternStart   
      patternEnd     
      name           
      nameStart      
      nameEnd        
      samePartCount  

  public static final int[] getMatchingRegions(java.lang.String, java.lang.String, int);
    descriptor: (Ljava/lang/String;Ljava/lang/String;I)[I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=7, locals=7, args_size=3
        start local 0 // java.lang.String pattern
        start local 1 // java.lang.String name
        start local 2 // int matchRule
         0: .line 817
            aload 1 /* name */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 818
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            istore 3 /* nameLength */
        start local 3 // int nameLength
         2: .line 819
            aload 0 /* pattern */
            ifnonnull 4
         3: .line 820
            iconst_2
            newarray 10
            dup
            iconst_1
            iload 3 /* nameLength */
            iastore
            areturn
         4: .line 822
      StackMap locals: int
      StackMap stack:
            aload 0 /* pattern */
            invokevirtual java.lang.String.length:()I
            istore 4 /* patternLength */
        start local 4 // int patternLength
         5: .line 823
            iconst_0
            istore 5 /* countMatch */
        start local 5 // boolean countMatch
         6: .line 824
            iload 2 /* matchRule */
            lookupswitch { // 11
                    0: 7
                    1: 11
                    2: 24
                    8: 9
                    9: 13
                   10: 25
                  128: 16
                  136: 22
                  256: 15
                  264: 21
                  512: 26
              default: 31
          }
         7: .line 826
      StackMap locals: int int
      StackMap stack:
            iload 4 /* patternLength */
            iload 3 /* nameLength */
            if_icmpne 31
            aload 0 /* pattern */
            aload 1 /* name */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 31
         8: .line 827
            iconst_2
            newarray 10
            dup
            iconst_1
            iload 4 /* patternLength */
            iastore
            areturn
         9: .line 831
      StackMap locals:
      StackMap stack:
            iload 4 /* patternLength */
            iload 3 /* nameLength */
            if_icmpne 31
            aload 0 /* pattern */
            aload 1 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 31
        10: .line 832
            iconst_2
            newarray 10
            dup
            iconst_1
            iload 4 /* patternLength */
            iastore
            areturn
        11: .line 836
      StackMap locals:
      StackMap stack:
            iload 4 /* patternLength */
            iload 3 /* nameLength */
            if_icmpgt 31
            aload 1 /* name */
            iconst_0
            iload 4 /* patternLength */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            aload 0 /* pattern */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 31
        12: .line 837
            iconst_2
            newarray 10
            dup
            iconst_1
            iload 4 /* patternLength */
            iastore
            areturn
        13: .line 841
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            aload 0 /* pattern */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 31
        14: .line 842
            iconst_2
            newarray 10
            dup
            iconst_1
            iload 4 /* patternLength */
            iastore
            areturn
        15: .line 846
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* countMatch */
        16: .line 849
      StackMap locals:
      StackMap stack:
            iload 4 /* patternLength */
            iload 3 /* nameLength */
            if_icmpgt 31
        17: .line 850
            aload 0 /* pattern */
            iconst_0
            iload 4 /* patternLength */
            aload 1 /* name */
            iconst_0
            iload 3 /* nameLength */
            iload 5 /* countMatch */
            invokestatic org.eclipse.jdt.internal.core.search.StringOperation.getCamelCaseMatchingRegions:(Ljava/lang/String;IILjava/lang/String;IIZ)[I
            astore 6 /* regions */
        start local 6 // int[] regions
        18: .line 851
            aload 6 /* regions */
            ifnull 19
            aload 6 /* regions */
            areturn
        19: .line 852
      StackMap locals: int[]
      StackMap stack:
            aload 1 /* name */
            iconst_0
            iload 4 /* patternLength */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            aload 0 /* pattern */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 31
        20: .line 853
            iconst_2
            newarray 10
            dup
            iconst_1
            iload 4 /* patternLength */
            iastore
            areturn
        end local 6 // int[] regions
        21: .line 858
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* countMatch */
        22: .line 861
      StackMap locals:
      StackMap stack:
            iload 4 /* patternLength */
            iload 3 /* nameLength */
            if_icmpgt 31
        23: .line 862
            aload 0 /* pattern */
            iconst_0
            iload 4 /* patternLength */
            aload 1 /* name */
            iconst_0
            iload 3 /* nameLength */
            iload 5 /* countMatch */
            invokestatic org.eclipse.jdt.internal.core.search.StringOperation.getCamelCaseMatchingRegions:(Ljava/lang/String;IILjava/lang/String;IIZ)[I
            areturn
        24: .line 866
      StackMap locals:
      StackMap stack:
            aload 0 /* pattern */
            iconst_0
            iload 4 /* patternLength */
            aload 1 /* name */
            iconst_0
            iload 3 /* nameLength */
            iconst_0
            invokestatic org.eclipse.jdt.internal.core.search.StringOperation.getPatternMatchingRegions:(Ljava/lang/String;IILjava/lang/String;IIZ)[I
            areturn
        25: .line 868
      StackMap locals:
      StackMap stack:
            aload 0 /* pattern */
            iconst_0
            iload 4 /* patternLength */
            aload 1 /* name */
            iconst_0
            iload 3 /* nameLength */
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.search.StringOperation.getPatternMatchingRegions:(Ljava/lang/String;IILjava/lang/String;IIZ)[I
            areturn
        26: .line 870
      StackMap locals:
      StackMap stack:
            iload 4 /* patternLength */
            iload 3 /* nameLength */
            if_icmpgt 31
        27: .line 871
            aload 0 /* pattern */
            invokevirtual java.lang.String.toCharArray:()[C
            aload 1 /* name */
            invokevirtual java.lang.String.toCharArray:()[C
            iconst_0
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.indexOf:([C[CZ)I
            istore 6 /* next */
        start local 6 // int next
        28: .line 872
            iload 6 /* next */
            iflt 29
            iconst_2
            newarray 10
            dup
            iconst_0
            iload 6 /* next */
            iastore
            dup
            iconst_1
            iload 4 /* patternLength */
            iastore
            goto 30
      StackMap locals: int
      StackMap stack:
        29: aconst_null
      StackMap locals:
      StackMap stack: int[]
        30: areturn
        end local 6 // int next
        31: .line 876
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 5 // boolean countMatch
        end local 4 // int patternLength
        end local 3 // int nameLength
        end local 2 // int matchRule
        end local 1 // java.lang.String name
        end local 0 // java.lang.String pattern
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   32     0        pattern  Ljava/lang/String;
            0   32     1           name  Ljava/lang/String;
            0   32     2      matchRule  I
            2   32     3     nameLength  I
            5   32     4  patternLength  I
            6   32     5     countMatch  Z
           18   21     6        regions  [I
           28   31     6           next  I
    MethodParameters:
           Name  Flags
      pattern    
      name       
      matchRule  

  public static org.eclipse.jdt.core.search.SearchPattern createAndPattern(org.eclipse.jdt.core.search.SearchPattern, org.eclipse.jdt.core.search.SearchPattern);
    descriptor: (Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchPattern;)Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.search.SearchPattern leftPattern
        start local 1 // org.eclipse.jdt.core.search.SearchPattern rightPattern
         0: .line 892
            new org.eclipse.jdt.internal.core.search.matching.AndPattern
            dup
            aload 0 /* leftPattern */
            aload 1 /* rightPattern */
            invokespecial org.eclipse.jdt.internal.core.search.matching.AndPattern.<init>:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchPattern;)V
            areturn
        end local 1 // org.eclipse.jdt.core.search.SearchPattern rightPattern
        end local 0 // org.eclipse.jdt.core.search.SearchPattern leftPattern
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0   leftPattern  Lorg/eclipse/jdt/core/search/SearchPattern;
            0    1     1  rightPattern  Lorg/eclipse/jdt/core/search/SearchPattern;
    MethodParameters:
              Name  Flags
      leftPattern   
      rightPattern  

  private static org.eclipse.jdt.core.search.SearchPattern createFieldPattern(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=17, args_size=3
        start local 0 // java.lang.String patternString
        start local 1 // int limitTo
        start local 2 // int matchRule
         0: .line 898
            new org.eclipse.jdt.internal.compiler.parser.Scanner
            dup
            iconst_0
            iconst_1
            iconst_0
            ldc 3342336
            aconst_null
            aconst_null
            iconst_1
            invokespecial org.eclipse.jdt.internal.compiler.parser.Scanner.<init>:(ZZZJ[[C[[CZ)V
            astore 3 /* scanner */
        start local 3 // org.eclipse.jdt.internal.compiler.parser.Scanner scanner
         1: .line 899
            aload 3 /* scanner */
            aload 0 /* patternString */
            invokevirtual java.lang.String.toCharArray:()[C
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.setSource:([C)V
         2: .line 902
            iconst_m1
            istore 4 /* lastToken */
        start local 4 // int lastToken
         3: .line 904
            aconst_null
            astore 5 /* declaringType */
        start local 5 // java.lang.String declaringType
         4: aconst_null
            astore 6 /* fieldName */
        start local 6 // java.lang.String fieldName
         5: .line 905
            aconst_null
            astore 7 /* type */
        start local 7 // java.lang.String type
         6: .line 906
            iconst_1
            istore 8 /* mode */
        start local 8 // int mode
         7: .line 909
            aload 3 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getNextToken:()I
            istore 9 /* token */
        start local 9 // int token
         8: .line 910
            goto 38
        end local 9 // int token
      StackMap locals: java.lang.String int int org.eclipse.jdt.internal.compiler.parser.Scanner int java.lang.String java.lang.String java.lang.String int
      StackMap stack: org.eclipse.jdt.core.compiler.InvalidInputException
         9: pop
        10: .line 911
            aconst_null
            areturn
        start local 9 // int token
        11: .line 914
      StackMap locals: int
      StackMap stack:
            iload 8 /* mode */
            tableswitch { // 1 - 2
                    1: 12
                    2: 28
              default: 33
          }
        12: .line 917
      StackMap locals:
      StackMap stack:
            iload 9 /* token */
            lookupswitch { // 2
                    1: 13
                 1000: 21
              default: 24
          }
        13: .line 919
      StackMap locals:
      StackMap stack:
            aload 5 /* declaringType */
            ifnonnull 17
        14: .line 920
            aload 6 /* fieldName */
            ifnonnull 15
            aconst_null
            areturn
        15: .line 921
      StackMap locals:
      StackMap stack:
            aload 6 /* fieldName */
            astore 5 /* declaringType */
        16: .line 922
            goto 19
        17: .line 923
      StackMap locals:
      StackMap stack:
            aload 3 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            astore 10 /* tokenSource */
        start local 10 // java.lang.String tokenSource
        18: .line 924
            new java.lang.StringBuilder
            dup
            aload 5 /* declaringType */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 10 /* tokenSource */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* fieldName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* declaringType */
        end local 10 // java.lang.String tokenSource
        19: .line 926
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 6 /* fieldName */
        20: .line 927
            goto 33
        21: .line 929
      StackMap locals:
      StackMap stack:
            sipush 1000
            iload 4 /* lastToken */
            if_icmpeq 33
            iconst_1
            iload 4 /* lastToken */
            if_icmpeq 33
        22: .line 930
            iconst_2
            istore 8 /* mode */
        23: .line 931
            goto 33
        24: .line 933
      StackMap locals:
      StackMap stack:
            aload 6 /* fieldName */
            ifnonnull 26
        25: .line 934
            aload 3 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            astore 6 /* fieldName */
            goto 33
        26: .line 936
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 6 /* fieldName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* fieldName */
        27: .line 938
            goto 33
        28: .line 941
      StackMap locals:
      StackMap stack:
            iload 9 /* token */
            tableswitch { // 1000 - 1000
                 1000: 29
              default: 30
          }
        29: .line 943
      StackMap locals:
      StackMap stack:
            goto 33
        30: .line 945
      StackMap locals:
      StackMap stack:
            aload 7 /* type */
            ifnonnull 32
        31: .line 946
            aload 3 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            astore 7 /* type */
            goto 33
        32: .line 948
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 7 /* type */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* type */
        33: .line 952
      StackMap locals:
      StackMap stack:
            iload 9 /* token */
            istore 4 /* lastToken */
        34: .line 954
            aload 3 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getNextToken:()I
            istore 9 /* token */
        35: .line 955
            goto 38
      StackMap locals:
      StackMap stack: org.eclipse.jdt.core.compiler.InvalidInputException
        36: pop
        37: .line 956
            aconst_null
            areturn
        38: .line 913
      StackMap locals:
      StackMap stack:
            iload 9 /* token */
            bipush 62
            if_icmpne 11
        39: .line 959
            aload 6 /* fieldName */
            ifnonnull 40
            aconst_null
            areturn
        40: .line 961
      StackMap locals:
      StackMap stack:
            aload 6 /* fieldName */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 10 /* fieldNameChars */
        start local 10 // char[] fieldNameChars
        41: .line 962
            aload 10 /* fieldNameChars */
            arraylength
            iconst_1
            if_icmpne 42
            aload 10 /* fieldNameChars */
            iconst_0
            caload
            bipush 42
            if_icmpne 42
            aconst_null
            astore 10 /* fieldNameChars */
        42: .line 964
      StackMap locals: char[]
      StackMap stack:
            aconst_null
            astore 11 /* declaringTypeQualification */
        start local 11 // char[] declaringTypeQualification
        43: aconst_null
            astore 12 /* declaringTypeSimpleName */
        start local 12 // char[] declaringTypeSimpleName
        44: .line 965
            aconst_null
            astore 13 /* typeQualification */
        start local 13 // char[] typeQualification
        45: aconst_null
            astore 14 /* typeSimpleName */
        start local 14 // char[] typeSimpleName
        46: .line 968
            aload 5 /* declaringType */
            ifnull 58
        47: .line 969
            aload 5 /* declaringType */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 15 /* declaringTypePart */
        start local 15 // char[] declaringTypePart
        48: .line 970
            bipush 46
            aload 15 /* declaringTypePart */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.lastIndexOf:(C[C)I
            istore 16 /* lastDotPosition */
        start local 16 // int lastDotPosition
        49: .line 971
            iload 16 /* lastDotPosition */
            iflt 55
        50: .line 972
            aload 15 /* declaringTypePart */
            iconst_0
            iload 16 /* lastDotPosition */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 11 /* declaringTypeQualification */
        51: .line 973
            aload 11 /* declaringTypeQualification */
            arraylength
            iconst_1
            if_icmpne 53
            aload 11 /* declaringTypeQualification */
            iconst_0
            caload
            bipush 42
            if_icmpne 53
        52: .line 974
            aconst_null
            astore 11 /* declaringTypeQualification */
        53: .line 975
      StackMap locals: java.lang.String int int org.eclipse.jdt.internal.compiler.parser.Scanner int java.lang.String java.lang.String java.lang.String int int char[] char[] char[] char[] char[] char[] int
      StackMap stack:
            aload 15 /* declaringTypePart */
            iload 16 /* lastDotPosition */
            iconst_1
            iadd
            aload 15 /* declaringTypePart */
            arraylength
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 12 /* declaringTypeSimpleName */
        54: .line 976
            goto 56
        55: .line 977
      StackMap locals:
      StackMap stack:
            aload 15 /* declaringTypePart */
            astore 12 /* declaringTypeSimpleName */
        56: .line 979
      StackMap locals:
      StackMap stack:
            aload 12 /* declaringTypeSimpleName */
            arraylength
            iconst_1
            if_icmpne 58
            aload 12 /* declaringTypeSimpleName */
            iconst_0
            caload
            bipush 42
            if_icmpne 58
        57: .line 980
            aconst_null
            astore 12 /* declaringTypeSimpleName */
        end local 16 // int lastDotPosition
        end local 15 // char[] declaringTypePart
        58: .line 983
      StackMap locals:
      StackMap stack:
            aload 7 /* type */
            ifnull 72
        59: .line 984
            aload 7 /* type */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 15 /* typePart */
        start local 15 // char[] typePart
        60: .line 985
            bipush 46
            aload 15 /* typePart */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.lastIndexOf:(C[C)I
            istore 16 /* lastDotPosition */
        start local 16 // int lastDotPosition
        61: .line 986
            iload 16 /* lastDotPosition */
            iflt 69
        62: .line 987
            aload 15 /* typePart */
            iconst_0
            iload 16 /* lastDotPosition */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 13 /* typeQualification */
        63: .line 988
            aload 13 /* typeQualification */
            arraylength
            iconst_1
            if_icmpne 66
            aload 13 /* typeQualification */
            iconst_0
            caload
            bipush 42
            if_icmpne 66
        64: .line 989
            aconst_null
            astore 13 /* typeQualification */
        65: .line 990
            goto 67
        66: .line 992
      StackMap locals: char[] int
      StackMap stack:
            getstatic org.eclipse.jdt.internal.core.search.indexing.IIndexConstants.ONE_STAR:[C
            aload 13 /* typeQualification */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concat:([C[C)[C
            astore 13 /* typeQualification */
        67: .line 994
      StackMap locals:
      StackMap stack:
            aload 15 /* typePart */
            iload 16 /* lastDotPosition */
            iconst_1
            iadd
            aload 15 /* typePart */
            arraylength
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 14 /* typeSimpleName */
        68: .line 995
            goto 70
        69: .line 996
      StackMap locals:
      StackMap stack:
            aload 15 /* typePart */
            astore 14 /* typeSimpleName */
        70: .line 998
      StackMap locals:
      StackMap stack:
            aload 14 /* typeSimpleName */
            arraylength
            iconst_1
            if_icmpne 72
            aload 14 /* typeSimpleName */
            iconst_0
            caload
            bipush 42
            if_icmpne 72
        71: .line 999
            aconst_null
            astore 14 /* typeSimpleName */
        end local 16 // int lastDotPosition
        end local 15 // char[] typePart
        72: .line 1002
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.FieldPattern
            dup
        73: .line 1003
            aload 10 /* fieldNameChars */
        74: .line 1004
            aload 11 /* declaringTypeQualification */
        75: .line 1005
            aload 12 /* declaringTypeSimpleName */
        76: .line 1006
            aload 13 /* typeQualification */
        77: .line 1007
            aload 14 /* typeSimpleName */
        78: .line 1008
            iload 1 /* limitTo */
        79: .line 1009
            iload 2 /* matchRule */
        80: .line 1002
            invokespecial org.eclipse.jdt.internal.core.search.matching.FieldPattern.<init>:([C[C[C[C[CII)V
            areturn
        end local 14 // char[] typeSimpleName
        end local 13 // char[] typeQualification
        end local 12 // char[] declaringTypeSimpleName
        end local 11 // char[] declaringTypeQualification
        end local 10 // char[] fieldNameChars
        end local 9 // int token
        end local 8 // int mode
        end local 7 // java.lang.String type
        end local 6 // java.lang.String fieldName
        end local 5 // java.lang.String declaringType
        end local 4 // int lastToken
        end local 3 // org.eclipse.jdt.internal.compiler.parser.Scanner scanner
        end local 2 // int matchRule
        end local 1 // int limitTo
        end local 0 // java.lang.String patternString
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   81     0               patternString  Ljava/lang/String;
            0   81     1                     limitTo  I
            0   81     2                   matchRule  I
            1   81     3                     scanner  Lorg/eclipse/jdt/internal/compiler/parser/Scanner;
            3   81     4                   lastToken  I
            4   81     5               declaringType  Ljava/lang/String;
            5   81     6                   fieldName  Ljava/lang/String;
            6   81     7                        type  Ljava/lang/String;
            7   81     8                        mode  I
            8    9     9                       token  I
           11   81     9                       token  I
           18   19    10                 tokenSource  Ljava/lang/String;
           41   81    10              fieldNameChars  [C
           43   81    11  declaringTypeQualification  [C
           44   81    12     declaringTypeSimpleName  [C
           45   81    13           typeQualification  [C
           46   81    14              typeSimpleName  [C
           48   58    15           declaringTypePart  [C
           49   58    16             lastDotPosition  I
           60   72    15                    typePart  [C
           61   72    16             lastDotPosition  I
      Exception table:
        from    to  target  type
           7     8       9  Class org.eclipse.jdt.core.compiler.InvalidInputException
          34    35      36  Class org.eclipse.jdt.core.compiler.InvalidInputException
    MethodParameters:
               Name  Flags
      patternString  
      limitTo        
      matchRule      

  private static org.eclipse.jdt.core.search.SearchPattern createMethodOrConstructorPattern(java.lang.String, int, int, boolean);
    descriptor: (Ljava/lang/String;IIZ)Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=15, locals=31, args_size=4
        start local 0 // java.lang.String patternString
        start local 1 // int limitTo
        start local 2 // int matchRule
        start local 3 // boolean isConstructor
         0: .line 1015
            new org.eclipse.jdt.internal.compiler.parser.Scanner
            dup
            iconst_0
            iconst_1
            iconst_0
            ldc 3342336
            aconst_null
            aconst_null
            iconst_1
            invokespecial org.eclipse.jdt.internal.compiler.parser.Scanner.<init>:(ZZZJ[[C[[CZ)V
            astore 4 /* scanner */
        start local 4 // org.eclipse.jdt.internal.compiler.parser.Scanner scanner
         1: .line 1016
            aload 4 /* scanner */
            aload 0 /* patternString */
            invokevirtual java.lang.String.toCharArray:()[C
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.setSource:([C)V
         2: .line 1021
            iconst_m1
            istore 5 /* lastToken */
        start local 5 // int lastToken
         3: .line 1023
            aconst_null
            astore 6 /* declaringType */
        start local 6 // java.lang.String declaringType
         4: aconst_null
            astore 7 /* selector */
        start local 7 // java.lang.String selector
         5: aconst_null
            astore 8 /* parameterType */
        start local 8 // java.lang.String parameterType
         6: .line 1024
            aconst_null
            astore 9 /* parameterTypes */
        start local 9 // java.lang.String[] parameterTypes
         7: .line 1025
            aconst_null
            astore 10 /* typeArguments */
        start local 10 // char[][] typeArguments
         8: .line 1026
            aconst_null
            astore 11 /* typeArgumentsString */
        start local 11 // java.lang.String typeArgumentsString
         9: .line 1027
            iconst_m1
            istore 12 /* parameterCount */
        start local 12 // int parameterCount
        10: .line 1028
            aconst_null
            astore 13 /* returnType */
        start local 13 // java.lang.String returnType
        11: .line 1029
            iconst_0
            istore 14 /* foundClosingParenthesis */
        start local 14 // boolean foundClosingParenthesis
        12: .line 1030
            iconst_1
            istore 15 /* mode */
        start local 15 // int mode
        13: .line 1031
            iconst_0
            istore 17 /* argCount */
        start local 17 // int argCount
        14: .line 1033
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getNextToken:()I
            istore 16 /* token */
        start local 16 // int token
        15: .line 1034
            goto 131
        end local 16 // int token
      StackMap locals: java.lang.String int int int org.eclipse.jdt.internal.compiler.parser.Scanner int java.lang.String java.lang.String java.lang.String java.lang.String[] char[][] java.lang.String int java.lang.String int int top int
      StackMap stack: org.eclipse.jdt.core.compiler.InvalidInputException
        16: pop
        17: .line 1035
            aconst_null
            areturn
        start local 16 // int token
        18: .line 1038
      StackMap locals: java.lang.String int int int org.eclipse.jdt.internal.compiler.parser.Scanner int java.lang.String java.lang.String java.lang.String java.lang.String[] char[][] java.lang.String int java.lang.String int int int int
      StackMap stack:
            iload 15 /* mode */
            tableswitch { // 1 - 4
                    1: 19
                    2: 62
                    3: 73
                    4: 106
              default: 126
          }
        19: .line 1041
      StackMap locals:
      StackMap stack:
            iload 17 /* argCount */
            ifne 54
        20: .line 1042
            iload 16 /* token */
            lookupswitch { // 4
                    1: 33
                   11: 21
                   23: 42
                 1000: 46
              default: 50
          }
        21: .line 1044
      StackMap locals:
      StackMap stack:
            iinc 17 /* argCount */ 1
        22: .line 1045
            aload 7 /* selector */
            ifnull 23
            iload 5 /* lastToken */
            iconst_1
            if_icmpne 26
        23: .line 1046
      StackMap locals:
      StackMap stack:
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            astore 11 /* typeArgumentsString */
        24: .line 1047
            iconst_2
            istore 15 /* mode */
        25: .line 1048
            goto 126
        26: .line 1050
      StackMap locals:
      StackMap stack:
            aload 6 /* declaringType */
            ifnonnull 29
        27: .line 1051
            aload 7 /* selector */
            astore 6 /* declaringType */
        28: .line 1052
            goto 30
        29: .line 1053
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 6 /* declaringType */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 7 /* selector */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* declaringType */
        30: .line 1055
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 6 /* declaringType */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* declaringType */
        31: .line 1056
            aconst_null
            astore 7 /* selector */
        32: .line 1057
            goto 126
        33: .line 1059
      StackMap locals:
      StackMap stack:
            iload 3 /* isConstructor */
            ifne 34
            aload 11 /* typeArgumentsString */
            ifnull 34
            aconst_null
            areturn
        34: .line 1060
      StackMap locals:
      StackMap stack:
            aload 6 /* declaringType */
            ifnonnull 38
        35: .line 1061
            aload 7 /* selector */
            ifnonnull 36
            aconst_null
            areturn
        36: .line 1062
      StackMap locals:
      StackMap stack:
            aload 7 /* selector */
            astore 6 /* declaringType */
        37: .line 1063
            goto 40
      StackMap locals:
      StackMap stack:
        38: aload 7 /* selector */
            ifnull 40
        39: .line 1064
            new java.lang.StringBuilder
            dup
            aload 6 /* declaringType */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 7 /* selector */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* declaringType */
        40: .line 1066
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 7 /* selector */
        41: .line 1067
            goto 126
        42: .line 1069
      StackMap locals:
      StackMap stack:
            iconst_5
            anewarray java.lang.String
            astore 9 /* parameterTypes */
        43: .line 1070
            iconst_0
            istore 12 /* parameterCount */
        44: .line 1071
            iconst_3
            istore 15 /* mode */
        45: .line 1072
            goto 126
        46: .line 1074
      StackMap locals:
      StackMap stack:
            iload 5 /* lastToken */
            lookupswitch { // 5
                    1: 47
                   14: 47
                   15: 47
                   16: 47
                 1000: 47
              default: 48
          }
        47: .line 1080
      StackMap locals:
      StackMap stack:
            goto 126
        48: .line 1082
      StackMap locals:
      StackMap stack:
            iconst_4
            istore 15 /* mode */
        49: .line 1085
            goto 126
        50: .line 1087
      StackMap locals:
      StackMap stack:
            aload 7 /* selector */
            ifnonnull 52
        51: .line 1088
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            astore 7 /* selector */
            goto 126
        52: .line 1090
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 7 /* selector */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 7 /* selector */
        53: .line 1093
            goto 126
        54: .line 1094
      StackMap locals:
      StackMap stack:
            aload 6 /* declaringType */
            ifnonnull 55
            aconst_null
            areturn
        55: .line 1095
      StackMap locals:
      StackMap stack:
            iload 16 /* token */
            tableswitch { // 11 - 16
                   11: 58
                   12: 59
                   13: 59
                   14: 56
                   15: 56
                   16: 56
              default: 59
          }
        56: .line 1099
      StackMap locals:
      StackMap stack:
            iinc 17 /* argCount */ -1
        57: .line 1100
            goto 59
        58: .line 1102
      StackMap locals:
      StackMap stack:
            iinc 17 /* argCount */ 1
        59: .line 1104
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
        60: .line 1105
            aload 6 /* declaringType */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* declaringType */
        61: .line 1107
            goto 126
        62: .line 1110
      StackMap locals:
      StackMap stack:
            aload 11 /* typeArgumentsString */
            ifnonnull 63
            aconst_null
            areturn
        63: .line 1111
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 11 /* typeArgumentsString */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 11 /* typeArgumentsString */
        64: .line 1112
            iload 16 /* token */
            tableswitch { // 11 - 16
                   11: 71
                   12: 72
                   13: 72
                   14: 65
                   15: 65
                   16: 65
              default: 72
          }
        65: .line 1116
      StackMap locals:
      StackMap stack:
            iinc 17 /* argCount */ -1
        66: .line 1117
            iload 17 /* argCount */
            ifne 126
        67: .line 1118
            new java.lang.StringBuilder
            dup
            ldc "Type"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 11 /* typeArgumentsString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 18 /* pseudoType */
        start local 18 // java.lang.String pseudoType
        68: .line 1119
            aload 18 /* pseudoType */
            iconst_0
            invokestatic org.eclipse.jdt.core.Signature.createTypeSignature:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            invokestatic org.eclipse.jdt.core.Signature.getTypeArguments:([C)[[C
            astore 10 /* typeArguments */
        69: .line 1120
            iconst_1
            istore 15 /* mode */
        end local 18 // java.lang.String pseudoType
        70: .line 1122
            goto 126
        71: .line 1124
      StackMap locals:
      StackMap stack:
            iinc 17 /* argCount */ 1
        72: .line 1127
      StackMap locals:
      StackMap stack:
            goto 126
        73: .line 1130
      StackMap locals:
      StackMap stack:
            iload 17 /* argCount */
            ifne 98
        74: .line 1131
            iload 16 /* token */
            lookupswitch { // 4
                   11: 92
                   26: 83
                   32: 76
                 1000: 75
              default: 94
          }
        75: .line 1133
      StackMap locals:
      StackMap stack:
            goto 126
        76: .line 1135
      StackMap locals:
      StackMap stack:
            aload 8 /* parameterType */
            ifnonnull 77
            aconst_null
            areturn
        77: .line 1136
      StackMap locals:
      StackMap stack:
            aload 9 /* parameterTypes */
            ifnull 81
        78: .line 1137
            aload 9 /* parameterTypes */
            arraylength
            iload 12 /* parameterCount */
            if_icmpne 80
        79: .line 1138
            aload 9 /* parameterTypes */
            iconst_0
            iload 12 /* parameterCount */
            iconst_2
            imul
            anewarray java.lang.String
            dup
            astore 9 /* parameterTypes */
            iconst_0
            iload 12 /* parameterCount */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        80: .line 1139
      StackMap locals:
      StackMap stack:
            aload 9 /* parameterTypes */
            iload 12 /* parameterCount */
            iinc 12 /* parameterCount */ 1
            aload 8 /* parameterType */
            aastore
        81: .line 1141
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 8 /* parameterType */
        82: .line 1142
            goto 126
        83: .line 1144
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 14 /* foundClosingParenthesis */
        84: .line 1145
            aload 8 /* parameterType */
            ifnull 88
            aload 9 /* parameterTypes */
            ifnull 88
        85: .line 1146
            aload 9 /* parameterTypes */
            arraylength
            iload 12 /* parameterCount */
            if_icmpne 87
        86: .line 1147
            aload 9 /* parameterTypes */
            iconst_0
            iload 12 /* parameterCount */
            iconst_2
            imul
            anewarray java.lang.String
            dup
            astore 9 /* parameterTypes */
            iconst_0
            iload 12 /* parameterCount */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        87: .line 1148
      StackMap locals:
      StackMap stack:
            aload 9 /* parameterTypes */
            iload 12 /* parameterCount */
            iinc 12 /* parameterCount */ 1
            aload 8 /* parameterType */
            aastore
        88: .line 1150
      StackMap locals:
      StackMap stack:
            iload 3 /* isConstructor */
            ifeq 89
            iconst_2
            goto 90
      StackMap locals:
      StackMap stack:
        89: iconst_4
      StackMap locals:
      StackMap stack: int
        90: istore 15 /* mode */
        91: .line 1151
            goto 126
        92: .line 1153
      StackMap locals:
      StackMap stack:
            iinc 17 /* argCount */ 1
        93: .line 1154
            aload 8 /* parameterType */
            ifnonnull 94
            aconst_null
            areturn
        94: .line 1157
      StackMap locals:
      StackMap stack:
            aload 8 /* parameterType */
            ifnonnull 96
        95: .line 1158
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            astore 8 /* parameterType */
            goto 126
        96: .line 1160
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 8 /* parameterType */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 8 /* parameterType */
        97: .line 1162
            goto 126
        98: .line 1163
      StackMap locals:
      StackMap stack:
            aload 8 /* parameterType */
            ifnonnull 99
            aconst_null
            areturn
        99: .line 1164
      StackMap locals:
      StackMap stack:
            iload 16 /* token */
            tableswitch { // 11 - 16
                   11: 102
                   12: 103
                   13: 103
                   14: 100
                   15: 100
                   16: 100
              default: 103
          }
       100: .line 1168
      StackMap locals:
      StackMap stack:
            iinc 17 /* argCount */ -1
       101: .line 1169
            goto 103
       102: .line 1171
      StackMap locals:
      StackMap stack:
            iinc 17 /* argCount */ 1
       103: .line 1173
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
       104: .line 1174
            aload 8 /* parameterType */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 8 /* parameterType */
       105: .line 1176
            goto 126
       106: .line 1179
      StackMap locals:
      StackMap stack:
            iload 17 /* argCount */
            ifne 119
       107: .line 1180
            iload 16 /* token */
            lookupswitch { // 3
                   11: 113
                   23: 109
                 1000: 108
              default: 115
          }
       108: .line 1182
      StackMap locals:
      StackMap stack:
            goto 126
       109: .line 1184
      StackMap locals:
      StackMap stack:
            iconst_5
            anewarray java.lang.String
            astore 9 /* parameterTypes */
       110: .line 1185
            iconst_0
            istore 12 /* parameterCount */
       111: .line 1186
            iconst_3
            istore 15 /* mode */
       112: .line 1187
            goto 126
       113: .line 1189
      StackMap locals:
      StackMap stack:
            iinc 17 /* argCount */ 1
       114: .line 1190
            aload 13 /* returnType */
            ifnonnull 115
            aconst_null
            areturn
       115: .line 1193
      StackMap locals:
      StackMap stack:
            aload 13 /* returnType */
            ifnonnull 117
       116: .line 1194
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            astore 13 /* returnType */
            goto 126
       117: .line 1196
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 13 /* returnType */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 13 /* returnType */
       118: .line 1198
            goto 126
       119: .line 1199
      StackMap locals:
      StackMap stack:
            aload 13 /* returnType */
            ifnonnull 120
            aconst_null
            areturn
       120: .line 1200
      StackMap locals:
      StackMap stack:
            iload 16 /* token */
            tableswitch { // 11 - 16
                   11: 123
                   12: 124
                   13: 124
                   14: 121
                   15: 121
                   16: 121
              default: 124
          }
       121: .line 1204
      StackMap locals:
      StackMap stack:
            iinc 17 /* argCount */ -1
       122: .line 1205
            goto 124
       123: .line 1207
      StackMap locals:
      StackMap stack:
            iinc 17 /* argCount */ 1
       124: .line 1209
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
       125: .line 1210
            aload 13 /* returnType */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 13 /* returnType */
       126: .line 1214
      StackMap locals:
      StackMap stack:
            iload 16 /* token */
            istore 5 /* lastToken */
       127: .line 1216
            aload 4 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getNextToken:()I
            istore 16 /* token */
       128: .line 1217
            goto 131
      StackMap locals:
      StackMap stack: org.eclipse.jdt.core.compiler.InvalidInputException
       129: pop
       130: .line 1218
            aconst_null
            areturn
       131: .line 1037
      StackMap locals:
      StackMap stack:
            iload 16 /* token */
            bipush 62
            if_icmpne 18
       132: .line 1222
            iload 12 /* parameterCount */
            ifle 133
            iload 14 /* foundClosingParenthesis */
            ifne 133
            aconst_null
            areturn
       133: .line 1224
      StackMap locals:
      StackMap stack:
            iload 17 /* argCount */
            ifle 134
            aconst_null
            areturn
       134: .line 1226
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 18 /* selectorChars */
        start local 18 // char[] selectorChars
       135: .line 1227
            iload 3 /* isConstructor */
            ifeq 141
       136: .line 1229
            aload 6 /* declaringType */
            ifnonnull 138
       137: .line 1230
            aload 7 /* selector */
            astore 6 /* declaringType */
            goto 145
       138: .line 1231
      StackMap locals: char[]
      StackMap stack:
            aload 7 /* selector */
            ifnull 145
       139: .line 1232
            new java.lang.StringBuilder
            dup
            aload 6 /* declaringType */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 7 /* selector */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* declaringType */
       140: .line 1233
            goto 145
       141: .line 1235
      StackMap locals:
      StackMap stack:
            aload 7 /* selector */
            ifnonnull 142
            aconst_null
            areturn
       142: .line 1236
      StackMap locals:
      StackMap stack:
            aload 7 /* selector */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 18 /* selectorChars */
       143: .line 1237
            aload 18 /* selectorChars */
            arraylength
            iconst_1
            if_icmpne 145
            aload 18 /* selectorChars */
            iconst_0
            caload
            bipush 42
            if_icmpne 145
       144: .line 1238
            aconst_null
            astore 18 /* selectorChars */
       145: .line 1241
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 19 /* declaringTypeQualification */
        start local 19 // char[] declaringTypeQualification
       146: aconst_null
            astore 20 /* declaringTypeSimpleName */
        start local 20 // char[] declaringTypeSimpleName
       147: .line 1242
            aconst_null
            astore 21 /* returnTypeQualification */
        start local 21 // char[] returnTypeQualification
       148: aconst_null
            astore 22 /* returnTypeSimpleName */
        start local 22 // char[] returnTypeSimpleName
       149: .line 1243
            aconst_null
            astore 23 /* parameterTypeQualifications */
        start local 23 // char[][] parameterTypeQualifications
       150: aconst_null
            astore 24 /* parameterTypeSimpleNames */
        start local 24 // char[][] parameterTypeSimpleNames
       151: .line 1245
            aconst_null
            astore 25 /* declaringTypeSignature */
        start local 25 // java.lang.String declaringTypeSignature
       152: .line 1246
            aconst_null
            astore 26 /* returnTypeSignature */
        start local 26 // java.lang.String returnTypeSignature
       153: .line 1247
            aconst_null
            astore 27 /* parameterTypeSignatures */
        start local 27 // java.lang.String[] parameterTypeSignatures
       154: .line 1250
            aload 6 /* declaringType */
            ifnull 174
       155: .line 1252
            aconst_null
            astore 28 /* declaringTypePart */
        start local 28 // char[] declaringTypePart
       156: .line 1254
            aload 6 /* declaringType */
            iconst_0
            invokestatic org.eclipse.jdt.core.Signature.createTypeSignature:(Ljava/lang/String;Z)Ljava/lang/String;
            astore 25 /* declaringTypeSignature */
       157: .line 1255
            aload 25 /* declaringTypeSignature */
            bipush 60
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 160
       158: .line 1256
            aload 6 /* declaringType */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 28 /* declaringTypePart */
       159: .line 1257
            goto 164
       160: .line 1258
      StackMap locals: java.lang.String int int int org.eclipse.jdt.internal.compiler.parser.Scanner int java.lang.String java.lang.String java.lang.String java.lang.String[] char[][] java.lang.String int java.lang.String int int int int char[] char[] char[] char[] char[] char[][] char[][] java.lang.String java.lang.String java.lang.String[] char[]
      StackMap stack:
            aload 25 /* declaringTypeSignature */
            invokevirtual java.lang.String.toCharArray:()[C
            invokestatic org.eclipse.jdt.core.Signature.getTypeErasure:([C)[C
            invokestatic org.eclipse.jdt.core.Signature.toCharArray:([C)[C
            astore 28 /* declaringTypePart */
       161: .line 1260
            goto 164
       162: .line 1261
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
            pop
       163: .line 1263
            aconst_null
            areturn
       164: .line 1265
      StackMap locals:
      StackMap stack:
            bipush 46
            aload 28 /* declaringTypePart */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.lastIndexOf:(C[C)I
            istore 29 /* lastDotPosition */
        start local 29 // int lastDotPosition
       165: .line 1266
            iload 29 /* lastDotPosition */
            iflt 171
       166: .line 1267
            aload 28 /* declaringTypePart */
            iconst_0
            iload 29 /* lastDotPosition */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 19 /* declaringTypeQualification */
       167: .line 1268
            aload 19 /* declaringTypeQualification */
            arraylength
            iconst_1
            if_icmpne 169
            aload 19 /* declaringTypeQualification */
            iconst_0
            caload
            bipush 42
            if_icmpne 169
       168: .line 1269
            aconst_null
            astore 19 /* declaringTypeQualification */
       169: .line 1270
      StackMap locals: int
      StackMap stack:
            aload 28 /* declaringTypePart */
            iload 29 /* lastDotPosition */
            iconst_1
            iadd
            aload 28 /* declaringTypePart */
            arraylength
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 20 /* declaringTypeSimpleName */
       170: .line 1271
            goto 172
       171: .line 1272
      StackMap locals:
      StackMap stack:
            aload 28 /* declaringTypePart */
            astore 20 /* declaringTypeSimpleName */
       172: .line 1274
      StackMap locals:
      StackMap stack:
            aload 20 /* declaringTypeSimpleName */
            arraylength
            iconst_1
            if_icmpne 174
            aload 20 /* declaringTypeSimpleName */
            iconst_0
            caload
            bipush 42
            if_icmpne 174
       173: .line 1275
            aconst_null
            astore 20 /* declaringTypeSimpleName */
        end local 29 // int lastDotPosition
        end local 28 // char[] declaringTypePart
       174: .line 1278
      StackMap locals:
      StackMap stack:
            iload 12 /* parameterCount */
            iflt 207
       175: .line 1279
            iload 12 /* parameterCount */
            anewarray char[]
            astore 23 /* parameterTypeQualifications */
       176: .line 1280
            iload 12 /* parameterCount */
            anewarray char[]
            astore 24 /* parameterTypeSimpleNames */
       177: .line 1281
            iload 12 /* parameterCount */
            anewarray java.lang.String
            astore 27 /* parameterTypeSignatures */
       178: .line 1282
            iconst_0
            istore 28 /* i */
        start local 28 // int i
       179: goto 206
       180: .line 1284
      StackMap locals: int
      StackMap stack:
            aconst_null
            astore 29 /* parameterTypePart */
        start local 29 // char[] parameterTypePart
       181: .line 1286
            aload 9 /* parameterTypes */
            ifnull 190
       182: .line 1287
            aload 27 /* parameterTypeSignatures */
            iload 28 /* i */
            aload 9 /* parameterTypes */
            iload 28 /* i */
            aaload
            iconst_0
            invokestatic org.eclipse.jdt.core.Signature.createTypeSignature:(Ljava/lang/String;Z)Ljava/lang/String;
            aastore
       183: .line 1288
            aload 27 /* parameterTypeSignatures */
            iload 28 /* i */
            aaload
            bipush 60
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 186
       184: .line 1289
            aload 9 /* parameterTypes */
            iload 28 /* i */
            aaload
            invokevirtual java.lang.String.toCharArray:()[C
            astore 29 /* parameterTypePart */
       185: .line 1290
            goto 190
       186: .line 1291
      StackMap locals: char[]
      StackMap stack:
            aload 27 /* parameterTypeSignatures */
            iload 28 /* i */
            aaload
            invokevirtual java.lang.String.toCharArray:()[C
            invokestatic org.eclipse.jdt.core.Signature.getTypeErasure:([C)[C
            invokestatic org.eclipse.jdt.core.Signature.toCharArray:([C)[C
            astore 29 /* parameterTypePart */
       187: .line 1294
            goto 190
       188: .line 1295
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
            pop
       189: .line 1297
            aconst_null
            areturn
       190: .line 1299
      StackMap locals:
      StackMap stack:
            aload 29 /* parameterTypePart */
            ifnonnull 191
            iconst_m1
            goto 192
      StackMap locals:
      StackMap stack:
       191: bipush 46
            aload 29 /* parameterTypePart */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.lastIndexOf:(C[C)I
      StackMap locals:
      StackMap stack: int
       192: istore 30 /* lastDotPosition */
        start local 30 // int lastDotPosition
       193: .line 1300
            aload 29 /* parameterTypePart */
            ifnull 201
            iload 30 /* lastDotPosition */
            iflt 201
       194: .line 1301
            aload 23 /* parameterTypeQualifications */
            iload 28 /* i */
            aload 29 /* parameterTypePart */
            iconst_0
            iload 30 /* lastDotPosition */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            aastore
       195: .line 1302
            aload 23 /* parameterTypeQualifications */
            iload 28 /* i */
            aaload
            arraylength
            iconst_1
            if_icmpne 198
            aload 23 /* parameterTypeQualifications */
            iload 28 /* i */
            aaload
            iconst_0
            caload
            bipush 42
            if_icmpne 198
       196: .line 1303
            aload 23 /* parameterTypeQualifications */
            iload 28 /* i */
            aconst_null
            aastore
       197: .line 1304
            goto 199
       198: .line 1306
      StackMap locals: int
      StackMap stack:
            aload 23 /* parameterTypeQualifications */
            iload 28 /* i */
            getstatic org.eclipse.jdt.internal.core.search.indexing.IIndexConstants.ONE_STAR:[C
            aload 23 /* parameterTypeQualifications */
            iload 28 /* i */
            aaload
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concat:([C[C)[C
            aastore
       199: .line 1308
      StackMap locals:
      StackMap stack:
            aload 24 /* parameterTypeSimpleNames */
            iload 28 /* i */
            aload 29 /* parameterTypePart */
            iload 30 /* lastDotPosition */
            iconst_1
            iadd
            aload 29 /* parameterTypePart */
            arraylength
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            aastore
       200: .line 1309
            goto 203
       201: .line 1310
      StackMap locals:
      StackMap stack:
            aload 23 /* parameterTypeQualifications */
            iload 28 /* i */
            aconst_null
            aastore
       202: .line 1311
            aload 24 /* parameterTypeSimpleNames */
            iload 28 /* i */
            aload 29 /* parameterTypePart */
            aastore
       203: .line 1313
      StackMap locals:
      StackMap stack:
            aload 24 /* parameterTypeSimpleNames */
            iload 28 /* i */
            aaload
            arraylength
            iconst_1
            if_icmpne 205
            aload 24 /* parameterTypeSimpleNames */
            iload 28 /* i */
            aaload
            iconst_0
            caload
            bipush 42
            if_icmpne 205
       204: .line 1314
            aload 24 /* parameterTypeSimpleNames */
            iload 28 /* i */
            aconst_null
            aastore
        end local 30 // int lastDotPosition
        end local 29 // char[] parameterTypePart
       205: .line 1282
      StackMap locals:
      StackMap stack:
            iinc 28 /* i */ 1
      StackMap locals:
      StackMap stack:
       206: iload 28 /* i */
            iload 12 /* parameterCount */
            if_icmplt 180
        end local 28 // int i
       207: .line 1318
      StackMap locals:
      StackMap stack:
            aload 13 /* returnType */
            ifnull 229
       208: .line 1320
            aconst_null
            astore 28 /* returnTypePart */
        start local 28 // char[] returnTypePart
       209: .line 1322
            aload 13 /* returnType */
            iconst_0
            invokestatic org.eclipse.jdt.core.Signature.createTypeSignature:(Ljava/lang/String;Z)Ljava/lang/String;
            astore 26 /* returnTypeSignature */
       210: .line 1323
            aload 26 /* returnTypeSignature */
            bipush 60
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 213
       211: .line 1324
            aload 13 /* returnType */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 28 /* returnTypePart */
       212: .line 1325
            goto 217
       213: .line 1326
      StackMap locals: char[]
      StackMap stack:
            aload 26 /* returnTypeSignature */
            invokevirtual java.lang.String.toCharArray:()[C
            invokestatic org.eclipse.jdt.core.Signature.getTypeErasure:([C)[C
            invokestatic org.eclipse.jdt.core.Signature.toCharArray:([C)[C
            astore 28 /* returnTypePart */
       214: .line 1328
            goto 217
       215: .line 1329
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
            pop
       216: .line 1331
            aconst_null
            areturn
       217: .line 1333
      StackMap locals:
      StackMap stack:
            bipush 46
            aload 28 /* returnTypePart */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.lastIndexOf:(C[C)I
            istore 29 /* lastDotPosition */
        start local 29 // int lastDotPosition
       218: .line 1334
            iload 29 /* lastDotPosition */
            iflt 226
       219: .line 1335
            aload 28 /* returnTypePart */
            iconst_0
            iload 29 /* lastDotPosition */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 21 /* returnTypeQualification */
       220: .line 1336
            aload 21 /* returnTypeQualification */
            arraylength
            iconst_1
            if_icmpne 223
            aload 21 /* returnTypeQualification */
            iconst_0
            caload
            bipush 42
            if_icmpne 223
       221: .line 1337
            aconst_null
            astore 21 /* returnTypeQualification */
       222: .line 1338
            goto 224
       223: .line 1340
      StackMap locals: int
      StackMap stack:
            getstatic org.eclipse.jdt.internal.core.search.indexing.IIndexConstants.ONE_STAR:[C
            aload 21 /* returnTypeQualification */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concat:([C[C)[C
            astore 21 /* returnTypeQualification */
       224: .line 1342
      StackMap locals:
      StackMap stack:
            aload 28 /* returnTypePart */
            iload 29 /* lastDotPosition */
            iconst_1
            iadd
            aload 28 /* returnTypePart */
            arraylength
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 22 /* returnTypeSimpleName */
       225: .line 1343
            goto 227
       226: .line 1344
      StackMap locals:
      StackMap stack:
            aload 28 /* returnTypePart */
            astore 22 /* returnTypeSimpleName */
       227: .line 1346
      StackMap locals:
      StackMap stack:
            aload 22 /* returnTypeSimpleName */
            arraylength
            iconst_1
            if_icmpne 229
            aload 22 /* returnTypeSimpleName */
            iconst_0
            caload
            bipush 42
            if_icmpne 229
       228: .line 1347
            aconst_null
            astore 22 /* returnTypeSimpleName */
        end local 29 // int lastDotPosition
        end local 28 // char[] returnTypePart
       229: .line 1350
      StackMap locals:
      StackMap stack:
            iload 3 /* isConstructor */
            ifeq 241
       230: .line 1351
            new org.eclipse.jdt.internal.core.search.matching.ConstructorPattern
            dup
       231: .line 1352
            aload 20 /* declaringTypeSimpleName */
       232: .line 1353
            aload 19 /* declaringTypeQualification */
       233: .line 1354
            aload 25 /* declaringTypeSignature */
       234: .line 1355
            aload 23 /* parameterTypeQualifications */
       235: .line 1356
            aload 24 /* parameterTypeSimpleNames */
       236: .line 1357
            aload 27 /* parameterTypeSignatures */
       237: .line 1358
            aload 10 /* typeArguments */
       238: .line 1359
            iload 1 /* limitTo */
       239: .line 1360
            iload 2 /* matchRule */
       240: .line 1351
            invokespecial org.eclipse.jdt.internal.core.search.matching.ConstructorPattern.<init>:([C[CLjava/lang/String;[[C[[C[Ljava/lang/String;[[CII)V
            areturn
       241: .line 1362
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.MethodPattern
            dup
       242: .line 1363
            aload 18 /* selectorChars */
       243: .line 1364
            aload 19 /* declaringTypeQualification */
       244: .line 1365
            aload 20 /* declaringTypeSimpleName */
       245: .line 1366
            aload 25 /* declaringTypeSignature */
       246: .line 1367
            aload 21 /* returnTypeQualification */
       247: .line 1368
            aload 22 /* returnTypeSimpleName */
       248: .line 1369
            aload 26 /* returnTypeSignature */
       249: .line 1370
            aload 23 /* parameterTypeQualifications */
       250: .line 1371
            aload 24 /* parameterTypeSimpleNames */
       251: .line 1372
            aload 27 /* parameterTypeSignatures */
       252: .line 1373
            aload 10 /* typeArguments */
       253: .line 1374
            iload 1 /* limitTo */
       254: .line 1375
            iload 2 /* matchRule */
       255: .line 1362
            invokespecial org.eclipse.jdt.internal.core.search.matching.MethodPattern.<init>:([C[C[CLjava/lang/String;[C[CLjava/lang/String;[[C[[C[Ljava/lang/String;[[CII)V
            areturn
        end local 27 // java.lang.String[] parameterTypeSignatures
        end local 26 // java.lang.String returnTypeSignature
        end local 25 // java.lang.String declaringTypeSignature
        end local 24 // char[][] parameterTypeSimpleNames
        end local 23 // char[][] parameterTypeQualifications
        end local 22 // char[] returnTypeSimpleName
        end local 21 // char[] returnTypeQualification
        end local 20 // char[] declaringTypeSimpleName
        end local 19 // char[] declaringTypeQualification
        end local 18 // char[] selectorChars
        end local 17 // int argCount
        end local 16 // int token
        end local 15 // int mode
        end local 14 // boolean foundClosingParenthesis
        end local 13 // java.lang.String returnType
        end local 12 // int parameterCount
        end local 11 // java.lang.String typeArgumentsString
        end local 10 // char[][] typeArguments
        end local 9 // java.lang.String[] parameterTypes
        end local 8 // java.lang.String parameterType
        end local 7 // java.lang.String selector
        end local 6 // java.lang.String declaringType
        end local 5 // int lastToken
        end local 4 // org.eclipse.jdt.internal.compiler.parser.Scanner scanner
        end local 3 // boolean isConstructor
        end local 2 // int matchRule
        end local 1 // int limitTo
        end local 0 // java.lang.String patternString
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0  256     0                patternString  Ljava/lang/String;
            0  256     1                      limitTo  I
            0  256     2                    matchRule  I
            0  256     3                isConstructor  Z
            1  256     4                      scanner  Lorg/eclipse/jdt/internal/compiler/parser/Scanner;
            3  256     5                    lastToken  I
            4  256     6                declaringType  Ljava/lang/String;
            5  256     7                     selector  Ljava/lang/String;
            6  256     8                parameterType  Ljava/lang/String;
            7  256     9               parameterTypes  [Ljava/lang/String;
            8  256    10                typeArguments  [[C
            9  256    11          typeArgumentsString  Ljava/lang/String;
           10  256    12               parameterCount  I
           11  256    13                   returnType  Ljava/lang/String;
           12  256    14      foundClosingParenthesis  Z
           13  256    15                         mode  I
           15   16    16                        token  I
           18  256    16                        token  I
           14  256    17                     argCount  I
           68   70    18                   pseudoType  Ljava/lang/String;
          135  256    18                selectorChars  [C
          146  256    19   declaringTypeQualification  [C
          147  256    20      declaringTypeSimpleName  [C
          148  256    21      returnTypeQualification  [C
          149  256    22         returnTypeSimpleName  [C
          150  256    23  parameterTypeQualifications  [[C
          151  256    24     parameterTypeSimpleNames  [[C
          152  256    25       declaringTypeSignature  Ljava/lang/String;
          153  256    26          returnTypeSignature  Ljava/lang/String;
          154  256    27      parameterTypeSignatures  [Ljava/lang/String;
          156  174    28            declaringTypePart  [C
          165  174    29              lastDotPosition  I
          179  207    28                            i  I
          181  205    29            parameterTypePart  [C
          193  205    30              lastDotPosition  I
          209  229    28               returnTypePart  [C
          218  229    29              lastDotPosition  I
      Exception table:
        from    to  target  type
          14    15      16  Class org.eclipse.jdt.core.compiler.InvalidInputException
         127   128     129  Class org.eclipse.jdt.core.compiler.InvalidInputException
         156   161     162  Class java.lang.IllegalArgumentException
         181   187     188  Class java.lang.IllegalArgumentException
         209   214     215  Class java.lang.IllegalArgumentException
    MethodParameters:
               Name  Flags
      patternString  
      limitTo        
      matchRule      
      isConstructor  

  private static org.eclipse.jdt.core.search.SearchPattern createModulePattern(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.lang.String patternString
        start local 1 // int limitTo
        start local 2 // int matchRule
         0: .line 1380
            new org.eclipse.jdt.internal.core.search.matching.ModulePattern
            dup
            aload 0 /* patternString */
            invokevirtual java.lang.String.toCharArray:()[C
            iload 1 /* limitTo */
            iload 2 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.ModulePattern.<init>:([CII)V
            areturn
        end local 2 // int matchRule
        end local 1 // int limitTo
        end local 0 // java.lang.String patternString
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0  patternString  Ljava/lang/String;
            0    1     1        limitTo  I
            0    1     2      matchRule  I
    MethodParameters:
               Name  Flags
      patternString  
      limitTo        
      matchRule      

  public static org.eclipse.jdt.core.search.SearchPattern createOrPattern(org.eclipse.jdt.core.search.SearchPattern, org.eclipse.jdt.core.search.SearchPattern);
    descriptor: (Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchPattern;)Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.search.SearchPattern leftPattern
        start local 1 // org.eclipse.jdt.core.search.SearchPattern rightPattern
         0: .line 1393
            new org.eclipse.jdt.internal.core.search.matching.OrPattern
            dup
            aload 0 /* leftPattern */
            aload 1 /* rightPattern */
            invokespecial org.eclipse.jdt.internal.core.search.matching.OrPattern.<init>:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchPattern;)V
            areturn
        end local 1 // org.eclipse.jdt.core.search.SearchPattern rightPattern
        end local 0 // org.eclipse.jdt.core.search.SearchPattern leftPattern
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0   leftPattern  Lorg/eclipse/jdt/core/search/SearchPattern;
            0    1     1  rightPattern  Lorg/eclipse/jdt/core/search/SearchPattern;
    MethodParameters:
              Name  Flags
      leftPattern   
      rightPattern  

  private static org.eclipse.jdt.core.search.SearchPattern createPackagePattern(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // java.lang.String patternString
        start local 1 // int limitTo
        start local 2 // int matchRule
         0: .line 1397
            iload 1 /* limitTo */
            tableswitch { // 0 - 3
                    0: 1
                    1: 7
                    2: 2
                    3: 3
              default: 7
          }
         1: .line 1399
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.PackageDeclarationPattern
            dup
            aload 0 /* patternString */
            invokevirtual java.lang.String.toCharArray:()[C
            iload 2 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.PackageDeclarationPattern.<init>:([CI)V
            areturn
         2: .line 1401
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.PackageReferencePattern
            dup
            aload 0 /* patternString */
            invokevirtual java.lang.String.toCharArray:()[C
            iload 2 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.PackageReferencePattern.<init>:([CI)V
            areturn
         3: .line 1403
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.OrPattern
            dup
         4: .line 1404
            new org.eclipse.jdt.internal.core.search.matching.PackageDeclarationPattern
            dup
            aload 0 /* patternString */
            invokevirtual java.lang.String.toCharArray:()[C
            iload 2 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.PackageDeclarationPattern.<init>:([CI)V
         5: .line 1405
            new org.eclipse.jdt.internal.core.search.matching.PackageReferencePattern
            dup
            aload 0 /* patternString */
            invokevirtual java.lang.String.toCharArray:()[C
            iload 2 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.PackageReferencePattern.<init>:([CI)V
         6: .line 1403
            invokespecial org.eclipse.jdt.internal.core.search.matching.OrPattern.<init>:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchPattern;)V
            areturn
         7: .line 1408
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // int matchRule
        end local 1 // int limitTo
        end local 0 // java.lang.String patternString
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0  patternString  Ljava/lang/String;
            0    8     1        limitTo  I
            0    8     2      matchRule  I
    MethodParameters:
               Name  Flags
      patternString  
      limitTo        
      matchRule      

  public static org.eclipse.jdt.core.search.SearchPattern createPattern(java.lang.String, int, int, int);
    descriptor: (Ljava/lang/String;III)Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // java.lang.String stringPattern
        start local 1 // int searchFor
        start local 2 // int limitTo
        start local 3 // int matchRule
         0: .line 1647
            aload 0 /* stringPattern */
            ifnull 1
            aload 0 /* stringPattern */
            invokevirtual java.lang.String.length:()I
            ifne 2
      StackMap locals:
      StackMap stack:
         1: aconst_null
            areturn
         2: .line 1649
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 1 /* searchFor */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.validateMatchRule:(Ljava/lang/String;III)I
            dup
            istore 3 /* matchRule */
            iconst_m1
            if_icmpne 4
         3: .line 1650
            aconst_null
            areturn
         4: .line 1654
      StackMap locals:
      StackMap stack:
            iload 2 /* limitTo */
            bipush -49
            iand
            istore 2 /* limitTo */
         5: .line 1656
            iload 1 /* searchFor */
            tableswitch { // 0 - 12
                    0: 13
                    1: 14
                    2: 17
                    3: 15
                    4: 16
                    5: 6
                    6: 9
                    7: 11
                    8: 12
                    9: 8
                   10: 7
                   11: 10
                   12: 18
              default: 19
          }
         6: .line 1658
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            bipush 67
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createTypePattern:(Ljava/lang/String;IIC)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
         7: .line 1660
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            bipush 10
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createTypePattern:(Ljava/lang/String;IIC)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
         8: .line 1662
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            bipush 9
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createTypePattern:(Ljava/lang/String;IIC)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
         9: .line 1664
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            bipush 73
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createTypePattern:(Ljava/lang/String;IIC)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
        10: .line 1666
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            bipush 11
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createTypePattern:(Ljava/lang/String;IIC)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
        11: .line 1668
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            bipush 69
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createTypePattern:(Ljava/lang/String;IIC)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
        12: .line 1670
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            bipush 65
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createTypePattern:(Ljava/lang/String;IIC)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
        13: .line 1672
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            iconst_0
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createTypePattern:(Ljava/lang/String;IIC)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
        14: .line 1674
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            iconst_0
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createMethodOrConstructorPattern:(Ljava/lang/String;IIZ)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
        15: .line 1676
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            iconst_1
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createMethodOrConstructorPattern:(Ljava/lang/String;IIZ)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
        16: .line 1678
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createFieldPattern:(Ljava/lang/String;II)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
        17: .line 1680
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createPackagePattern:(Ljava/lang/String;II)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
        18: .line 1682
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 2 /* limitTo */
            iload 3 /* matchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createModulePattern:(Ljava/lang/String;II)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
        19: .line 1684
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // int matchRule
        end local 2 // int limitTo
        end local 1 // int searchFor
        end local 0 // java.lang.String stringPattern
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   20     0  stringPattern  Ljava/lang/String;
            0   20     1      searchFor  I
            0   20     2        limitTo  I
            0   20     3      matchRule  I
    MethodParameters:
               Name  Flags
      stringPattern  
      searchFor      
      limitTo        
      matchRule      

  public static org.eclipse.jdt.core.search.SearchPattern createPattern(org.eclipse.jdt.core.IJavaElement, int);
    descriptor: (Lorg/eclipse/jdt/core/IJavaElement;I)Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.IJavaElement element
        start local 1 // int limitTo
         0: .line 1803
            aload 0 /* element */
            iload 1 /* limitTo */
            bipush 24
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createPattern:(Lorg/eclipse/jdt/core/IJavaElement;II)Lorg/eclipse/jdt/core/search/SearchPattern;
            areturn
        end local 1 // int limitTo
        end local 0 // org.eclipse.jdt.core.IJavaElement element
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  element  Lorg/eclipse/jdt/core/IJavaElement;
            0    1     1  limitTo  I
    MethodParameters:
         Name  Flags
      element  
      limitTo  

  public static org.eclipse.jdt.core.search.SearchPattern createPattern(org.eclipse.jdt.core.IJavaElement, int, int);
    descriptor: (Lorg/eclipse/jdt/core/IJavaElement;II)Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=14, locals=36, args_size=3
        start local 0 // org.eclipse.jdt.core.IJavaElement element
        start local 1 // int limitTo
        start local 2 // int matchRule
         0: .line 1942
            aconst_null
            astore 3 /* searchPattern */
        start local 3 // org.eclipse.jdt.core.search.SearchPattern searchPattern
         1: .line 1944
            iconst_0
            istore 5 /* ignoreDeclaringType */
        start local 5 // boolean ignoreDeclaringType
         2: .line 1945
            iconst_0
            istore 6 /* ignoreReturnType */
        start local 6 // boolean ignoreReturnType
         3: .line 1946
            iload 1 /* limitTo */
            bipush -49
            iand
            istore 7 /* maskedLimitTo */
        start local 7 // int maskedLimitTo
         4: .line 1947
            iload 7 /* maskedLimitTo */
            ifeq 5
            iload 7 /* maskedLimitTo */
            iconst_3
            if_icmpne 11
         5: .line 1948
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int
      StackMap stack:
            iload 1 /* limitTo */
            bipush 16
            iand
            ifeq 6
            iconst_1
            goto 7
      StackMap locals:
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: istore 5 /* ignoreDeclaringType */
         8: .line 1949
            iload 1 /* limitTo */
            bipush 32
            iand
            ifeq 9
            iconst_1
            goto 10
      StackMap locals:
      StackMap stack:
         9: iconst_0
      StackMap locals:
      StackMap stack: int
        10: istore 6 /* ignoreReturnType */
        11: .line 1951
      StackMap locals:
      StackMap stack:
            aconst_null
            iload 2 /* matchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.validateMatchRule:(Ljava/lang/String;I)I
            dup
            istore 2 /* matchRule */
            iconst_m1
            if_icmpne 13
        12: .line 1952
            aconst_null
            areturn
        13: .line 1954
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 8 /* declaringSimpleName */
        start local 8 // char[] declaringSimpleName
        14: .line 1955
            aconst_null
            astore 9 /* declaringQualification */
        start local 9 // char[] declaringQualification
        15: .line 1956
            aload 0 /* element */
            invokeinterface org.eclipse.jdt.core.IJavaElement.getElementType:()I
            tableswitch { // 4 - 17
                    4: 187
                    5: 190
                    6: 190
                    7: 176
                    8: 16
                    9: 91
                   10: 190
                   11: 187
                   12: 190
                   13: 56
                   14: 73
                   15: 76
                   16: 190
                   17: 189
              default: 190
          }
        16: .line 1958
      StackMap locals: char[] char[]
      StackMap stack:
            aload 0 /* element */
            checkcast org.eclipse.jdt.core.IField
            astore 10 /* field */
        start local 10 // org.eclipse.jdt.core.IField field
        17: .line 1959
            iload 5 /* ignoreDeclaringType */
            ifne 24
        18: .line 1960
            aload 10 /* field */
            invokeinterface org.eclipse.jdt.core.IField.getDeclaringType:()Lorg/eclipse/jdt/core/IType;
            astore 11 /* declaringClass */
        start local 11 // org.eclipse.jdt.core.IType declaringClass
        19: .line 1961
            aload 11 /* declaringClass */
            invokeinterface org.eclipse.jdt.core.IType.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 8 /* declaringSimpleName */
        20: .line 1962
            aload 11 /* declaringClass */
            invokeinterface org.eclipse.jdt.core.IType.getPackageFragment:()Lorg/eclipse/jdt/core/IPackageFragment;
            invokeinterface org.eclipse.jdt.core.IPackageFragment.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 9 /* declaringQualification */
        21: .line 1963
            aload 11 /* declaringClass */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.enclosingTypeNames:(Lorg/eclipse/jdt/core/IType;)[[C
            astore 12 /* enclosingNames */
        start local 12 // char[][] enclosingNames
        22: .line 1964
            aload 12 /* enclosingNames */
            arraylength
            ifle 24
        23: .line 1965
            aload 9 /* declaringQualification */
            aload 12 /* enclosingNames */
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([[CC)[C
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concat:([C[CC)[C
            astore 9 /* declaringQualification */
        end local 12 // char[][] enclosingNames
        end local 11 // org.eclipse.jdt.core.IType declaringClass
        24: .line 1968
      StackMap locals: org.eclipse.jdt.core.IField
      StackMap stack:
            aload 10 /* field */
            invokeinterface org.eclipse.jdt.core.IField.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 11 /* name */
        start local 11 // char[] name
        25: .line 1969
            aconst_null
            astore 12 /* typeSimpleName */
        start local 12 // char[] typeSimpleName
        26: .line 1970
            aconst_null
            astore 13 /* typeQualification */
        start local 13 // char[] typeQualification
        27: .line 1971
            aconst_null
            astore 14 /* typeSignature */
        start local 14 // java.lang.String typeSignature
        28: .line 1972
            iload 6 /* ignoreReturnType */
            ifne 44
        29: .line 1974
            aload 10 /* field */
            invokeinterface org.eclipse.jdt.core.IField.getTypeSignature:()Ljava/lang/String;
            astore 14 /* typeSignature */
        30: .line 1975
            aload 14 /* typeSignature */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 15 /* signature */
        start local 15 // char[] signature
        31: .line 1976
            aload 15 /* signature */
            invokestatic org.eclipse.jdt.core.Signature.getTypeErasure:([C)[C
            invokestatic org.eclipse.jdt.core.Signature.toCharArray:([C)[C
            astore 16 /* typeErasure */
        start local 16 // char[] typeErasure
        32: .line 1977
            aload 16 /* typeErasure */
            bipush 36
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.replace:([CCC)V
        33: .line 1978
            bipush 46
            aload 16 /* typeErasure */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.lastIndexOf:(C[C)I
            dup
            istore 4 /* lastDot */
        start local 4 // int lastDot
        34: iconst_m1
            if_icmpne 37
        35: .line 1979
            aload 16 /* typeErasure */
            astore 12 /* typeSimpleName */
        36: .line 1980
            goto 44
        37: .line 1981
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern int int int int char[] char[] org.eclipse.jdt.core.IField char[] char[] char[] java.lang.String char[] char[]
      StackMap stack:
            aload 16 /* typeErasure */
            iload 4 /* lastDot */
            iconst_1
            iadd
            aload 16 /* typeErasure */
            arraylength
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 12 /* typeSimpleName */
        38: .line 1982
            aload 16 /* typeErasure */
            iconst_0
            iload 4 /* lastDot */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 13 /* typeQualification */
        39: .line 1983
            aload 10 /* field */
            invokeinterface org.eclipse.jdt.core.IField.isBinary:()Z
            ifne 44
        40: .line 1985
            getstatic org.eclipse.jdt.internal.core.search.indexing.IIndexConstants.ONE_STAR:[C
            aload 13 /* typeQualification */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concat:([C[C)[C
            astore 13 /* typeQualification */
        end local 16 // char[] typeErasure
        end local 15 // char[] signature
        41: .line 1988
            goto 44
        end local 4 // int lastDot
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[] org.eclipse.jdt.core.IField char[] char[] char[] java.lang.String
      StackMap stack: org.eclipse.jdt.core.JavaModelException
        42: pop
        43: .line 1989
            aconst_null
            areturn
        44: .line 1994
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.FieldPattern
            dup
        45: .line 1995
            aload 11 /* name */
        46: .line 1996
            aload 9 /* declaringQualification */
        47: .line 1997
            aload 8 /* declaringSimpleName */
        48: .line 1998
            aload 13 /* typeQualification */
        49: .line 1999
            aload 12 /* typeSimpleName */
        50: .line 2000
            aload 14 /* typeSignature */
        51: .line 2001
            iload 1 /* limitTo */
        52: .line 2002
            iload 2 /* matchRule */
        53: .line 1994
            invokespecial org.eclipse.jdt.internal.core.search.matching.FieldPattern.<init>:([C[C[C[C[CLjava/lang/String;II)V
        54: .line 1993
            astore 3 /* searchPattern */
        55: .line 2003
            goto 190
        end local 14 // java.lang.String typeSignature
        end local 13 // char[] typeQualification
        end local 12 // char[] typeSimpleName
        end local 11 // char[] name
        end local 10 // org.eclipse.jdt.core.IField field
        56: .line 2005
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[]
      StackMap stack:
            aload 0 /* element */
            invokeinterface org.eclipse.jdt.core.IJavaElement.getElementName:()Ljava/lang/String;
            astore 15 /* elementName */
        start local 15 // java.lang.String elementName
        57: .line 2006
            aload 15 /* elementName */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 4 /* lastDot */
        start local 4 // int lastDot
        58: .line 2007
            iload 4 /* lastDot */
            iconst_m1
            if_icmpne 59
            aconst_null
            areturn
        59: .line 2008
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern int int int int char[] char[] top top top top top java.lang.String
      StackMap stack:
            aload 0 /* element */
            checkcast org.eclipse.jdt.core.IImportDeclaration
            astore 16 /* importDecl */
        start local 16 // org.eclipse.jdt.core.IImportDeclaration importDecl
        60: .line 2009
            aload 16 /* importDecl */
            invokeinterface org.eclipse.jdt.core.IImportDeclaration.isOnDemand:()Z
            ifeq 63
        61: .line 2010
            aload 15 /* elementName */
            iconst_0
            iload 4 /* lastDot */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            iload 7 /* maskedLimitTo */
            iload 2 /* matchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createPackagePattern:(Ljava/lang/String;II)Lorg/eclipse/jdt/core/search/SearchPattern;
            astore 3 /* searchPattern */
        62: .line 2011
            goto 190
        63: .line 2014
      StackMap locals: org.eclipse.jdt.core.IImportDeclaration
      StackMap stack:
            aload 15 /* elementName */
            iload 4 /* lastDot */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
        64: .line 2015
            aload 15 /* elementName */
            iconst_0
            iload 4 /* lastDot */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
        65: .line 2016
            aconst_null
        66: .line 2017
            aconst_null
        67: .line 2018
            aconst_null
        68: .line 2019
            iload 7 /* maskedLimitTo */
        69: .line 2020
            iload 2 /* matchRule */
        70: .line 2013
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createTypePattern:([C[C[[CLjava/lang/String;Lorg/eclipse/jdt/core/IType;II)Lorg/eclipse/jdt/core/search/SearchPattern;
        71: .line 2012
            astore 3 /* searchPattern */
        72: .line 2022
            goto 190
        end local 16 // org.eclipse.jdt.core.IImportDeclaration importDecl
        end local 15 // java.lang.String elementName
        end local 4 // int lastDot
        73: .line 2024
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[]
      StackMap stack:
            aload 0 /* element */
            checkcast org.eclipse.jdt.internal.core.LocalVariable
            astore 17 /* localVar */
        start local 17 // org.eclipse.jdt.internal.core.LocalVariable localVar
        74: .line 2025
            new org.eclipse.jdt.internal.core.search.matching.LocalVariablePattern
            dup
            aload 17 /* localVar */
            iload 1 /* limitTo */
            iload 2 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.LocalVariablePattern.<init>:(Lorg/eclipse/jdt/internal/core/LocalVariable;II)V
            astore 3 /* searchPattern */
        75: .line 2026
            goto 190
        end local 17 // org.eclipse.jdt.internal.core.LocalVariable localVar
        76: .line 2028
      StackMap locals:
      StackMap stack:
            aload 0 /* element */
            checkcast org.eclipse.jdt.core.ITypeParameter
            astore 18 /* typeParam */
        start local 18 // org.eclipse.jdt.core.ITypeParameter typeParam
        77: .line 2029
            iconst_1
            istore 19 /* findParamDeclarations */
        start local 19 // boolean findParamDeclarations
        78: .line 2030
            iconst_1
            istore 20 /* findParamReferences */
        start local 20 // boolean findParamReferences
        79: .line 2031
            iload 7 /* maskedLimitTo */
            tableswitch { // 0 - 2
                    0: 80
                    1: 83
                    2: 82
              default: 83
          }
        80: .line 2033
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[] top top top top top top top top org.eclipse.jdt.core.ITypeParameter int int
      StackMap stack:
            iconst_0
            istore 20 /* findParamReferences */
        81: .line 2034
            goto 83
        82: .line 2036
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 19 /* findParamDeclarations */
        83: .line 2040
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.TypeParameterPattern
            dup
        84: .line 2041
            iload 19 /* findParamDeclarations */
        85: .line 2042
            iload 20 /* findParamReferences */
        86: .line 2043
            aload 18 /* typeParam */
        87: .line 2044
            iload 2 /* matchRule */
        88: .line 2040
            invokespecial org.eclipse.jdt.internal.core.search.matching.TypeParameterPattern.<init>:(ZZLorg/eclipse/jdt/core/ITypeParameter;I)V
        89: .line 2039
            astore 3 /* searchPattern */
        90: .line 2045
            goto 190
        end local 20 // boolean findParamReferences
        end local 19 // boolean findParamDeclarations
        end local 18 // org.eclipse.jdt.core.ITypeParameter typeParam
        91: .line 2047
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[]
      StackMap stack:
            aload 0 /* element */
            checkcast org.eclipse.jdt.core.IMethod
            astore 21 /* method */
        start local 21 // org.eclipse.jdt.core.IMethod method
        92: .line 2050
            aload 21 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.isConstructor:()Z
            istore 22 /* isConstructor */
        start local 22 // boolean isConstructor
        93: .line 2051
            goto 96
        end local 22 // boolean isConstructor
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[] top top top top top top top top top top top org.eclipse.jdt.core.IMethod
      StackMap stack: org.eclipse.jdt.core.JavaModelException
        94: pop
        95: .line 2052
            aconst_null
            areturn
        start local 22 // boolean isConstructor
        96: .line 2054
      StackMap locals: int
      StackMap stack:
            aload 21 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getDeclaringType:()Lorg/eclipse/jdt/core/IType;
            astore 23 /* declaringClass */
        start local 23 // org.eclipse.jdt.core.IType declaringClass
        97: .line 2055
            iload 5 /* ignoreDeclaringType */
            ifeq 100
        98: .line 2056
            iload 22 /* isConstructor */
            ifeq 105
            aload 23 /* declaringClass */
            invokeinterface org.eclipse.jdt.core.IType.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 8 /* declaringSimpleName */
        99: .line 2057
            goto 105
       100: .line 2058
      StackMap locals: org.eclipse.jdt.core.IType
      StackMap stack:
            aload 23 /* declaringClass */
            invokeinterface org.eclipse.jdt.core.IType.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 8 /* declaringSimpleName */
       101: .line 2059
            aload 23 /* declaringClass */
            invokeinterface org.eclipse.jdt.core.IType.getPackageFragment:()Lorg/eclipse/jdt/core/IPackageFragment;
            invokeinterface org.eclipse.jdt.core.IPackageFragment.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 9 /* declaringQualification */
       102: .line 2060
            aload 23 /* declaringClass */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.enclosingTypeNames:(Lorg/eclipse/jdt/core/IType;)[[C
            astore 24 /* enclosingNames */
        start local 24 // char[][] enclosingNames
       103: .line 2061
            aload 24 /* enclosingNames */
            arraylength
            ifle 105
       104: .line 2062
            aload 9 /* declaringQualification */
            aload 24 /* enclosingNames */
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([[CC)[C
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concat:([C[CC)[C
            astore 9 /* declaringQualification */
        end local 24 // char[][] enclosingNames
       105: .line 2065
      StackMap locals:
      StackMap stack:
            aload 21 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 24 /* selector */
        start local 24 // char[] selector
       106: .line 2066
            aconst_null
            astore 25 /* returnSimpleName */
        start local 25 // char[] returnSimpleName
       107: .line 2067
            aconst_null
            astore 26 /* returnQualification */
        start local 26 // char[] returnQualification
       108: .line 2068
            aconst_null
            astore 27 /* returnSignature */
        start local 27 // java.lang.String returnSignature
       109: .line 2069
            iload 6 /* ignoreReturnType */
            ifne 125
       110: .line 2071
            aload 21 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getReturnType:()Ljava/lang/String;
            astore 27 /* returnSignature */
       111: .line 2072
            aload 27 /* returnSignature */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 28 /* signature */
        start local 28 // char[] signature
       112: .line 2073
            aload 28 /* signature */
            invokestatic org.eclipse.jdt.core.Signature.getTypeErasure:([C)[C
            invokestatic org.eclipse.jdt.core.Signature.toCharArray:([C)[C
            astore 29 /* returnErasure */
        start local 29 // char[] returnErasure
       113: .line 2074
            aload 29 /* returnErasure */
            bipush 36
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.replace:([CCC)V
       114: .line 2075
            bipush 46
            aload 29 /* returnErasure */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.lastIndexOf:(C[C)I
            dup
            istore 4 /* lastDot */
        start local 4 // int lastDot
       115: iconst_m1
            if_icmpne 118
       116: .line 2076
            aload 29 /* returnErasure */
            astore 25 /* returnSimpleName */
       117: .line 2077
            goto 125
       118: .line 2078
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern int int int int char[] char[] top top top top top top top top top top top org.eclipse.jdt.core.IMethod int org.eclipse.jdt.core.IType char[] char[] char[] java.lang.String char[] char[]
      StackMap stack:
            aload 29 /* returnErasure */
            iload 4 /* lastDot */
            iconst_1
            iadd
            aload 29 /* returnErasure */
            arraylength
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 25 /* returnSimpleName */
       119: .line 2079
            aload 29 /* returnErasure */
            iconst_0
            iload 4 /* lastDot */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 26 /* returnQualification */
       120: .line 2080
            aload 21 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.isBinary:()Z
            ifne 125
       121: .line 2082
            getstatic org.eclipse.jdt.internal.core.search.indexing.IIndexConstants.ONE_STAR:[C
            aload 26 /* returnQualification */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concat:([C[C)[C
            pop
        end local 29 // char[] returnErasure
        end local 28 // char[] signature
       122: .line 2085
            goto 125
        end local 4 // int lastDot
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[] top top top top top top top top top top top org.eclipse.jdt.core.IMethod int org.eclipse.jdt.core.IType char[] char[] char[] java.lang.String
      StackMap stack: org.eclipse.jdt.core.JavaModelException
       123: pop
       124: .line 2086
            aconst_null
            areturn
       125: .line 2089
      StackMap locals:
      StackMap stack:
            aload 21 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.getParameterTypes:()[Ljava/lang/String;
            astore 28 /* parameterTypes */
        start local 28 // java.lang.String[] parameterTypes
       126: .line 2090
            aload 28 /* parameterTypes */
            arraylength
            istore 29 /* paramCount */
        start local 29 // int paramCount
       127: .line 2091
            iload 29 /* paramCount */
            anewarray char[]
            astore 30 /* parameterSimpleNames */
        start local 30 // char[][] parameterSimpleNames
       128: .line 2092
            iload 29 /* paramCount */
            anewarray char[]
            astore 31 /* parameterQualifications */
        start local 31 // char[][] parameterQualifications
       129: .line 2093
            iload 29 /* paramCount */
            anewarray java.lang.String
            astore 32 /* parameterSignatures */
        start local 32 // java.lang.String[] parameterSignatures
       130: .line 2094
            iconst_0
            istore 33 /* i */
        start local 33 // int i
       131: goto 146
       132: .line 2095
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[] top top top top top top top top top top top org.eclipse.jdt.core.IMethod int org.eclipse.jdt.core.IType char[] char[] char[] java.lang.String java.lang.String[] int char[][] char[][] java.lang.String[] int
      StackMap stack:
            aload 32 /* parameterSignatures */
            iload 33 /* i */
            aload 28 /* parameterTypes */
            iload 33 /* i */
            aaload
            aastore
       133: .line 2096
            aload 32 /* parameterSignatures */
            iload 33 /* i */
            aaload
            invokevirtual java.lang.String.toCharArray:()[C
            astore 34 /* signature */
        start local 34 // char[] signature
       134: .line 2097
            aload 34 /* signature */
            invokestatic org.eclipse.jdt.core.Signature.getTypeErasure:([C)[C
            invokestatic org.eclipse.jdt.core.Signature.toCharArray:([C)[C
            astore 35 /* paramErasure */
        start local 35 // char[] paramErasure
       135: .line 2098
            aload 35 /* paramErasure */
            bipush 36
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.replace:([CCC)V
       136: .line 2099
            bipush 46
            aload 35 /* paramErasure */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.lastIndexOf:(C[C)I
            dup
            istore 4 /* lastDot */
        start local 4 // int lastDot
       137: iconst_m1
            if_icmpne 141
       138: .line 2100
            aload 30 /* parameterSimpleNames */
            iload 33 /* i */
            aload 35 /* paramErasure */
            aastore
       139: .line 2101
            aload 31 /* parameterQualifications */
            iload 33 /* i */
            aconst_null
            aastore
       140: .line 2102
            goto 145
       141: .line 2103
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern int int int int char[] char[] top top top top top top top top top top top org.eclipse.jdt.core.IMethod int org.eclipse.jdt.core.IType char[] char[] char[] java.lang.String java.lang.String[] int char[][] char[][] java.lang.String[] int char[] char[]
      StackMap stack:
            aload 30 /* parameterSimpleNames */
            iload 33 /* i */
            aload 35 /* paramErasure */
            iload 4 /* lastDot */
            iconst_1
            iadd
            aload 35 /* paramErasure */
            arraylength
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            aastore
       142: .line 2104
            aload 31 /* parameterQualifications */
            iload 33 /* i */
            aload 35 /* paramErasure */
            iconst_0
            iload 4 /* lastDot */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            aastore
       143: .line 2105
            aload 21 /* method */
            invokeinterface org.eclipse.jdt.core.IMethod.isBinary:()Z
            ifne 145
       144: .line 2107
            getstatic org.eclipse.jdt.internal.core.search.indexing.IIndexConstants.ONE_STAR:[C
            aload 31 /* parameterQualifications */
            iload 33 /* i */
            aaload
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concat:([C[C)[C
            pop
        end local 35 // char[] paramErasure
        end local 34 // char[] signature
       145: .line 2094
      StackMap locals:
      StackMap stack:
            iinc 33 /* i */ 1
        end local 4 // int lastDot
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[] top top top top top top top top top top top org.eclipse.jdt.core.IMethod int org.eclipse.jdt.core.IType char[] char[] char[] java.lang.String java.lang.String[] int char[][] char[][] java.lang.String[] int
      StackMap stack:
       146: iload 33 /* i */
            iload 29 /* paramCount */
            if_icmplt 132
        end local 33 // int i
       147: .line 2113
            iload 22 /* isConstructor */
            ifeq 160
       148: .line 2115
            new org.eclipse.jdt.internal.core.search.matching.ConstructorPattern
            dup
       149: .line 2116
            aload 8 /* declaringSimpleName */
       150: .line 2117
            aload 9 /* declaringQualification */
       151: .line 2118
            aload 31 /* parameterQualifications */
       152: .line 2119
            aload 30 /* parameterSimpleNames */
       153: .line 2120
            aload 32 /* parameterSignatures */
       154: .line 2121
            aload 21 /* method */
       155: .line 2122
            iload 1 /* limitTo */
       156: .line 2123
            iload 2 /* matchRule */
       157: .line 2115
            invokespecial org.eclipse.jdt.internal.core.search.matching.ConstructorPattern.<init>:([C[C[[C[[C[Ljava/lang/String;Lorg/eclipse/jdt/core/IMethod;II)V
       158: .line 2114
            astore 3 /* searchPattern */
       159: .line 2124
            goto 190
       160: .line 2126
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.MethodPattern
            dup
       161: .line 2127
            aload 24 /* selector */
       162: .line 2128
            aload 9 /* declaringQualification */
       163: .line 2129
            aload 8 /* declaringSimpleName */
       164: .line 2130
            aload 26 /* returnQualification */
       165: .line 2131
            aload 25 /* returnSimpleName */
       166: .line 2132
            aload 27 /* returnSignature */
       167: .line 2133
            aload 31 /* parameterQualifications */
       168: .line 2134
            aload 30 /* parameterSimpleNames */
       169: .line 2135
            aload 32 /* parameterSignatures */
       170: .line 2136
            aload 21 /* method */
       171: .line 2137
            iload 1 /* limitTo */
       172: .line 2138
            iload 2 /* matchRule */
       173: .line 2126
            invokespecial org.eclipse.jdt.internal.core.search.matching.MethodPattern.<init>:([C[C[C[C[CLjava/lang/String;[[C[[C[Ljava/lang/String;Lorg/eclipse/jdt/core/IMethod;II)V
       174: .line 2125
            astore 3 /* searchPattern */
       175: .line 2140
            goto 190
        end local 32 // java.lang.String[] parameterSignatures
        end local 31 // char[][] parameterQualifications
        end local 30 // char[][] parameterSimpleNames
        end local 29 // int paramCount
        end local 28 // java.lang.String[] parameterTypes
        end local 27 // java.lang.String returnSignature
        end local 26 // char[] returnQualification
        end local 25 // char[] returnSimpleName
        end local 24 // char[] selector
        end local 23 // org.eclipse.jdt.core.IType declaringClass
        end local 22 // boolean isConstructor
        end local 21 // org.eclipse.jdt.core.IMethod method
       176: .line 2142
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[]
      StackMap stack:
            aload 0 /* element */
            checkcast org.eclipse.jdt.core.IType
            astore 33 /* type */
        start local 33 // org.eclipse.jdt.core.IType type
       177: .line 2144
            aload 33 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
       178: .line 2145
            aload 33 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getPackageFragment:()Lorg/eclipse/jdt/core/IPackageFragment;
            invokeinterface org.eclipse.jdt.core.IPackageFragment.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
       179: .line 2146
            iload 5 /* ignoreDeclaringType */
            ifeq 180
            aconst_null
            goto 181
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[] top top top top top top top top top top top top top top top top top top top top top top top org.eclipse.jdt.core.IType
      StackMap stack: char[] char[]
       180: aload 33 /* type */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.enclosingTypeNames:(Lorg/eclipse/jdt/core/IType;)[[C
       181: .line 2147
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[] top top top top top top top top top top top top top top top top top top top top top top top org.eclipse.jdt.core.IType
      StackMap stack: char[] char[] char[][]
            aconst_null
       182: .line 2148
            aload 33 /* type */
       183: .line 2149
            iload 7 /* maskedLimitTo */
       184: .line 2150
            iload 2 /* matchRule */
       185: .line 2143
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createTypePattern:([C[C[[CLjava/lang/String;Lorg/eclipse/jdt/core/IType;II)Lorg/eclipse/jdt/core/search/SearchPattern;
            astore 3 /* searchPattern */
       186: .line 2151
            goto 190
        end local 33 // org.eclipse.jdt.core.IType type
       187: .line 2154
      StackMap locals: org.eclipse.jdt.core.IJavaElement int int org.eclipse.jdt.core.search.SearchPattern top int int int char[] char[]
      StackMap stack:
            aload 0 /* element */
            invokeinterface org.eclipse.jdt.core.IJavaElement.getElementName:()Ljava/lang/String;
            iload 7 /* maskedLimitTo */
            iload 2 /* matchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createPackagePattern:(Ljava/lang/String;II)Lorg/eclipse/jdt/core/search/SearchPattern;
            astore 3 /* searchPattern */
       188: .line 2155
            goto 190
       189: .line 2157
      StackMap locals:
      StackMap stack:
            aload 0 /* element */
            invokeinterface org.eclipse.jdt.core.IJavaElement.getElementName:()Ljava/lang/String;
            iload 7 /* maskedLimitTo */
            iload 2 /* matchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.createModulePattern:(Ljava/lang/String;II)Lorg/eclipse/jdt/core/search/SearchPattern;
            astore 3 /* searchPattern */
       190: .line 2160
      StackMap locals:
      StackMap stack:
            aload 3 /* searchPattern */
            ifnull 192
       191: .line 2161
            aload 3 /* searchPattern */
            aload 0 /* element */
            invokestatic org.eclipse.jdt.internal.core.search.matching.MatchLocator.setFocus:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/IJavaElement;)V
       192: .line 2162
      StackMap locals:
      StackMap stack:
            aload 3 /* searchPattern */
            areturn
        end local 9 // char[] declaringQualification
        end local 8 // char[] declaringSimpleName
        end local 7 // int maskedLimitTo
        end local 6 // boolean ignoreReturnType
        end local 5 // boolean ignoreDeclaringType
        end local 3 // org.eclipse.jdt.core.search.SearchPattern searchPattern
        end local 2 // int matchRule
        end local 1 // int limitTo
        end local 0 // org.eclipse.jdt.core.IJavaElement element
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0  193     0                  element  Lorg/eclipse/jdt/core/IJavaElement;
            0  193     1                  limitTo  I
            0  193     2                matchRule  I
            1  193     3            searchPattern  Lorg/eclipse/jdt/core/search/SearchPattern;
           34   42     4                  lastDot  I
           58   73     4                  lastDot  I
          115  123     4                  lastDot  I
          137  146     4                  lastDot  I
            2  193     5      ignoreDeclaringType  Z
            3  193     6         ignoreReturnType  Z
            4  193     7            maskedLimitTo  I
           14  193     8      declaringSimpleName  [C
           15  193     9   declaringQualification  [C
           17   56    10                    field  Lorg/eclipse/jdt/core/IField;
           19   24    11           declaringClass  Lorg/eclipse/jdt/core/IType;
           22   24    12           enclosingNames  [[C
           25   56    11                     name  [C
           26   56    12           typeSimpleName  [C
           27   56    13        typeQualification  [C
           28   56    14            typeSignature  Ljava/lang/String;
           31   41    15                signature  [C
           32   41    16              typeErasure  [C
           57   73    15              elementName  Ljava/lang/String;
           60   73    16               importDecl  Lorg/eclipse/jdt/core/IImportDeclaration;
           74   76    17                 localVar  Lorg/eclipse/jdt/internal/core/LocalVariable;
           77   91    18                typeParam  Lorg/eclipse/jdt/core/ITypeParameter;
           78   91    19    findParamDeclarations  Z
           79   91    20      findParamReferences  Z
           92  176    21                   method  Lorg/eclipse/jdt/core/IMethod;
           93   94    22            isConstructor  Z
           96  176    22            isConstructor  Z
           97  176    23           declaringClass  Lorg/eclipse/jdt/core/IType;
          103  105    24           enclosingNames  [[C
          106  176    24                 selector  [C
          107  176    25         returnSimpleName  [C
          108  176    26      returnQualification  [C
          109  176    27          returnSignature  Ljava/lang/String;
          112  122    28                signature  [C
          113  122    29            returnErasure  [C
          126  176    28           parameterTypes  [Ljava/lang/String;
          127  176    29               paramCount  I
          128  176    30     parameterSimpleNames  [[C
          129  176    31  parameterQualifications  [[C
          130  176    32      parameterSignatures  [Ljava/lang/String;
          131  147    33                        i  I
          134  145    34                signature  [C
          135  145    35             paramErasure  [C
          177  187    33                     type  Lorg/eclipse/jdt/core/IType;
      Exception table:
        from    to  target  type
          29    41      42  Class org.eclipse.jdt.core.JavaModelException
          92    93      94  Class org.eclipse.jdt.core.JavaModelException
         110   122     123  Class org.eclipse.jdt.core.JavaModelException
    MethodParameters:
           Name  Flags
      element    
      limitTo    
      matchRule  

  private static org.eclipse.jdt.core.search.SearchPattern createTypePattern(char[], char[], char[][], java.lang.String, org.eclipse.jdt.core.IType, int, int);
    descriptor: ([C[C[[CLjava/lang/String;Lorg/eclipse/jdt/core/IType;II)Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=7, args_size=7
        start local 0 // char[] simpleName
        start local 1 // char[] packageName
        start local 2 // char[][] enclosingTypeNames
        start local 3 // java.lang.String typeSignature
        start local 4 // org.eclipse.jdt.core.IType type
        start local 5 // int limitTo
        start local 6 // int matchRule
         0: .line 2166
            iload 5 /* limitTo */
            tableswitch { // 0 - 3
                    0: 1
                    1: 21
                    2: 8
                    3: 27
              default: 50
          }
         1: .line 2168
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern
            dup
         2: .line 2169
            aload 1 /* packageName */
         3: .line 2170
            aload 2 /* enclosingTypeNames */
         4: .line 2171
            aload 0 /* simpleName */
         5: .line 2172
            iconst_0
         6: .line 2173
            iload 6 /* matchRule */
         7: .line 2168
            invokespecial org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern.<init>:([C[[C[CCI)V
            areturn
         8: .line 2175
      StackMap locals:
      StackMap stack:
            aload 4 /* type */
            ifnull 15
         9: .line 2176
            new org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern
            dup
        10: .line 2177
            aload 1 /* packageName */
            aload 2 /* enclosingTypeNames */
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([C[[CC)[C
        11: .line 2178
            aload 0 /* simpleName */
        12: .line 2179
            aload 4 /* type */
        13: .line 2180
            iload 6 /* matchRule */
        14: .line 2176
            invokespecial org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern.<init>:([C[CLorg/eclipse/jdt/core/IType;I)V
            areturn
        15: .line 2182
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern
            dup
        16: .line 2183
            aload 1 /* packageName */
            aload 2 /* enclosingTypeNames */
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([C[[CC)[C
        17: .line 2184
            aload 0 /* simpleName */
        18: .line 2185
            aload 3 /* typeSignature */
        19: .line 2186
            iload 6 /* matchRule */
        20: .line 2182
            invokespecial org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern.<init>:([C[CLjava/lang/String;I)V
            areturn
        21: .line 2188
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.SuperTypeReferencePattern
            dup
        22: .line 2189
            aload 1 /* packageName */
            aload 2 /* enclosingTypeNames */
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([C[[CC)[C
        23: .line 2190
            aload 0 /* simpleName */
        24: .line 2191
            iconst_1
        25: .line 2192
            iload 6 /* matchRule */
        26: .line 2188
            invokespecial org.eclipse.jdt.internal.core.search.matching.SuperTypeReferencePattern.<init>:([C[CII)V
            areturn
        27: .line 2194
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.OrPattern
            dup
        28: .line 2195
            new org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern
            dup
        29: .line 2196
            aload 1 /* packageName */
        30: .line 2197
            aload 2 /* enclosingTypeNames */
        31: .line 2198
            aload 0 /* simpleName */
        32: .line 2199
            iconst_0
        33: .line 2200
            iload 6 /* matchRule */
        34: .line 2195
            invokespecial org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern.<init>:([C[[C[CCI)V
        35: .line 2201
            aload 4 /* type */
            ifnull 43
        36: .line 2202
            new org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern
            dup
        37: .line 2203
            aload 1 /* packageName */
            aload 2 /* enclosingTypeNames */
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([C[[CC)[C
        38: .line 2204
            aload 0 /* simpleName */
        39: .line 2205
            aload 4 /* type */
        40: .line 2206
            iload 6 /* matchRule */
        41: .line 2202
            invokespecial org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern.<init>:([C[CLorg/eclipse/jdt/core/IType;I)V
        42: .line 2206
            goto 49
        43: .line 2207
      StackMap locals: char[] char[] char[][] java.lang.String org.eclipse.jdt.core.IType int int
      StackMap stack: new 27 new 27 org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern
            new org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern
            dup
        44: .line 2208
            aload 1 /* packageName */
            aload 2 /* enclosingTypeNames */
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([C[[CC)[C
        45: .line 2209
            aload 0 /* simpleName */
        46: .line 2210
            aload 3 /* typeSignature */
        47: .line 2211
            iload 6 /* matchRule */
        48: .line 2207
            invokespecial org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern.<init>:([C[CLjava/lang/String;I)V
        49: .line 2194
      StackMap locals: char[] char[] char[][] java.lang.String org.eclipse.jdt.core.IType int int
      StackMap stack: new 27 new 27 org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern
            invokespecial org.eclipse.jdt.internal.core.search.matching.OrPattern.<init>:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchPattern;)V
            areturn
        50: .line 2214
      StackMap locals:
      StackMap stack:
            aload 4 /* type */
            ifnull 58
        51: .line 2215
            new org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern
            dup
        52: .line 2216
            aload 1 /* packageName */
            aload 2 /* enclosingTypeNames */
            bipush 46
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([C[[CC)[C
        53: .line 2217
            aload 0 /* simpleName */
        54: .line 2218
            aload 4 /* type */
        55: .line 2219
            iload 5 /* limitTo */
        56: .line 2220
            iload 6 /* matchRule */
        57: .line 2215
            invokespecial org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern.<init>:([C[CLorg/eclipse/jdt/core/IType;II)V
            areturn
        58: .line 2223
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 6 // int matchRule
        end local 5 // int limitTo
        end local 4 // org.eclipse.jdt.core.IType type
        end local 3 // java.lang.String typeSignature
        end local 2 // char[][] enclosingTypeNames
        end local 1 // char[] packageName
        end local 0 // char[] simpleName
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   59     0          simpleName  [C
            0   59     1         packageName  [C
            0   59     2  enclosingTypeNames  [[C
            0   59     3       typeSignature  Ljava/lang/String;
            0   59     4                type  Lorg/eclipse/jdt/core/IType;
            0   59     5             limitTo  I
            0   59     6           matchRule  I
    MethodParameters:
                    Name  Flags
      simpleName          
      packageName         
      enclosingTypeNames  
      typeSignature       
      type                
      limitTo             
      matchRule           

  private static org.eclipse.jdt.core.search.SearchPattern createTypePattern(java.lang.String, int, int, char);
    descriptor: (Ljava/lang/String;IIC)Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=18, args_size=4
        start local 0 // java.lang.String patternString
        start local 1 // int limitTo
        start local 2 // int matchRule
        start local 3 // char indexSuffix
         0: .line 2226
            aload 0 /* patternString */
            bipush 47
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 4 /* arr */
        start local 4 // java.lang.String[] arr
         1: .line 2227
            aconst_null
            astore 5 /* moduleName */
        start local 5 // java.lang.String moduleName
         2: .line 2228
            aload 4 /* arr */
            arraylength
            iconst_2
            if_icmpne 5
         3: .line 2229
            aload 4 /* arr */
            iconst_0
            aaload
            astore 5 /* moduleName */
         4: .line 2230
            aload 4 /* arr */
            iconst_1
            aaload
            astore 0 /* patternString */
         5: .line 2232
      StackMap locals: java.lang.String[] java.lang.String
      StackMap stack:
            aload 5 /* moduleName */
            ifnull 6
            aload 5 /* moduleName */
            invokevirtual java.lang.String.toCharArray:()[C
            goto 7
      StackMap locals:
      StackMap stack:
         6: aconst_null
      StackMap locals:
      StackMap stack: char[]
         7: astore 6 /* patModName */
        start local 6 // char[] patModName
         8: .line 2235
            new org.eclipse.jdt.internal.compiler.parser.Scanner
            dup
            iconst_0
            iconst_1
            iconst_0
            ldc 3342336
            aconst_null
            aconst_null
            iconst_1
            invokespecial org.eclipse.jdt.internal.compiler.parser.Scanner.<init>:(ZZZJ[[C[[CZ)V
            astore 7 /* scanner */
        start local 7 // org.eclipse.jdt.internal.compiler.parser.Scanner scanner
         9: .line 2236
            aload 7 /* scanner */
            aload 0 /* patternString */
            invokevirtual java.lang.String.toCharArray:()[C
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.setSource:([C)V
        10: .line 2237
            aconst_null
            astore 8 /* type */
        start local 8 // java.lang.String type
        11: .line 2240
            aload 7 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getNextToken:()I
            istore 9 /* token */
        start local 9 // int token
        12: .line 2241
            goto 15
        end local 9 // int token
      StackMap locals: java.lang.String int int int java.lang.String[] java.lang.String char[] org.eclipse.jdt.internal.compiler.parser.Scanner java.lang.String
      StackMap stack: org.eclipse.jdt.core.compiler.InvalidInputException
        13: pop
        14: .line 2242
            aconst_null
            areturn
        start local 9 // int token
        15: .line 2244
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 10 /* argCount */
        start local 10 // int argCount
        16: .line 2245
            goto 35
        17: .line 2246
      StackMap locals: int
      StackMap stack:
            iload 10 /* argCount */
            ifne 25
        18: .line 2247
            iload 9 /* token */
            lookupswitch { // 2
                   11: 20
                 1000: 19
              default: 21
          }
        19: .line 2249
      StackMap locals:
      StackMap stack:
            goto 31
        20: .line 2251
      StackMap locals:
      StackMap stack:
            iinc 10 /* argCount */ 1
        21: .line 2254
      StackMap locals:
      StackMap stack:
            aload 8 /* type */
            ifnonnull 23
        22: .line 2255
            aload 7 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            astore 8 /* type */
            goto 31
        23: .line 2257
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 8 /* type */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 8 /* type */
        24: .line 2259
            goto 31
        25: .line 2260
      StackMap locals:
      StackMap stack:
            iload 9 /* token */
            tableswitch { // 11 - 16
                   11: 28
                   12: 29
                   13: 29
                   14: 26
                   15: 26
                   16: 26
              default: 29
          }
        26: .line 2264
      StackMap locals:
      StackMap stack:
            iinc 10 /* argCount */ -1
        27: .line 2265
            goto 29
        28: .line 2267
      StackMap locals:
      StackMap stack:
            iinc 10 /* argCount */ 1
        29: .line 2270
      StackMap locals:
      StackMap stack:
            aload 8 /* type */
            ifnonnull 30
            aconst_null
            areturn
        30: .line 2271
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 8 /* type */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getCurrentTokenString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 8 /* type */
        31: .line 2274
      StackMap locals:
      StackMap stack:
            aload 7 /* scanner */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Scanner.getNextToken:()I
            istore 9 /* token */
        32: .line 2275
            goto 35
      StackMap locals:
      StackMap stack: org.eclipse.jdt.core.compiler.InvalidInputException
        33: pop
        34: .line 2276
            aconst_null
            areturn
        35: .line 2245
      StackMap locals:
      StackMap stack:
            iload 9 /* token */
            bipush 62
            if_icmpne 17
        36: .line 2279
            aload 8 /* type */
            ifnonnull 37
            aconst_null
            areturn
        37: .line 2280
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 11 /* typeSignature */
        start local 11 // java.lang.String typeSignature
        38: .line 2281
            aconst_null
            astore 12 /* qualificationChars */
        start local 12 // char[] qualificationChars
        39: aconst_null
            astore 13 /* typeChars */
        start local 13 // char[] typeChars
        40: .line 2284
            aconst_null
            astore 14 /* typePart */
        start local 14 // char[] typePart
        41: .line 2286
            aload 8 /* type */
            iconst_0
            invokestatic org.eclipse.jdt.core.Signature.createTypeSignature:(Ljava/lang/String;Z)Ljava/lang/String;
            astore 11 /* typeSignature */
        42: .line 2287
            aload 11 /* typeSignature */
            bipush 60
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 45
        43: .line 2288
            aload 8 /* type */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 14 /* typePart */
        44: .line 2289
            goto 49
        45: .line 2290
      StackMap locals: java.lang.String int int int java.lang.String[] java.lang.String char[] org.eclipse.jdt.internal.compiler.parser.Scanner java.lang.String int int java.lang.String char[] char[] char[]
      StackMap stack:
            aload 11 /* typeSignature */
            invokevirtual java.lang.String.toCharArray:()[C
            invokestatic org.eclipse.jdt.core.Signature.getTypeErasure:([C)[C
            invokestatic org.eclipse.jdt.core.Signature.toCharArray:([C)[C
            astore 14 /* typePart */
        46: .line 2292
            goto 49
        47: .line 2293
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
            pop
        48: .line 2295
            aconst_null
            areturn
        49: .line 2299
      StackMap locals:
      StackMap stack:
            bipush 46
            aload 14 /* typePart */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.lastIndexOf:(C[C)I
            istore 15 /* lastDotPosition */
        start local 15 // int lastDotPosition
        50: .line 2300
            iload 15 /* lastDotPosition */
            iflt 56
        51: .line 2301
            aload 14 /* typePart */
            iconst_0
            iload 15 /* lastDotPosition */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 12 /* qualificationChars */
        52: .line 2302
            aload 12 /* qualificationChars */
            arraylength
            iconst_1
            if_icmpne 54
            aload 12 /* qualificationChars */
            iconst_0
            caload
            bipush 42
            if_icmpne 54
        53: .line 2303
            aconst_null
            astore 12 /* qualificationChars */
        54: .line 2304
      StackMap locals: int
      StackMap stack:
            aload 14 /* typePart */
            iload 15 /* lastDotPosition */
            iconst_1
            iadd
            aload 14 /* typePart */
            arraylength
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 13 /* typeChars */
        55: .line 2305
            goto 57
        56: .line 2306
      StackMap locals:
      StackMap stack:
            aload 14 /* typePart */
            astore 13 /* typeChars */
        57: .line 2308
      StackMap locals:
      StackMap stack:
            aload 13 /* typeChars */
            arraylength
            iconst_1
            if_icmpne 59
            aload 13 /* typeChars */
            iconst_0
            caload
            bipush 42
            if_icmpne 59
        58: .line 2309
            aconst_null
            astore 13 /* typeChars */
        59: .line 2311
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 16 /* modGraph */
        start local 16 // boolean modGraph
        60: .line 2312
            iload 1 /* limitTo */
            tableswitch { // 0 - 6
                    0: 62
                    1: 66
                    2: 65
                    3: 67
                    4: 71
                    5: 71
                    6: 61
              default: 71
          }
        61: .line 2314
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 16 /* modGraph */
        62: .line 2317
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern
            dup
            aload 6 /* patModName */
            aload 12 /* qualificationChars */
            aload 13 /* typeChars */
            iload 3 /* indexSuffix */
            iload 2 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern.<init>:([C[C[CCI)V
            astore 17 /* typeDeclarationPattern */
        start local 17 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern typeDeclarationPattern
        63: .line 2318
            aload 17 /* typeDeclarationPattern */
            iload 16 /* modGraph */
            putfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern.moduleGraph:Z
        64: .line 2319
            aload 17 /* typeDeclarationPattern */
            areturn
        end local 17 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern typeDeclarationPattern
        65: .line 2321
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern
            dup
            aload 12 /* qualificationChars */
            aload 13 /* typeChars */
            aload 11 /* typeSignature */
            iload 3 /* indexSuffix */
            iload 2 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern.<init>:([C[CLjava/lang/String;CI)V
            areturn
        66: .line 2323
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.SuperTypeReferencePattern
            dup
            aload 12 /* qualificationChars */
            aload 13 /* typeChars */
            iconst_1
            iload 3 /* indexSuffix */
            iload 2 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.SuperTypeReferencePattern.<init>:([C[CICI)V
            areturn
        67: .line 2325
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.OrPattern
            dup
        68: .line 2326
            new org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern
            dup
            aload 6 /* patModName */
            aload 12 /* qualificationChars */
            aload 13 /* typeChars */
            iload 3 /* indexSuffix */
            iload 2 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern.<init>:([C[C[CCI)V
        69: .line 2327
            new org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern
            dup
            aload 12 /* qualificationChars */
            aload 13 /* typeChars */
            aload 11 /* typeSignature */
            iload 3 /* indexSuffix */
            iload 2 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern.<init>:([C[CLjava/lang/String;CI)V
        70: .line 2325
            invokespecial org.eclipse.jdt.internal.core.search.matching.OrPattern.<init>:(Lorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/core/search/SearchPattern;)V
            areturn
        71: .line 2329
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern
            dup
            aload 12 /* qualificationChars */
            aload 13 /* typeChars */
            aload 11 /* typeSignature */
            iload 1 /* limitTo */
            iload 3 /* indexSuffix */
            iload 2 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.TypeReferencePattern.<init>:([C[CLjava/lang/String;ICI)V
            areturn
        end local 16 // boolean modGraph
        end local 15 // int lastDotPosition
        end local 14 // char[] typePart
        end local 13 // char[] typeChars
        end local 12 // char[] qualificationChars
        end local 11 // java.lang.String typeSignature
        end local 10 // int argCount
        end local 9 // int token
        end local 8 // java.lang.String type
        end local 7 // org.eclipse.jdt.internal.compiler.parser.Scanner scanner
        end local 6 // char[] patModName
        end local 5 // java.lang.String moduleName
        end local 4 // java.lang.String[] arr
        end local 3 // char indexSuffix
        end local 2 // int matchRule
        end local 1 // int limitTo
        end local 0 // java.lang.String patternString
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   72     0           patternString  Ljava/lang/String;
            0   72     1                 limitTo  I
            0   72     2               matchRule  I
            0   72     3             indexSuffix  C
            1   72     4                     arr  [Ljava/lang/String;
            2   72     5              moduleName  Ljava/lang/String;
            8   72     6              patModName  [C
            9   72     7                 scanner  Lorg/eclipse/jdt/internal/compiler/parser/Scanner;
           11   72     8                    type  Ljava/lang/String;
           12   13     9                   token  I
           15   72     9                   token  I
           16   72    10                argCount  I
           38   72    11           typeSignature  Ljava/lang/String;
           39   72    12      qualificationChars  [C
           40   72    13               typeChars  [C
           41   72    14                typePart  [C
           50   72    15         lastDotPosition  I
           60   72    16                modGraph  Z
           63   65    17  typeDeclarationPattern  Lorg/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern;
      Exception table:
        from    to  target  type
          11    12      13  Class org.eclipse.jdt.core.compiler.InvalidInputException
          31    32      33  Class org.eclipse.jdt.core.compiler.InvalidInputException
          41    46      47  Class java.lang.IllegalArgumentException
    MethodParameters:
               Name  Flags
      patternString  
      limitTo        
      matchRule      
      indexSuffix    

  private static char[][] enclosingTypeNames(org.eclipse.jdt.core.IType);
    descriptor: (Lorg/eclipse/jdt/core/IType;)[[C
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.core.IType type
         0: .line 2336
            aload 0 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getParent:()Lorg/eclipse/jdt/core/IJavaElement;
            astore 1 /* parent */
        start local 1 // org.eclipse.jdt.core.IJavaElement parent
         1: .line 2337
            aload 1 /* parent */
            invokeinterface org.eclipse.jdt.core.IJavaElement.getElementType:()I
            tableswitch { // 5 - 10
                    5: 9
                    6: 2
                    7: 14
                    8: 10
                    9: 10
                   10: 10
              default: 17
          }
         2: .line 2339
      StackMap locals: org.eclipse.jdt.core.IJavaElement
      StackMap stack:
            aload 1 /* parent */
            instanceof org.eclipse.jdt.core.IModularClassFile
            ifeq 4
         3: .line 2340
            aconst_null
            areturn
         4: .line 2343
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getDeclaringType:()Lorg/eclipse/jdt/core/IType;
            astore 2 /* declaringType */
        start local 2 // org.eclipse.jdt.core.IType declaringType
         5: .line 2344
            aload 2 /* declaringType */
            ifnonnull 6
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR_CHAR:[[C
            areturn
         6: .line 2346
      StackMap locals: org.eclipse.jdt.core.IType
      StackMap stack:
            aload 2 /* declaringType */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.enclosingTypeNames:(Lorg/eclipse/jdt/core/IType;)[[C
         7: .line 2347
            aload 2 /* declaringType */
            invokeinterface org.eclipse.jdt.core.IType.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
         8: .line 2345
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.arrayConcat:([[C[C)[[C
            areturn
        end local 2 // org.eclipse.jdt.core.IType declaringType
         9: .line 2349
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR_CHAR:[[C
            areturn
        10: .line 2353
      StackMap locals:
      StackMap stack:
            aload 1 /* parent */
            checkcast org.eclipse.jdt.core.IMember
            invokeinterface org.eclipse.jdt.core.IMember.getDeclaringType:()Lorg/eclipse/jdt/core/IType;
            astore 3 /* declaringClass */
        start local 3 // org.eclipse.jdt.core.IType declaringClass
        11: .line 2355
            aload 3 /* declaringClass */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.enclosingTypeNames:(Lorg/eclipse/jdt/core/IType;)[[C
        12: .line 2356
            iconst_2
            anewarray char[]
            dup
            iconst_0
            aload 3 /* declaringClass */
            invokeinterface org.eclipse.jdt.core.IType.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            aastore
            dup
            iconst_1
            getstatic org.eclipse.jdt.internal.core.search.indexing.IIndexConstants.ONE_STAR:[C
            aastore
        13: .line 2354
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.arrayConcat:([[C[[C)[[C
            areturn
        end local 3 // org.eclipse.jdt.core.IType declaringClass
        14: .line 2359
      StackMap locals:
      StackMap stack:
            aload 1 /* parent */
            checkcast org.eclipse.jdt.core.IType
            invokestatic org.eclipse.jdt.core.search.SearchPattern.enclosingTypeNames:(Lorg/eclipse/jdt/core/IType;)[[C
        15: .line 2360
            aload 1 /* parent */
            invokeinterface org.eclipse.jdt.core.IJavaElement.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
        16: .line 2358
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.arrayConcat:([[C[C)[[C
            areturn
        17: .line 2362
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.eclipse.jdt.core.IJavaElement parent
        end local 0 // org.eclipse.jdt.core.IType type
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   18     0            type  Lorg/eclipse/jdt/core/IType;
            1   18     1          parent  Lorg/eclipse/jdt/core/IJavaElement;
            5    9     2   declaringType  Lorg/eclipse/jdt/core/IType;
           11   14     3  declaringClass  Lorg/eclipse/jdt/core/IType;
    MethodParameters:
      Name  Flags
      type  

  public void decodeIndexKey(char[]);
    descriptor: ([C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
        start local 1 // char[] key
         0: .line 2378
            return
        end local 1 // char[] key
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/core/search/SearchPattern;
            0    1     1   key  [C
    MethodParameters:
      Name  Flags
      key   

  public void findIndexMatches(org.eclipse.jdt.internal.core.index.Index, org.eclipse.jdt.internal.core.search.IndexQueryRequestor, org.eclipse.jdt.core.search.SearchParticipant, org.eclipse.jdt.core.search.IJavaSearchScope, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: (Lorg/eclipse/jdt/internal/core/index/Index;Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=18, args_size=6
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
        start local 1 // org.eclipse.jdt.internal.core.index.Index index
        start local 2 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor requestor
        start local 3 // org.eclipse.jdt.core.search.SearchParticipant participant
        start local 4 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        start local 5 // org.eclipse.core.runtime.IProgressMonitor monitor
         0: .line 2386
            aload 5 /* monitor */
            ifnull 1
            aload 5 /* monitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.isCanceled:()Z
            ifeq 1
            new org.eclipse.core.runtime.OperationCanceledException
            dup
            invokespecial org.eclipse.core.runtime.OperationCanceledException.<init>:()V
            athrow
         1: .line 2388
      StackMap locals:
      StackMap stack:
            aload 1 /* index */
            invokevirtual org.eclipse.jdt.internal.core.index.Index.startQuery:()V
         2: .line 2389
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.core.search.SearchPattern.currentPattern:()Lorg/eclipse/jdt/core/search/SearchPattern;
            astore 6 /* pattern */
        start local 6 // org.eclipse.jdt.core.search.SearchPattern pattern
         3: .line 2390
            aload 6 /* pattern */
            aload 1 /* index */
            invokevirtual org.eclipse.jdt.core.search.SearchPattern.queryIn:(Lorg/eclipse/jdt/internal/core/index/Index;)[Lorg/eclipse/jdt/internal/core/index/EntryResult;
            astore 7 /* entries */
        start local 7 // org.eclipse.jdt.internal.core.index.EntryResult[] entries
         4: .line 2391
            aload 7 /* entries */
            ifnonnull 7
         5: .line 2409
            aload 1 /* index */
            invokevirtual org.eclipse.jdt.internal.core.index.Index.stopQuery:()V
         6: .line 2391
            return
         7: .line 2393
      StackMap locals: org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.internal.core.index.EntryResult[]
      StackMap stack:
            aload 6 /* pattern */
            invokevirtual org.eclipse.jdt.core.search.SearchPattern.getBlankPattern:()Lorg/eclipse/jdt/core/search/SearchPattern;
            astore 8 /* decodedResult */
        start local 8 // org.eclipse.jdt.core.search.SearchPattern decodedResult
         8: .line 2394
            aload 1 /* index */
            getfield org.eclipse.jdt.internal.core.index.Index.containerPath:Ljava/lang/String;
            astore 9 /* containerPath */
        start local 9 // java.lang.String containerPath
         9: .line 2395
            aload 1 /* index */
            getfield org.eclipse.jdt.internal.core.index.Index.separator:C
            istore 10 /* separator */
        start local 10 // char separator
        10: .line 2396
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        11: aload 7 /* entries */
            arraylength
            istore 12 /* l */
        start local 12 // int l
        12: goto 25
        13: .line 2397
      StackMap locals: org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.internal.core.index.Index org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.jdt.core.search.SearchParticipant org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.internal.core.index.EntryResult[] org.eclipse.jdt.core.search.SearchPattern java.lang.String int int int
      StackMap stack:
            aload 5 /* monitor */
            ifnull 14
            aload 5 /* monitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.isCanceled:()Z
            ifeq 14
            new org.eclipse.core.runtime.OperationCanceledException
            dup
            invokespecial org.eclipse.core.runtime.OperationCanceledException.<init>:()V
            athrow
        14: .line 2399
      StackMap locals:
      StackMap stack:
            aload 7 /* entries */
            iload 11 /* i */
            aaload
            astore 13 /* entry */
        start local 13 // org.eclipse.jdt.internal.core.index.EntryResult entry
        15: .line 2400
            aload 8 /* decodedResult */
            aload 13 /* entry */
            invokevirtual org.eclipse.jdt.internal.core.index.EntryResult.getWord:()[C
            invokevirtual org.eclipse.jdt.core.search.SearchPattern.decodeIndexKey:([C)V
        16: .line 2401
            aload 6 /* pattern */
            aload 8 /* decodedResult */
            invokevirtual org.eclipse.jdt.core.search.SearchPattern.matchesDecodedKey:(Lorg/eclipse/jdt/core/search/SearchPattern;)Z
            ifeq 24
        17: .line 2403
            aload 13 /* entry */
            aload 1 /* index */
            invokevirtual org.eclipse.jdt.internal.core.index.EntryResult.getDocumentNames:(Lorg/eclipse/jdt/internal/core/index/Index;)[Ljava/lang/String;
            astore 14 /* names */
        start local 14 // java.lang.String[] names
        18: .line 2404
            iconst_0
            istore 15 /* j */
        start local 15 // int j
        19: aload 14 /* names */
            arraylength
            istore 16 /* n */
        start local 16 // int n
        20: goto 23
        21: .line 2405
      StackMap locals: org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.internal.core.index.Index org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.jdt.core.search.SearchParticipant org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.internal.core.index.EntryResult[] org.eclipse.jdt.core.search.SearchPattern java.lang.String int int int org.eclipse.jdt.internal.core.index.EntryResult java.lang.String[] int int
      StackMap stack:
            aload 0 /* this */
            aload 14 /* names */
            iload 15 /* j */
            aaload
            aload 9 /* containerPath */
            iload 10 /* separator */
            aload 8 /* decodedResult */
            aload 2 /* requestor */
            aload 3 /* participant */
            aload 4 /* scope */
            aload 5 /* monitor */
            invokevirtual org.eclipse.jdt.core.search.SearchPattern.acceptMatch:(Ljava/lang/String;Ljava/lang/String;CLorg/eclipse/jdt/core/search/SearchPattern;Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;Lorg/eclipse/jdt/core/search/SearchParticipant;Lorg/eclipse/jdt/core/search/IJavaSearchScope;Lorg/eclipse/core/runtime/IProgressMonitor;)V
        22: .line 2404
            iinc 15 /* j */ 1
      StackMap locals:
      StackMap stack:
        23: iload 15 /* j */
            iload 16 /* n */
            if_icmplt 21
        end local 16 // int n
        end local 15 // int j
        end local 14 // java.lang.String[] names
        end local 13 // org.eclipse.jdt.internal.core.index.EntryResult entry
        24: .line 2396
      StackMap locals: org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.internal.core.index.Index org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.jdt.core.search.SearchParticipant org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.internal.core.index.EntryResult[] org.eclipse.jdt.core.search.SearchPattern java.lang.String int int int
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 11 /* i */
            iload 12 /* l */
            if_icmplt 13
        end local 12 // int l
        end local 11 // int i
        end local 10 // char separator
        end local 9 // java.lang.String containerPath
        end local 8 // org.eclipse.jdt.core.search.SearchPattern decodedResult
        end local 7 // org.eclipse.jdt.internal.core.index.EntryResult[] entries
        end local 6 // org.eclipse.jdt.core.search.SearchPattern pattern
        26: .line 2408
            goto 30
      StackMap locals: org.eclipse.jdt.core.search.SearchPattern org.eclipse.jdt.internal.core.index.Index org.eclipse.jdt.internal.core.search.IndexQueryRequestor org.eclipse.jdt.core.search.SearchParticipant org.eclipse.jdt.core.search.IJavaSearchScope org.eclipse.core.runtime.IProgressMonitor
      StackMap stack: java.lang.Throwable
        27: astore 17
        28: .line 2409
            aload 1 /* index */
            invokevirtual org.eclipse.jdt.internal.core.index.Index.stopQuery:()V
        29: .line 2410
            aload 17
            athrow
        30: .line 2409
      StackMap locals:
      StackMap stack:
            aload 1 /* index */
            invokevirtual org.eclipse.jdt.internal.core.index.Index.stopQuery:()V
        31: .line 2411
            return
        end local 5 // org.eclipse.core.runtime.IProgressMonitor monitor
        end local 4 // org.eclipse.jdt.core.search.IJavaSearchScope scope
        end local 3 // org.eclipse.jdt.core.search.SearchParticipant participant
        end local 2 // org.eclipse.jdt.internal.core.search.IndexQueryRequestor requestor
        end local 1 // org.eclipse.jdt.internal.core.index.Index index
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   32     0           this  Lorg/eclipse/jdt/core/search/SearchPattern;
            0   32     1          index  Lorg/eclipse/jdt/internal/core/index/Index;
            0   32     2      requestor  Lorg/eclipse/jdt/internal/core/search/IndexQueryRequestor;
            0   32     3    participant  Lorg/eclipse/jdt/core/search/SearchParticipant;
            0   32     4          scope  Lorg/eclipse/jdt/core/search/IJavaSearchScope;
            0   32     5        monitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            3   26     6        pattern  Lorg/eclipse/jdt/core/search/SearchPattern;
            4   26     7        entries  [Lorg/eclipse/jdt/internal/core/index/EntryResult;
            8   26     8  decodedResult  Lorg/eclipse/jdt/core/search/SearchPattern;
            9   26     9  containerPath  Ljava/lang/String;
           10   26    10      separator  C
           11   26    11              i  I
           12   26    12              l  I
           15   24    13          entry  Lorg/eclipse/jdt/internal/core/index/EntryResult;
           18   24    14          names  [Ljava/lang/String;
           19   24    15              j  I
           20   24    16              n  I
      Exception table:
        from    to  target  type
           1     5      27  any
           7    27      27  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      index        
      requestor    
      participant  
      scope        
      monitor      

  public abstract org.eclipse.jdt.core.search.SearchPattern getBlankPattern();
    descriptor: ()Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public char[] getIndexKey();
    descriptor: ()[C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
         0: .line 2436
            aconst_null
            areturn
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/core/search/SearchPattern;

  public char[][] getIndexCategories();
    descriptor: ()[[C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
         0: .line 2451
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR_CHAR:[[C
            areturn
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/core/search/SearchPattern;

  public final int getMatchRule();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
         0: .line 2462
            aload 0 /* this */
            getfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
            ireturn
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/core/search/SearchPattern;

  public boolean isPolymorphicSearch();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
         0: .line 2469
            iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/core/search/SearchPattern;

  public boolean matchesDecodedKey(org.eclipse.jdt.core.search.SearchPattern);
    descriptor: (Lorg/eclipse/jdt/core/search/SearchPattern;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
        start local 1 // org.eclipse.jdt.core.search.SearchPattern decodedPattern
         0: .line 2482
            iconst_1
            ireturn
        end local 1 // org.eclipse.jdt.core.search.SearchPattern decodedPattern
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/eclipse/jdt/core/search/SearchPattern;
            0    1     1  decodedPattern  Lorg/eclipse/jdt/core/search/SearchPattern;
    MethodParameters:
                Name  Flags
      decodedPattern  

  public boolean matchesName(char[], char[]);
    descriptor: ([C[C)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
        start local 1 // char[] pattern
        start local 2 // char[] name
         0: .line 2497
            aload 1 /* pattern */
            ifnonnull 1
            iconst_1
            ireturn
         1: .line 2498
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            ifnull 35
         2: .line 2499
            aload 0 /* this */
            getfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
            bipush 8
            iand
            ifeq 3
            iconst_1
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 3 /* isCaseSensitive */
        start local 3 // boolean isCaseSensitive
         5: .line 2500
            aload 0 /* this */
            getfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
            sipush 391
            iand
            istore 4 /* matchMode */
        start local 4 // int matchMode
         6: .line 2501
            aload 1 /* pattern */
            arraylength
            ifne 7
            iconst_1
            goto 8
      StackMap locals: int int
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 5 /* emptyPattern */
        start local 5 // boolean emptyPattern
         9: .line 2502
            iload 5 /* emptyPattern */
            ifeq 10
            aload 0 /* this */
            getfield org.eclipse.jdt.core.search.SearchPattern.matchRule:I
            iconst_1
            iand
            ifeq 10
            iconst_1
            ireturn
        10: .line 2503
      StackMap locals: int
      StackMap stack:
            aload 1 /* pattern */
            arraylength
            aload 2 /* name */
            arraylength
            if_icmpne 11
            iconst_1
            goto 12
      StackMap locals:
      StackMap stack:
        11: iconst_0
      StackMap locals:
      StackMap stack: int
        12: istore 6 /* sameLength */
        start local 6 // boolean sameLength
        13: .line 2504
            aload 2 /* name */
            arraylength
            aload 1 /* pattern */
            arraylength
            if_icmplt 14
            iconst_1
            goto 15
      StackMap locals: int
      StackMap stack:
        14: iconst_0
      StackMap locals:
      StackMap stack: int
        15: istore 7 /* canBePrefix */
        start local 7 // boolean canBePrefix
        16: .line 2505
            iload 3 /* isCaseSensitive */
            ifeq 18
            iload 5 /* emptyPattern */
            ifne 18
            aload 2 /* name */
            arraylength
            ifle 17
            aload 1 /* pattern */
            iconst_0
            caload
            aload 2 /* name */
            iconst_0
            caload
            if_icmpeq 18
      StackMap locals: int
      StackMap stack:
        17: iconst_0
            goto 19
      StackMap locals:
      StackMap stack:
        18: iconst_1
      StackMap locals:
      StackMap stack: int
        19: istore 8 /* matchFirstChar */
        start local 8 // boolean matchFirstChar
        20: .line 2506
            iload 4 /* matchMode */
            lookupswitch { // 6
                    0: 21
                    1: 23
                    2: 25
                    4: 34
                  128: 28
                  256: 32
              default: 35
          }
        21: .line 2508
      StackMap locals: int
      StackMap stack:
            iload 6 /* sameLength */
            ifeq 35
            iload 8 /* matchFirstChar */
            ifeq 35
        22: .line 2509
            aload 1 /* pattern */
            aload 2 /* name */
            iload 3 /* isCaseSensitive */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[CZ)Z
            ireturn
        23: .line 2514
      StackMap locals:
      StackMap stack:
            iload 7 /* canBePrefix */
            ifeq 35
            iload 8 /* matchFirstChar */
            ifeq 35
        24: .line 2515
            aload 1 /* pattern */
            aload 2 /* name */
            iload 3 /* isCaseSensitive */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.prefixEquals:([C[CZ)Z
            ireturn
        25: .line 2520
      StackMap locals:
      StackMap stack:
            iload 3 /* isCaseSensitive */
            ifne 27
        26: .line 2521
            aload 1 /* pattern */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.toLowerCase:([C)[C
            astore 1 /* pattern */
        27: .line 2522
      StackMap locals:
      StackMap stack:
            aload 1 /* pattern */
            aload 2 /* name */
            iload 3 /* isCaseSensitive */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.match:([C[CZ)Z
            ireturn
        28: .line 2525
      StackMap locals:
      StackMap stack:
            iload 8 /* matchFirstChar */
            ifeq 30
            aload 1 /* pattern */
            aload 2 /* name */
            iconst_0
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.camelCaseMatch:([C[CZ)Z
            ifeq 30
        29: .line 2526
            iconst_1
            ireturn
        30: .line 2529
      StackMap locals:
      StackMap stack:
            iload 3 /* isCaseSensitive */
            ifne 35
            iload 8 /* matchFirstChar */
            ifeq 35
            aload 1 /* pattern */
            aload 2 /* name */
            iconst_0
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.prefixEquals:([C[CZ)Z
            ifeq 35
        31: .line 2530
            iconst_1
            ireturn
        32: .line 2535
      StackMap locals:
      StackMap stack:
            iload 8 /* matchFirstChar */
            ifeq 33
            aload 1 /* pattern */
            aload 2 /* name */
            iconst_1
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.camelCaseMatch:([C[CZ)Z
            ifeq 33
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        33: iconst_0
            ireturn
        34: .line 2538
      StackMap locals:
      StackMap stack:
            new java.lang.String
            dup
            aload 1 /* pattern */
            invokespecial java.lang.String.<init>:([C)V
            new java.lang.String
            dup
            aload 2 /* name */
            invokespecial java.lang.String.<init>:([C)V
            invokestatic java.util.regex.Pattern.matches:(Ljava/lang/String;Ljava/lang/CharSequence;)Z
            ireturn
        end local 8 // boolean matchFirstChar
        end local 7 // boolean canBePrefix
        end local 6 // boolean sameLength
        end local 5 // boolean emptyPattern
        end local 4 // int matchMode
        end local 3 // boolean isCaseSensitive
        35: .line 2541
      StackMap locals: org.eclipse.jdt.core.search.SearchPattern char[] char[]
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // char[] name
        end local 1 // char[] pattern
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   36     0             this  Lorg/eclipse/jdt/core/search/SearchPattern;
            0   36     1          pattern  [C
            0   36     2             name  [C
            5   35     3  isCaseSensitive  Z
            6   35     4        matchMode  I
            9   35     5     emptyPattern  Z
           13   35     6       sameLength  Z
           16   35     7      canBePrefix  Z
           20   35     8   matchFirstChar  Z
    MethodParameters:
         Name  Flags
      pattern  
      name     

  public static int validateMatchRule(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.lang.String stringPattern
        start local 1 // int matchRule
         0: .line 2596
            iload 1 /* matchRule */
            iconst_4
            iand
            ifeq 2
         1: .line 2598
            iconst_m1
            ireturn
         2: .line 2602
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            ifnull 9
         3: .line 2603
            aload 0 /* stringPattern */
            bipush 42
            invokevirtual java.lang.String.indexOf:(I)I
            istore 2 /* starIndex */
        start local 2 // int starIndex
         4: .line 2604
            aload 0 /* stringPattern */
            bipush 63
            invokevirtual java.lang.String.indexOf:(I)I
            istore 3 /* questionIndex */
        start local 3 // int questionIndex
         5: .line 2605
            iload 2 /* starIndex */
            ifge 8
            iload 3 /* questionIndex */
            ifge 8
         6: .line 2607
            iload 1 /* matchRule */
            bipush -3
            iand
            istore 1 /* matchRule */
         7: .line 2608
            goto 9
         8: .line 2610
      StackMap locals: int int
      StackMap stack:
            iload 1 /* matchRule */
            iconst_2
            ior
            istore 1 /* matchRule */
        end local 3 // int questionIndex
        end local 2 // int starIndex
         9: .line 2613
      StackMap locals:
      StackMap stack:
            iload 1 /* matchRule */
            iconst_2
            iand
            ifeq 14
        10: .line 2615
            iload 1 /* matchRule */
            sipush -129
            iand
            istore 1 /* matchRule */
        11: .line 2616
            iload 1 /* matchRule */
            sipush -257
            iand
            istore 1 /* matchRule */
        12: .line 2617
            iload 1 /* matchRule */
            bipush -2
            iand
            istore 1 /* matchRule */
        13: .line 2618
            iload 1 /* matchRule */
            ireturn
        14: .line 2622
      StackMap locals:
      StackMap stack:
            iload 1 /* matchRule */
            sipush 128
            iand
            ifeq 22
        15: .line 2624
            iload 1 /* matchRule */
            sipush -257
            iand
            istore 1 /* matchRule */
        16: .line 2625
            iload 1 /* matchRule */
            bipush -2
            iand
            istore 1 /* matchRule */
        17: .line 2627
            aload 0 /* stringPattern */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.validateCamelCasePattern:(Ljava/lang/String;)Z
            istore 2 /* validCamelCase */
        start local 2 // boolean validCamelCase
        18: .line 2628
            iload 2 /* validCamelCase */
            ifne 21
        19: .line 2629
            iload 1 /* matchRule */
            sipush -129
            iand
            istore 1 /* matchRule */
        20: .line 2630
            iload 1 /* matchRule */
            iconst_1
            ior
            istore 1 /* matchRule */
        21: .line 2632
      StackMap locals: int
      StackMap stack:
            iload 1 /* matchRule */
            ireturn
        end local 2 // boolean validCamelCase
        22: .line 2636
      StackMap locals:
      StackMap stack:
            iload 1 /* matchRule */
            sipush 256
            iand
            ifeq 28
        23: .line 2638
            iload 1 /* matchRule */
            bipush -2
            iand
            istore 1 /* matchRule */
        24: .line 2640
            aload 0 /* stringPattern */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.validateCamelCasePattern:(Ljava/lang/String;)Z
            istore 2 /* validCamelCase */
        start local 2 // boolean validCamelCase
        25: .line 2641
            iload 2 /* validCamelCase */
            ifne 27
        26: .line 2642
            iload 1 /* matchRule */
            sipush -257
            iand
            istore 1 /* matchRule */
        27: .line 2644
      StackMap locals: int
      StackMap stack:
            iload 1 /* matchRule */
            ireturn
        end local 2 // boolean validCamelCase
        28: .line 2648
      StackMap locals:
      StackMap stack:
            iload 1 /* matchRule */
            ireturn
        end local 1 // int matchRule
        end local 0 // java.lang.String stringPattern
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   29     0   stringPattern  Ljava/lang/String;
            0   29     1       matchRule  I
            4    9     2       starIndex  I
            5    9     3   questionIndex  I
           18   22     2  validCamelCase  Z
           25   28     2  validCamelCase  Z
    MethodParameters:
               Name  Flags
      stringPattern  
      matchRule      

  private static int validateMatchRule(java.lang.String, int, int, int);
    descriptor: (Ljava/lang/String;III)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // java.lang.String stringPattern
        start local 1 // int searchFor
        start local 2 // int limitTo
        start local 3 // int matchRule
         0: .line 2653
            iload 1 /* searchFor */
            bipush 12
            if_icmpne 4
         1: .line 2654
            iload 2 /* limitTo */
            ifne 4
         2: .line 2655
            iload 3 /* matchRule */
            iconst_4
            if_icmpne 4
         3: .line 2656
            iload 3 /* matchRule */
            ireturn
         4: .line 2657
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            iload 3 /* matchRule */
            invokestatic org.eclipse.jdt.core.search.SearchPattern.validateMatchRule:(Ljava/lang/String;I)I
            ireturn
        end local 3 // int matchRule
        end local 2 // int limitTo
        end local 1 // int searchFor
        end local 0 // java.lang.String stringPattern
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0  stringPattern  Ljava/lang/String;
            0    5     1      searchFor  I
            0    5     2        limitTo  I
            0    5     3      matchRule  I
    MethodParameters:
               Name  Flags
      stringPattern  
      searchFor      
      limitTo        
      matchRule      

  private static boolean validateCamelCasePattern(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=7, args_size=1
        start local 0 // java.lang.String stringPattern
         0: .line 2665
            aload 0 /* stringPattern */
            ifnonnull 1
            iconst_1
            ireturn
         1: .line 2667
      StackMap locals:
      StackMap stack:
            aload 0 /* stringPattern */
            invokevirtual java.lang.String.length:()I
            istore 1 /* length */
        start local 1 // int length
         2: .line 2668
            iconst_1
            istore 2 /* validCamelCase */
        start local 2 // boolean validCamelCase
         3: .line 2669
            iconst_0
            istore 3 /* lowerCamelCase */
        start local 3 // boolean lowerCamelCase
         4: .line 2670
            iconst_0
            istore 4 /* uppercase */
        start local 4 // int uppercase
         5: .line 2671
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         6: goto 16
         7: .line 2672
      StackMap locals: java.lang.String int int int int int
      StackMap stack:
            aload 0 /* stringPattern */
            iload 5 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* ch */
        start local 6 // char ch
         8: .line 2673
            iload 5 /* i */
            ifne 9
            iload 6 /* ch */
            invokestatic org.eclipse.jdt.internal.compiler.parser.ScannerHelper.isJavaIdentifierStart:(C)Z
            goto 10
      StackMap locals: int
      StackMap stack:
         9: iload 6 /* ch */
            invokestatic org.eclipse.jdt.internal.compiler.parser.ScannerHelper.isJavaIdentifierPart:(C)Z
      StackMap locals:
      StackMap stack: int
        10: istore 2 /* validCamelCase */
        11: .line 2676
            iload 6 /* ch */
            invokestatic org.eclipse.jdt.internal.compiler.parser.ScannerHelper.isUpperCase:(C)Z
            ifeq 12
            iinc 4 /* uppercase */ 1
        12: .line 2677
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            ifne 15
            iload 4 /* uppercase */
            ifne 13
            iconst_1
            goto 14
      StackMap locals:
      StackMap stack:
        13: iconst_0
      StackMap locals:
      StackMap stack: int
        14: istore 3 /* lowerCamelCase */
        end local 6 // char ch
        15: .line 2671
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 5 /* i */
            iload 1 /* length */
            if_icmpge 17
            iload 2 /* validCamelCase */
            ifne 7
        end local 5 // int i
        17: .line 2679
      StackMap locals:
      StackMap stack:
            iload 2 /* validCamelCase */
            ifeq 23
        18: .line 2680
            iload 3 /* lowerCamelCase */
            ifeq 20
            iload 4 /* uppercase */
            ifle 19
            iconst_1
            goto 22
      StackMap locals:
      StackMap stack:
        19: iconst_0
            goto 22
      StackMap locals:
      StackMap stack:
        20: iload 4 /* uppercase */
            iconst_1
            if_icmple 21
            iconst_1
            goto 22
      StackMap locals:
      StackMap stack:
        21: iconst_0
      StackMap locals:
      StackMap stack: int
        22: istore 2 /* validCamelCase */
        23: .line 2682
      StackMap locals:
      StackMap stack:
            iload 2 /* validCamelCase */
            ireturn
        end local 4 // int uppercase
        end local 3 // boolean lowerCamelCase
        end local 2 // boolean validCamelCase
        end local 1 // int length
        end local 0 // java.lang.String stringPattern
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   24     0   stringPattern  Ljava/lang/String;
            2   24     1          length  I
            3   24     2  validCamelCase  Z
            4   24     3  lowerCamelCase  Z
            5   24     4       uppercase  I
            6   17     5               i  I
            8   15     6              ch  C
    MethodParameters:
               Name  Flags
      stringPattern  

  public org.eclipse.jdt.internal.core.index.EntryResult[] queryIn(org.eclipse.jdt.internal.core.index.Index);
    descriptor: (Lorg/eclipse/jdt/internal/core/index/Index;)[Lorg/eclipse/jdt/internal/core/index/EntryResult;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
        start local 1 // org.eclipse.jdt.internal.core.index.Index index
         0: .line 2690
            aload 1 /* index */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.core.search.SearchPattern.getIndexCategories:()[[C
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.core.search.SearchPattern.getIndexKey:()[C
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.core.search.SearchPattern.getMatchRule:()I
            invokevirtual org.eclipse.jdt.internal.core.index.Index.query:([[C[CI)[Lorg/eclipse/jdt/internal/core/index/EntryResult;
            areturn
        end local 1 // org.eclipse.jdt.internal.core.index.Index index
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/eclipse/jdt/core/search/SearchPattern;
            0    1     1  index  Lorg/eclipse/jdt/internal/core/index/Index;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      index  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.search.SearchPattern this
         0: .line 2698
            ldc "SearchPattern"
            areturn
        end local 0 // org.eclipse.jdt.core.search.SearchPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/core/search/SearchPattern;
}
SourceFile: "SearchPattern.java"