public class org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern extends org.eclipse.jdt.internal.core.search.matching.JavaSearchPattern
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern
  super_class: org.eclipse.jdt.internal.core.search.matching.JavaSearchPattern
{
  public char[][] simpleNames;
    descriptor: [[C
    flags: (0x0001) ACC_PUBLIC

  public char[][] qualifications;
    descriptor: [[C
    flags: (0x0001) ACC_PUBLIC

  public char typeSuffix;
    descriptor: C
    flags: (0x0001) ACC_PUBLIC

  protected static char[][] CATEGORIES;
    descriptor: [[C
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 34
            iconst_1
            anewarray char[]
            dup
            iconst_0
            getstatic org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.TYPE_DECL:[C
            aastore
            putstatic org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.CATEGORIES:[[C
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(char[][], char[][], char, int);
    descriptor: ([[C[[CCI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern this
        start local 1 // char[][] qualifications
        start local 2 // char[][] simpleNames
        start local 3 // char typeSuffix
        start local 4 // int matchRule
         0: .line 42
            aload 0 /* this */
            iload 4 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.<init>:(I)V
         1: .line 44
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.isCaseSensitive:Z
            ifne 2
            aload 1 /* qualifications */
            ifnonnull 4
         2: .line 45
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern char[][] char[][] int int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* qualifications */
            putfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.qualifications:[[C
         3: .line 46
            goto 11
         4: .line 47
      StackMap locals:
      StackMap stack:
            aload 1 /* qualifications */
            arraylength
            istore 5 /* length */
        start local 5 // int length
         5: .line 48
            aload 0 /* this */
            iload 5 /* length */
            anewarray char[]
            putfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.qualifications:[[C
         6: .line 49
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         7: goto 10
         8: .line 50
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.qualifications:[[C
            iload 6 /* i */
            aload 1 /* qualifications */
            iload 6 /* i */
            aaload
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.toLowerCase:([C)[C
            aastore
         9: .line 49
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 6 /* i */
            iload 5 /* length */
            if_icmplt 8
        end local 6 // int i
        end local 5 // int length
        11: .line 53
      StackMap locals:
      StackMap stack:
            aload 2 /* simpleNames */
            ifnull 22
        12: .line 54
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.isCaseSensitive:Z
            ifne 13
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.isCamelCase:Z
            ifeq 15
        13: .line 55
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* simpleNames */
            putfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
        14: .line 56
            goto 22
        15: .line 57
      StackMap locals:
      StackMap stack:
            aload 2 /* simpleNames */
            arraylength
            istore 5 /* length */
        start local 5 // int length
        16: .line 58
            aload 0 /* this */
            iload 5 /* length */
            anewarray char[]
            putfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
        17: .line 59
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        18: goto 21
        19: .line 60
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
            iload 6 /* i */
            aload 2 /* simpleNames */
            iload 6 /* i */
            aaload
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.toLowerCase:([C)[C
            aastore
        20: .line 59
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 6 /* i */
            iload 5 /* length */
            if_icmplt 19
        end local 6 // int i
        end local 5 // int length
        22: .line 63
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* typeSuffix */
            putfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.typeSuffix:C
        23: .line 65
            aload 0 /* this */
            iload 3 /* typeSuffix */
            ifeq 24
            iconst_1
            goto 25
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern
        24: iconst_0
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern char[][] char[][] int int
      StackMap stack: org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern int
        25: putfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.mustResolve:Z
        26: .line 66
            return
        end local 4 // int matchRule
        end local 3 // char typeSuffix
        end local 2 // char[][] simpleNames
        end local 1 // char[][] qualifications
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   27     0            this  Lorg/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern;
            0   27     1  qualifications  [[C
            0   27     2     simpleNames  [[C
            0   27     3      typeSuffix  C
            0   27     4       matchRule  I
            5   11     5          length  I
            7   11     6               i  I
           16   22     5          length  I
           18   22     6               i  I
    MethodParameters:
                Name  Flags
      qualifications  
      simpleNames     
      typeSuffix      
      matchRule       

  void <init>(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern this
        start local 1 // int matchRule
         0: .line 68
            aload 0 /* this */
            bipush 8
            iload 1 /* matchRule */
            invokespecial org.eclipse.jdt.internal.core.search.matching.JavaSearchPattern.<init>:(II)V
         1: .line 69
            return
        end local 1 // int matchRule
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern;
            0    2     1  matchRule  I
    MethodParameters:
           Name  Flags
      matchRule  

  public org.eclipse.jdt.core.search.SearchPattern getBlankPattern();
    descriptor: ()Lorg/eclipse/jdt/core/search/SearchPattern;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern this
         0: .line 72
            new org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern
            dup
            bipush 8
            invokespecial org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern.<init>:(I)V
            areturn
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern;

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

  public boolean matchesDecodedKey(org.eclipse.jdt.core.search.SearchPattern);
    descriptor: (Lorg/eclipse/jdt/core/search/SearchPattern;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern this
        start local 1 // org.eclipse.jdt.core.search.SearchPattern decodedPattern
         0: .line 80
            aload 1 /* decodedPattern */
            checkcast org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern
            astore 2 /* pattern */
        start local 2 // org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern pattern
         1: .line 83
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.typeSuffix:C
            aload 2 /* pattern */
            getfield org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern.typeSuffix:C
            if_icmpeq 4
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.typeSuffix:C
            ifeq 4
         2: .line 84
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.typeSuffix:C
            aload 2 /* pattern */
            getfield org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern.typeSuffix:C
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.matchDifferentTypeSuffixes:(II)Z
            ifne 4
         3: .line 85
            iconst_0
            ireturn
         4: .line 90
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.qualifications:[[C
            ifnull 16
         5: .line 91
            iconst_0
            istore 3 /* count */
        start local 3 // int count
         6: .line 92
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.qualifications:[[C
            arraylength
            istore 4 /* max */
        start local 4 // int max
         7: .line 93
            iload 4 /* max */
            ifne 9
            aload 2 /* pattern */
            getfield org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern.qualification:[C
            arraylength
            ifle 9
         8: .line 94
            iconst_0
            ireturn
         9: .line 96
      StackMap locals: int int
      StackMap stack:
            iload 4 /* max */
            ifle 16
        10: .line 97
            goto 14
        11: .line 98
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.qualifications:[[C
            iload 3 /* count */
            aaload
            aload 2 /* pattern */
            getfield org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern.qualification:[C
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.matchesName:([C[C)Z
            ifeq 13
        12: .line 99
            goto 15
        13: .line 97
      StackMap locals:
      StackMap stack:
            iinc 3 /* count */ 1
      StackMap locals:
      StackMap stack:
        14: iload 3 /* count */
            iload 4 /* max */
            if_icmplt 11
        15: .line 100
      StackMap locals:
      StackMap stack:
            iload 3 /* count */
            iload 4 /* max */
            if_icmpne 16
            iconst_0
            ireturn
        end local 4 // int max
        end local 3 // int count
        16: .line 105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
            ifnonnull 17
            iconst_1
            ireturn
        17: .line 106
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* count */
        start local 3 // int count
        18: .line 107
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
            arraylength
            istore 4 /* max */
        start local 4 // int max
        19: .line 108
            goto 23
        20: .line 109
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
            iload 3 /* count */
            aaload
            aload 2 /* pattern */
            getfield org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern.simpleName:[C
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.matchesName:([C[C)Z
            ifeq 22
        21: .line 110
            goto 24
        22: .line 108
      StackMap locals:
      StackMap stack:
            iinc 3 /* count */ 1
      StackMap locals:
      StackMap stack:
        23: iload 3 /* count */
            iload 4 /* max */
            if_icmplt 20
        24: .line 111
      StackMap locals:
      StackMap stack:
            iload 3 /* count */
            iload 4 /* max */
            if_icmpge 25
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        25: iconst_0
            ireturn
        end local 4 // int max
        end local 3 // int count
        end local 2 // org.eclipse.jdt.internal.core.search.matching.QualifiedTypeDeclarationPattern pattern
        end local 1 // org.eclipse.jdt.core.search.SearchPattern decodedPattern
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   26     0            this  Lorg/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern;
            0   26     1  decodedPattern  Lorg/eclipse/jdt/core/search/SearchPattern;
            1   26     2         pattern  Lorg/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern;
            6   16     3           count  I
            7   16     4             max  I
           18   26     3           count  I
           19   26     4             max  I
    MethodParameters:
                Name  Flags
      decodedPattern  

  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=5, locals=10, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern this
        start local 1 // org.eclipse.jdt.internal.core.index.Index index
         0: .line 115
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
            ifnonnull 2
         1: .line 117
            aload 1 /* index */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.getIndexCategories:()[[C
            aconst_null
            iconst_m1
            invokevirtual org.eclipse.jdt.internal.core.index.Index.query:([[C[CI)[Lorg/eclipse/jdt/internal/core/index/EntryResult;
            areturn
         2: .line 120
      StackMap locals:
      StackMap stack:
            iconst_m1
            istore 2 /* count */
        start local 2 // int count
         3: .line 121
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
            arraylength
            istore 3 /* numOfNames */
        start local 3 // int numOfNames
         4: .line 122
            iload 3 /* numOfNames */
            iconst_1
            if_icmple 5
            iload 3 /* numOfNames */
            anewarray org.eclipse.jdt.internal.core.index.EntryResult[]
            goto 6
      StackMap locals: int int
      StackMap stack:
         5: aconst_null
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.core.index.EntryResult[][]
         6: astore 4 /* allResults */
        start local 4 // org.eclipse.jdt.internal.core.index.EntryResult[][] allResults
         7: .line 123
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: goto 26
         9: .line 124
      StackMap locals: org.eclipse.jdt.internal.core.index.EntryResult[][] int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
            iload 5 /* i */
            aaload
            astore 6 /* key */
        start local 6 // char[] key
        10: .line 125
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.getMatchRule:()I
            istore 7 /* matchRule */
        start local 7 // int matchRule
        11: .line 127
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.getMatchMode:()I
            lookupswitch { // 6
                    0: 13
                    1: 12
                    2: 17
                    4: 20
                  128: 21
                  256: 21
              default: 21
          }
        12: .line 130
      StackMap locals: char[] int
      StackMap stack:
            goto 21
        13: .line 133
      StackMap locals:
      StackMap stack:
            iload 7 /* matchRule */
            iconst_m1
            iand
            istore 7 /* matchRule */
        14: .line 134
            iload 7 /* matchRule */
            iconst_1
            ior
            istore 7 /* matchRule */
        15: .line 135
            aload 6 /* key */
            bipush 47
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.append:([CC)[C
            astore 6 /* key */
        16: .line 136
            goto 21
        17: .line 138
      StackMap locals:
      StackMap stack:
            aload 6 /* key */
            aload 6 /* key */
            arraylength
            iconst_1
            isub
            caload
            bipush 42
            if_icmpeq 21
        18: .line 139
            aload 6 /* key */
            getstatic org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.ONE_STAR:[C
            bipush 47
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concat:([C[CC)[C
            astore 6 /* key */
        19: .line 140
            goto 21
        20: .line 143
      StackMap locals:
      StackMap stack:
            goto 21
        21: .line 150
      StackMap locals:
      StackMap stack:
            aload 1 /* index */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.getIndexCategories:()[[C
            aload 6 /* key */
            iload 7 /* matchRule */
            invokevirtual org.eclipse.jdt.internal.core.index.Index.query:([[C[CI)[Lorg/eclipse/jdt/internal/core/index/EntryResult;
            astore 8 /* entries */
        start local 8 // org.eclipse.jdt.internal.core.index.EntryResult[] entries
        22: .line 151
            aload 8 /* entries */
            ifnull 25
        23: .line 152
            aload 4 /* allResults */
            ifnonnull 24
            aload 8 /* entries */
            areturn
        24: .line 153
      StackMap locals: org.eclipse.jdt.internal.core.index.EntryResult[]
      StackMap stack:
            aload 4 /* allResults */
            iinc 2 /* count */ 1
            iload 2 /* count */
            aload 8 /* entries */
            aastore
        end local 8 // org.eclipse.jdt.internal.core.index.EntryResult[] entries
        end local 7 // int matchRule
        end local 6 // char[] key
        25: .line 123
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 5 /* i */
            iload 3 /* numOfNames */
            if_icmplt 9
        end local 5 // int i
        27: .line 157
            iload 2 /* count */
            iconst_m1
            if_icmpne 28
            aconst_null
            areturn
        28: .line 158
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* total */
        start local 5 // int total
        29: .line 159
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        30: goto 33
        31: .line 160
      StackMap locals: int int
      StackMap stack:
            iload 5 /* total */
            aload 4 /* allResults */
            iload 6 /* i */
            aaload
            arraylength
            iadd
            istore 5 /* total */
        32: .line 159
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        33: iload 6 /* i */
            iload 2 /* count */
            if_icmple 31
        end local 6 // int i
        34: .line 161
            iload 5 /* total */
            anewarray org.eclipse.jdt.internal.core.index.EntryResult
            astore 6 /* allEntries */
        start local 6 // org.eclipse.jdt.internal.core.index.EntryResult[] allEntries
        35: .line 162
            iconst_0
            istore 7 /* next */
        start local 7 // int next
        36: .line 163
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        37: goto 42
        38: .line 164
      StackMap locals: org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern org.eclipse.jdt.internal.core.index.Index int int org.eclipse.jdt.internal.core.index.EntryResult[][] int org.eclipse.jdt.internal.core.index.EntryResult[] int int
      StackMap stack:
            aload 4 /* allResults */
            iload 8 /* i */
            aaload
            astore 9 /* entries */
        start local 9 // org.eclipse.jdt.internal.core.index.EntryResult[] entries
        39: .line 165
            aload 9 /* entries */
            iconst_0
            aload 6 /* allEntries */
            iload 7 /* next */
            aload 9 /* entries */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        40: .line 166
            iload 7 /* next */
            aload 9 /* entries */
            arraylength
            iadd
            istore 7 /* next */
        end local 9 // org.eclipse.jdt.internal.core.index.EntryResult[] entries
        41: .line 163
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        42: iload 8 /* i */
            iload 2 /* count */
            if_icmple 38
        end local 8 // int i
        43: .line 168
            aload 6 /* allEntries */
            areturn
        end local 7 // int next
        end local 6 // org.eclipse.jdt.internal.core.index.EntryResult[] allEntries
        end local 5 // int total
        end local 4 // org.eclipse.jdt.internal.core.index.EntryResult[][] allResults
        end local 3 // int numOfNames
        end local 2 // int count
        end local 1 // org.eclipse.jdt.internal.core.index.Index index
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   44     0        this  Lorg/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern;
            0   44     1       index  Lorg/eclipse/jdt/internal/core/index/Index;
            3   44     2       count  I
            4   44     3  numOfNames  I
            7   44     4  allResults  [[Lorg/eclipse/jdt/internal/core/index/EntryResult;
            8   27     5           i  I
           10   25     6         key  [C
           11   25     7   matchRule  I
           22   25     8     entries  [Lorg/eclipse/jdt/internal/core/index/EntryResult;
           29   44     5       total  I
           30   34     6           i  I
           35   44     6  allEntries  [Lorg/eclipse/jdt/internal/core/index/EntryResult;
           36   44     7        next  I
           37   43     8           i  I
           39   41     9     entries  [Lorg/eclipse/jdt/internal/core/index/EntryResult;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      index  

  protected java.lang.StringBuffer print(java.lang.StringBuffer);
    descriptor: (Ljava/lang/StringBuffer;)Ljava/lang/StringBuffer;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern this
        start local 1 // java.lang.StringBuffer output
         0: .line 172
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.typeSuffix:C
            lookupswitch { // 7
                    9: 5
                   10: 3
                   11: 9
                   65: 13
                   67: 1
                   69: 11
                   73: 7
              default: 15
          }
         1: .line 174
      StackMap locals:
      StackMap stack:
            aload 1 /* output */
            ldc "MultiClassDeclarationPattern: "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         2: .line 175
            goto 16
         3: .line 177
      StackMap locals:
      StackMap stack:
            aload 1 /* output */
            ldc "MultiClassAndInterfaceDeclarationPattern: "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         4: .line 178
            goto 16
         5: .line 180
      StackMap locals:
      StackMap stack:
            aload 1 /* output */
            ldc "MultiClassAndEnumDeclarationPattern: "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 181
            goto 16
         7: .line 183
      StackMap locals:
      StackMap stack:
            aload 1 /* output */
            ldc "MultiInterfaceDeclarationPattern: "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         8: .line 184
            goto 16
         9: .line 186
      StackMap locals:
      StackMap stack:
            aload 1 /* output */
            ldc "MultiInterfaceAndAnnotationDeclarationPattern: "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        10: .line 187
            goto 16
        11: .line 189
      StackMap locals:
      StackMap stack:
            aload 1 /* output */
            ldc "MultiEnumDeclarationPattern: "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        12: .line 190
            goto 16
        13: .line 192
      StackMap locals:
      StackMap stack:
            aload 1 /* output */
            ldc "MultiAnnotationTypeDeclarationPattern: "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        14: .line 193
            goto 16
        15: .line 195
      StackMap locals:
      StackMap stack:
            aload 1 /* output */
            ldc "MultiTypeDeclarationPattern: "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        16: .line 198
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.qualifications:[[C
            ifnull 26
        17: .line 199
            aload 1 /* output */
            ldc "qualifications: <"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        18: .line 200
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        19: goto 24
        20: .line 201
      StackMap locals: int
      StackMap stack:
            aload 1 /* output */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.qualifications:[[C
            iload 2 /* i */
            aaload
            invokevirtual java.lang.StringBuffer.append:([C)Ljava/lang/StringBuffer;
            pop
        21: .line 202
            iload 2 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.qualifications:[[C
            arraylength
            iconst_1
            isub
            if_icmpge 23
        22: .line 203
            aload 1 /* output */
            ldc ", "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        23: .line 200
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 2 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.qualifications:[[C
            arraylength
            if_icmplt 20
        end local 2 // int i
        25: .line 205
            aload 1 /* output */
            ldc "> "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        26: .line 207
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
            ifnull 36
        27: .line 208
            aload 1 /* output */
            ldc "simpleNames: <"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        28: .line 209
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        29: goto 34
        30: .line 210
      StackMap locals: int
      StackMap stack:
            aload 1 /* output */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
            iload 2 /* i */
            aaload
            invokevirtual java.lang.StringBuffer.append:([C)Ljava/lang/StringBuffer;
            pop
        31: .line 211
            iload 2 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
            arraylength
            iconst_1
            isub
            if_icmpge 33
        32: .line 212
            aload 1 /* output */
            ldc ", "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        33: .line 209
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        34: iload 2 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern.simpleNames:[[C
            arraylength
            if_icmplt 30
        end local 2 // int i
        35: .line 214
            aload 1 /* output */
            ldc ">"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        36: .line 216
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* output */
            invokespecial org.eclipse.jdt.internal.core.search.matching.JavaSearchPattern.print:(Ljava/lang/StringBuffer;)Ljava/lang/StringBuffer;
            areturn
        end local 1 // java.lang.StringBuffer output
        end local 0 // org.eclipse.jdt.internal.core.search.matching.MultiTypeDeclarationPattern this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   37     0    this  Lorg/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern;
            0   37     1  output  Ljava/lang/StringBuffer;
           19   25     2       i  I
           29   35     2       i  I
    MethodParameters:
        Name  Flags
      output  
}
SourceFile: "MultiTypeDeclarationPattern.java"