public class org.eclipse.core.internal.propertytester.StringMatcher
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.core.internal.propertytester.StringMatcher
  super_class: java.lang.Object
{
  private static final char SINGLE_WILD_CARD;
    descriptor: C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

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

  private boolean hasLeadingStar;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean hasTrailingStar;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private final java.lang.String pattern;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int patternLength;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.lang.String[] segments;
    descriptor: [Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.core.internal.propertytester.StringMatcher this
        start local 1 // java.lang.String pattern
         0: .line 62
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 30
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.core.internal.propertytester.StringMatcher.bound:I
         2: .line 63
            aload 1 /* pattern */
            ifnonnull 4
         3: .line 64
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         4: .line 65
      StackMap locals: org.eclipse.core.internal.propertytester.StringMatcher java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 1 /* pattern */
            putfield org.eclipse.core.internal.propertytester.StringMatcher.pattern:Ljava/lang/String;
         5: .line 66
            aload 0 /* this */
            aload 1 /* pattern */
            invokevirtual java.lang.String.length:()I
            putfield org.eclipse.core.internal.propertytester.StringMatcher.patternLength:I
         6: .line 67
            aload 0 /* this */
            invokevirtual org.eclipse.core.internal.propertytester.StringMatcher.parseWildCards:()V
         7: .line 68
            return
        end local 1 // java.lang.String pattern
        end local 0 // org.eclipse.core.internal.propertytester.StringMatcher this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/eclipse/core/internal/propertytester/StringMatcher;
            0    8     1  pattern  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      pattern  

  private int findPosition(java.lang.String, int, int, java.lang.String);
    descriptor: (Ljava/lang/String;IILjava/lang/String;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=9, args_size=5
        start local 0 // org.eclipse.core.internal.propertytester.StringMatcher this
        start local 1 // java.lang.String text
        start local 2 // int start
        start local 3 // int end
        start local 4 // java.lang.String p
         0: .line 78
            aload 4 /* p */
            iconst_0
            invokevirtual java.lang.String.indexOf:(I)I
            iflt 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 5 /* hasWildCard */
        start local 5 // boolean hasWildCard
         3: .line 79
            aload 4 /* p */
            invokevirtual java.lang.String.length:()I
            istore 6 /* plen */
        start local 6 // int plen
         4: .line 80
            iload 2 /* start */
            istore 7 /* i */
        start local 7 // int i
         5: iload 3 /* end */
            iload 6 /* plen */
            isub
            istore 8 /* max */
        start local 8 // int max
         6: goto 13
         7: .line 81
      StackMap locals: org.eclipse.core.internal.propertytester.StringMatcher java.lang.String int int java.lang.String int int int int
      StackMap stack:
            iload 5 /* hasWildCard */
            ifeq 10
         8: .line 82
            aload 0 /* this */
            aload 1 /* text */
            iload 7 /* i */
            aload 4 /* p */
            iconst_0
            iload 6 /* plen */
            invokevirtual org.eclipse.core.internal.propertytester.StringMatcher.regExpRegionMatches:(Ljava/lang/String;ILjava/lang/String;II)Z
            ifeq 12
         9: .line 83
            iload 7 /* i */
            ireturn
        10: .line 85
      StackMap locals:
      StackMap stack:
            aload 1 /* text */
            iconst_1
            iload 7 /* i */
            aload 4 /* p */
            iconst_0
            iload 6 /* plen */
            invokevirtual java.lang.String.regionMatches:(ZILjava/lang/String;II)Z
            ifeq 12
        11: .line 86
            iload 7 /* i */
            ireturn
        12: .line 80
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 7 /* i */
            iload 8 /* max */
            if_icmple 7
        end local 8 // int max
        end local 7 // int i
        14: .line 89
            iconst_m1
            ireturn
        end local 6 // int plen
        end local 5 // boolean hasWildCard
        end local 4 // java.lang.String p
        end local 3 // int end
        end local 2 // int start
        end local 1 // java.lang.String text
        end local 0 // org.eclipse.core.internal.propertytester.StringMatcher this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   15     0         this  Lorg/eclipse/core/internal/propertytester/StringMatcher;
            0   15     1         text  Ljava/lang/String;
            0   15     2        start  I
            0   15     3          end  I
            0   15     4            p  Ljava/lang/String;
            3   15     5  hasWildCard  Z
            4   15     6         plen  I
            5   14     7            i  I
            6   14     8          max  I
    MethodParameters:
       Name  Flags
      text   
      start  
      end    
      p      

  public boolean match(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=2
        start local 0 // org.eclipse.core.internal.propertytester.StringMatcher this
        start local 1 // java.lang.String text
         0: .line 99
            aload 1 /* text */
            ifnonnull 2
         1: .line 100
            iconst_0
            ireturn
         2: .line 101
      StackMap locals:
      StackMap stack:
            aload 1 /* text */
            invokevirtual java.lang.String.length:()I
            istore 2 /* end */
        start local 2 // int end
         3: .line 102
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.segments:[Ljava/lang/String;
            arraylength
            istore 3 /* segmentCount */
        start local 3 // int segmentCount
         4: .line 103
            iload 3 /* segmentCount */
            ifne 6
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.hasLeadingStar:Z
            ifne 5
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.hasTrailingStar:Z
            ifeq 6
         5: .line 104
      StackMap locals: int int
      StackMap stack:
            iconst_1
            ireturn
         6: .line 105
      StackMap locals:
      StackMap stack:
            iload 2 /* end */
            ifne 9
         7: .line 106
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.patternLength:I
            ifne 8
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         8: iconst_0
            ireturn
         9: .line 107
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.patternLength:I
            ifne 11
        10: .line 108
            iconst_0
            ireturn
        11: .line 109
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* currentTextPosition */
        start local 4 // int currentTextPosition
        12: .line 110
            iload 2 /* end */
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.bound:I
            isub
            ifge 14
        13: .line 111
            iconst_0
            ireturn
        14: .line 112
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 5 /* segmentIndex */
        start local 5 // int segmentIndex
        15: .line 113
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.segments:[Ljava/lang/String;
            iload 5 /* segmentIndex */
            aaload
            astore 6 /* current */
        start local 6 // java.lang.String current
        16: .line 116
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.hasLeadingStar:Z
            ifne 22
        17: .line 117
            aload 6 /* current */
            invokevirtual java.lang.String.length:()I
            istore 7 /* currentLength */
        start local 7 // int currentLength
        18: .line 118
            aload 0 /* this */
            aload 1 /* text */
            iconst_0
            aload 6 /* current */
            iconst_0
            iload 7 /* currentLength */
            invokevirtual org.eclipse.core.internal.propertytester.StringMatcher.regExpRegionMatches:(Ljava/lang/String;ILjava/lang/String;II)Z
            ifne 20
        19: .line 119
            iconst_0
            ireturn
        20: .line 120
      StackMap locals: int java.lang.String int
      StackMap stack:
            iinc 5 /* segmentIndex */ 1
        21: .line 121
            iload 4 /* currentTextPosition */
            iload 7 /* currentLength */
            iadd
            istore 4 /* currentTextPosition */
        end local 7 // int currentLength
        22: .line 123
      StackMap locals:
      StackMap stack:
            iload 3 /* segmentCount */
            iconst_1
            if_icmpne 31
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.hasLeadingStar:Z
            ifne 31
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.hasTrailingStar:Z
            ifne 31
        23: .line 125
            iload 4 /* currentTextPosition */
            iload 2 /* end */
            if_icmpne 24
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        24: iconst_0
            ireturn
        25: .line 129
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.segments:[Ljava/lang/String;
            iload 5 /* segmentIndex */
            aaload
            astore 6 /* current */
        26: .line 130
            aload 0 /* this */
            aload 1 /* text */
            iload 4 /* currentTextPosition */
            iload 2 /* end */
            aload 6 /* current */
            invokevirtual org.eclipse.core.internal.propertytester.StringMatcher.findPosition:(Ljava/lang/String;IILjava/lang/String;)I
            istore 7 /* currentMatch */
        start local 7 // int currentMatch
        27: .line 131
            iload 7 /* currentMatch */
            ifge 29
        28: .line 132
            iconst_0
            ireturn
        29: .line 133
      StackMap locals: int
      StackMap stack:
            iload 7 /* currentMatch */
            aload 6 /* current */
            invokevirtual java.lang.String.length:()I
            iadd
            istore 4 /* currentTextPosition */
        30: .line 134
            iinc 5 /* segmentIndex */ 1
        end local 7 // int currentMatch
        31: .line 128
      StackMap locals:
      StackMap stack:
            iload 5 /* segmentIndex */
            iload 3 /* segmentCount */
            if_icmplt 25
        32: .line 138
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.hasTrailingStar:Z
            ifne 35
            iload 4 /* currentTextPosition */
            iload 2 /* end */
            if_icmpeq 35
        33: .line 139
            aload 6 /* current */
            invokevirtual java.lang.String.length:()I
            istore 7 /* currentLength */
        start local 7 // int currentLength
        34: .line 140
            aload 0 /* this */
            aload 1 /* text */
            iload 2 /* end */
            iload 7 /* currentLength */
            isub
            aload 6 /* current */
            iconst_0
            iload 7 /* currentLength */
            invokevirtual org.eclipse.core.internal.propertytester.StringMatcher.regExpRegionMatches:(Ljava/lang/String;ILjava/lang/String;II)Z
            ireturn
        end local 7 // int currentLength
        35: .line 142
      StackMap locals:
      StackMap stack:
            iload 5 /* segmentIndex */
            iload 3 /* segmentCount */
            if_icmpne 36
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        36: iconst_0
            ireturn
        end local 6 // java.lang.String current
        end local 5 // int segmentIndex
        end local 4 // int currentTextPosition
        end local 3 // int segmentCount
        end local 2 // int end
        end local 1 // java.lang.String text
        end local 0 // org.eclipse.core.internal.propertytester.StringMatcher this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   37     0                 this  Lorg/eclipse/core/internal/propertytester/StringMatcher;
            0   37     1                 text  Ljava/lang/String;
            3   37     2                  end  I
            4   37     3         segmentCount  I
           12   37     4  currentTextPosition  I
           15   37     5         segmentIndex  I
           16   37     6              current  Ljava/lang/String;
           18   22     7        currentLength  I
           27   31     7         currentMatch  I
           34   35     7        currentLength  I
    MethodParameters:
      Name  Flags
      text  

  private void parseWildCards();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // org.eclipse.core.internal.propertytester.StringMatcher this
         0: .line 149
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.pattern:Ljava/lang/String;
            ldc "*"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 150
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.core.internal.propertytester.StringMatcher.hasLeadingStar:Z
         2: .line 151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.pattern:Ljava/lang/String;
            ldc "*"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 5
         3: .line 153
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.patternLength:I
            iconst_1
            if_icmple 5
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.pattern:Ljava/lang/String;
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.patternLength:I
            iconst_2
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 92
            if_icmpeq 5
         4: .line 154
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.core.internal.propertytester.StringMatcher.hasTrailingStar:Z
         5: .line 158
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* temp */
        start local 1 // java.util.ArrayList temp
         6: .line 160
            iconst_0
            istore 2 /* pos */
        start local 2 // int pos
         7: .line 161
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 3 /* buf */
        start local 3 // java.lang.StringBuilder buf
         8: .line 162
            goto 29
         9: .line 163
      StackMap locals: java.util.ArrayList int java.lang.StringBuilder
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.pattern:Ljava/lang/String;
            iload 2 /* pos */
            iinc 2 /* pos */ 1
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* c */
        start local 4 // char c
        10: .line 164
            iload 4 /* c */
            lookupswitch { // 3
                   42: 21
                   63: 26
                   92: 11
              default: 28
          }
        11: .line 166
      StackMap locals: int
      StackMap stack:
            iload 2 /* pos */
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.patternLength:I
            if_icmplt 14
        12: .line 167
            aload 3 /* buf */
            iload 4 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        13: .line 168
            goto 29
        14: .line 169
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.pattern:Ljava/lang/String;
            iload 2 /* pos */
            iinc 2 /* pos */ 1
            invokevirtual java.lang.String.charAt:(I)C
            istore 5 /* next */
        start local 5 // char next
        15: .line 171
            iload 5 /* next */
            bipush 42
            if_icmpeq 16
            iload 5 /* next */
            bipush 63
            if_icmpeq 16
            iload 5 /* next */
            bipush 92
            if_icmpne 18
        16: .line 172
      StackMap locals: int
      StackMap stack:
            aload 3 /* buf */
            iload 5 /* next */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        17: .line 173
            goto 29
        18: .line 175
      StackMap locals:
      StackMap stack:
            aload 3 /* buf */
            iload 4 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        19: .line 176
            aload 3 /* buf */
            iload 5 /* next */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 5 // char next
        20: .line 179
            goto 29
        21: .line 181
      StackMap locals:
      StackMap stack:
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 29
        22: .line 183
            aload 1 /* temp */
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        23: .line 184
            aload 0 /* this */
            dup
            getfield org.eclipse.core.internal.propertytester.StringMatcher.bound:I
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.length:()I
            iadd
            putfield org.eclipse.core.internal.propertytester.StringMatcher.bound:I
        24: .line 185
            aload 3 /* buf */
            iconst_0
            invokevirtual java.lang.StringBuilder.setLength:(I)V
        25: .line 187
            goto 29
        26: .line 190
      StackMap locals:
      StackMap stack:
            aload 3 /* buf */
            iconst_0
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        27: .line 191
            goto 29
        28: .line 193
      StackMap locals:
      StackMap stack:
            aload 3 /* buf */
            iload 4 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 4 // char c
        29: .line 162
      StackMap locals:
      StackMap stack:
            iload 2 /* pos */
            aload 0 /* this */
            getfield org.eclipse.core.internal.propertytester.StringMatcher.patternLength:I
            if_icmplt 9
        30: .line 198
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 33
        31: .line 199
            aload 1 /* temp */
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        32: .line 200
            aload 0 /* this */
            dup
            getfield org.eclipse.core.internal.propertytester.StringMatcher.bound:I
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.length:()I
            iadd
            putfield org.eclipse.core.internal.propertytester.StringMatcher.bound:I
        33: .line 202
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* temp */
            aload 1 /* temp */
            invokevirtual java.util.ArrayList.size:()I
            anewarray java.lang.String
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            putfield org.eclipse.core.internal.propertytester.StringMatcher.segments:[Ljava/lang/String;
        34: .line 203
            return
        end local 3 // java.lang.StringBuilder buf
        end local 2 // int pos
        end local 1 // java.util.ArrayList temp
        end local 0 // org.eclipse.core.internal.propertytester.StringMatcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   35     0  this  Lorg/eclipse/core/internal/propertytester/StringMatcher;
            6   35     1  temp  Ljava/util/ArrayList<Ljava/lang/String;>;
            7   35     2   pos  I
            8   35     3   buf  Ljava/lang/StringBuilder;
           10   29     4     c  C
           15   20     5  next  C

  private boolean regExpRegionMatches(java.lang.String, int, java.lang.String, int, int);
    descriptor: (Ljava/lang/String;ILjava/lang/String;II)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=8, args_size=6
        start local 0 // org.eclipse.core.internal.propertytester.StringMatcher this
        start local 1 // java.lang.String text
        start local 2 // int tStart
        start local 3 // java.lang.String p
        start local 4 // int pStart
        start local 5 // int plen
         0: .line 215
            goto 12
         1: .line 216
      StackMap locals:
      StackMap stack:
            aload 1 /* text */
            iload 2 /* tStart */
            iinc 2 /* tStart */ 1
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* tchar */
        start local 6 // char tchar
         2: .line 217
            aload 3 /* p */
            iload 4 /* pStart */
            iinc 4 /* pStart */ 1
            invokevirtual java.lang.String.charAt:(I)C
            istore 7 /* pchar */
        start local 7 // char pchar
         3: .line 220
            iload 7 /* pchar */
            ifne 5
         4: .line 221
            goto 12
         5: .line 222
      StackMap locals: int int
      StackMap stack:
            iload 7 /* pchar */
            iload 6 /* tchar */
            if_icmpne 7
         6: .line 223
            goto 12
         7: .line 224
      StackMap locals:
      StackMap stack:
            iload 6 /* tchar */
            invokestatic java.lang.Character.toUpperCase:(C)C
            iload 7 /* pchar */
            invokestatic java.lang.Character.toUpperCase:(C)C
            if_icmpne 9
         8: .line 225
            goto 12
         9: .line 228
      StackMap locals:
      StackMap stack:
            iload 6 /* tchar */
            invokestatic java.lang.Character.toLowerCase:(C)C
            iload 7 /* pchar */
            invokestatic java.lang.Character.toLowerCase:(C)C
            if_icmpne 11
        10: .line 229
            goto 12
        11: .line 230
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 7 // char pchar
        end local 6 // char tchar
        12: .line 215
      StackMap locals:
      StackMap stack:
            iload 5 /* plen */
            iinc 5 /* plen */ -1
            ifgt 1
        13: .line 232
            iconst_1
            ireturn
        end local 5 // int plen
        end local 4 // int pStart
        end local 3 // java.lang.String p
        end local 2 // int tStart
        end local 1 // java.lang.String text
        end local 0 // org.eclipse.core.internal.propertytester.StringMatcher this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Lorg/eclipse/core/internal/propertytester/StringMatcher;
            0   14     1    text  Ljava/lang/String;
            0   14     2  tStart  I
            0   14     3       p  Ljava/lang/String;
            0   14     4  pStart  I
            0   14     5    plen  I
            2   12     6   tchar  C
            3   12     7   pchar  C
    MethodParameters:
        Name  Flags
      text    
      tStart  
      p       
      pStart  
      plen    
}
SourceFile: "StringMatcher.java"