public class org.eclipse.jdt.internal.core.util.BindingKeyParser
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.core.util.BindingKeyParser
  super_class: java.lang.Object
{
  int keyStart;
    descriptor: I
    flags: (0x0000) 

  static final char C_THROWN;
    descriptor: C
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 124

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

  private org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner scanner;
    descriptor: Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

  public void <init>(org.eclipse.jdt.internal.core.util.BindingKeyParser);
    descriptor: (Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
         0: .line 498
            aload 0 /* this */
            ldc ""
            invokespecial org.eclipse.jdt.internal.core.util.BindingKeyParser.<init>:(Ljava/lang/String;)V
         1: .line 499
            aload 0 /* this */
            aload 1 /* parser */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
         2: .line 500
            return
        end local 1 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0    3     1  parser  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
    MethodParameters:
        Name  Flags
      parser  

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // java.lang.String key
         0: .line 502
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 489
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.hasTypeName:Z
         2: .line 495
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isParsingThrownExceptions:Z
         3: .line 503
            aload 0 /* this */
            new org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner
            dup
            aload 1 /* key */
            invokevirtual java.lang.String.toCharArray:()[C
            invokespecial org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.<init>:([C)V
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
         4: .line 504
            return
        end local 1 // java.lang.String key
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0    5     1   key  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      key   

  public void consumeAnnotation();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 508
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

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

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

  public void consumeCapture(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // int position
         0: .line 520
            return
        end local 1 // int position
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0    1     1  position  I
    MethodParameters:
          Name  Flags
      position  

  public void consumeCapture18ID(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // int id
        start local 2 // int position
         0: .line 524
            return
        end local 2 // int position
        end local 1 // int id
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0    1     1        id  I
            0    1     2  position  I
    MethodParameters:
          Name  Flags
      id        
      position  

  public void consumeException();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 528
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

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

  public void consumeParameterizedGenericMethod();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 536
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

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

  public void consumeLocalVar(char[], int, int);
    descriptor: ([CII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=4, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // char[] varName
        start local 2 // int occurrenceCount
        start local 3 // int argumentPosition
         0: .line 544
            return
        end local 3 // int argumentPosition
        end local 2 // int occurrenceCount
        end local 1 // char[] varName
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0    1     1           varName  [C
            0    1     2   occurrenceCount  I
            0    1     3  argumentPosition  I
    MethodParameters:
                  Name  Flags
      varName           
      occurrenceCount   
      argumentPosition  

  public void consumeMethod(char[], char[]);
    descriptor: ([C[C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // char[] selector
        start local 2 // char[] signature
         0: .line 548
            return
        end local 2 // char[] signature
        end local 1 // char[] selector
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0    1     1   selector  [C
            0    1     2  signature  [C
    MethodParameters:
           Name  Flags
      selector   
      signature  

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

  public void consumeNonGenericType();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 556
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

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

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

  public void consumeParameterizedType(char[], boolean);
    descriptor: ([CZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // char[] simpleTypeName
        start local 2 // boolean isRaw
         0: .line 568
            return
        end local 2 // boolean isRaw
        end local 1 // char[] simpleTypeName
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0    1     1  simpleTypeName  [C
            0    1     2           isRaw  Z
    MethodParameters:
                Name  Flags
      simpleTypeName  
      isRaw           

  public void consumeParser(org.eclipse.jdt.internal.core.util.BindingKeyParser);
    descriptor: (Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
         0: .line 572
            return
        end local 1 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0    1     1  parser  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
    MethodParameters:
        Name  Flags
      parser  

  public void consumeRawType();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 576
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  public void consumeScope(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // int scopeNumber
         0: .line 580
            return
        end local 1 // int scopeNumber
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0    1     1  scopeNumber  I
    MethodParameters:
             Name  Flags
      scopeNumber  

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

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

  public void consumeKey();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 592
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  public void consumeTopLevelType();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 596
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  public void consumeType();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 600
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

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

  public void consumeTypeVariable(char[], char[]);
    descriptor: ([C[C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // char[] position
        start local 2 // char[] typeVariableName
         0: .line 608
            return
        end local 2 // char[] typeVariableName
        end local 1 // char[] position
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0    1     1          position  [C
            0    1     2  typeVariableName  [C
    MethodParameters:
                  Name  Flags
      position          
      typeVariableName  

  public void consumeTypeWithCapture();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 612
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  public void consumeWildCard(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // int kind
         0: .line 616
            return
        end local 1 // int kind
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0    1     1  kind  I
    MethodParameters:
      Name  Flags
      kind  

  public void consumeWildcardRank(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // int rank
         0: .line 620
            return
        end local 1 // int rank
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0    1     1  rank  I
    MethodParameters:
      Name  Flags
      rank  

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

  public java.lang.String getKey();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 630
            new java.lang.String
            dup
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.source:[C
            invokespecial java.lang.String.<init>:([C)V
            areturn
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  public boolean hasTypeName();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 634
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.hasTypeName:Z
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  public boolean hasModuleName();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 638
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.hasModuleName:Z
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  public void malformedKey();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 642
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
         1: .line 643
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  public org.eclipse.jdt.internal.core.util.BindingKeyParser newParser();
    descriptor: ()Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 646
            new org.eclipse.jdt.internal.core.util.BindingKeyParser
            dup
            aload 0 /* this */
            invokespecial org.eclipse.jdt.internal.core.util.BindingKeyParser.<init>:(Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;)V
            areturn
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  public void parse();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 650
            aload 0 /* this */
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parse:(Z)V
         1: .line 651
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  public void parse(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // boolean pauseAfterFullyQualifiedName
         0: .line 654
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.parsingPaused:Z
            ifne 8
         1: .line 655
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseModule:()Z
            ifeq 3
         2: .line 656
            return
         3: .line 658
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseFullyQualifiedName:()V
         4: .line 659
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseSecondaryType:()V
         5: .line 660
            iload 1 /* pauseAfterFullyQualifiedName */
            ifeq 8
         6: .line 661
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.parsingPaused:Z
         7: .line 662
            return
         8: .line 665
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.hasTypeName:()Z
            ifne 11
         9: .line 666
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeKey:()V
        10: .line 667
            return
        11: .line 669
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeTopLevelType:()V
        12: .line 670
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseInnerType:()V
        13: .line 672
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtParametersStart:()Z
            ifeq 25
        14: .line 673
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipParametersStart:()V
        15: .line 674
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtTypeParameterStart:()Z
            ifeq 20
        16: .line 676
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseGenericType:()V
        17: .line 678
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipParametersEnd:()V
        18: .line 680
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseInnerType:()V
        19: .line 681
            goto 26
      StackMap locals:
      StackMap stack:
        20: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtTypeArgumentStart:()Z
            ifeq 22
        21: .line 683
            aload 0 /* this */
            aconst_null
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseParameterizedType:([CZ)V
            goto 26
        22: .line 684
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtRawTypeEnd:()Z
            ifeq 26
        23: .line 686
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseRawType:()V
        24: .line 687
            goto 26
        25: .line 689
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeNonGenericType:()V
        26: .line 692
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeType:()V
        27: .line 693
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipTypeEnd:()V
        28: .line 695
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtFieldOrMethodStart:()Z
            ifeq 47
        29: .line 696
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            tableswitch { // 2 - 3
                    2: 30
                    3: 34
              default: 44
          }
        30: .line 698
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseField:()V
        31: .line 699
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtAnnotationStart:()Z
            ifeq 33
        32: .line 700
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseAnnotation:()V
        33: .line 702
      StackMap locals:
      StackMap stack:
            return
        34: .line 704
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseMethod:()V
        35: .line 705
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtLocalVariableStart:()Z
            ifeq 38
        36: .line 706
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseLocalVariable:()V
        37: .line 707
            goto 58
      StackMap locals:
      StackMap stack:
        38: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtTypeVariableStart:()Z
            ifeq 41
        39: .line 708
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseTypeVariable:()V
        40: .line 709
            goto 58
      StackMap locals:
      StackMap stack:
        41: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtAnnotationStart:()Z
            ifeq 58
        42: .line 710
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseAnnotation:()V
        43: .line 712
            goto 58
        44: .line 714
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
        45: .line 715
            return
        46: .line 717
      StackMap locals:
      StackMap stack:
            goto 58
      StackMap locals:
      StackMap stack:
        47: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isParsingThrownExceptions:Z
            ifne 50
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtTypeVariableStart:()Z
            ifeq 50
        48: .line 718
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseTypeVariable:()V
        49: .line 719
            goto 58
      StackMap locals:
      StackMap stack:
        50: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtWildcardStart:()Z
            ifeq 53
        51: .line 720
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseWildcard:()V
        52: .line 721
            goto 58
      StackMap locals:
      StackMap stack:
        53: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtTypeWithCaptureStart:()Z
            ifeq 56
        54: .line 722
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseTypeWithCapture:()V
        55: .line 723
            goto 58
      StackMap locals:
      StackMap stack:
        56: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtAnnotationStart:()Z
            ifeq 58
        57: .line 724
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseAnnotation:()V
        58: .line 727
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeKey:()V
        59: .line 728
            return
        end local 1 // boolean pauseAfterFullyQualifiedName
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0   60     0                          this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0   60     1  pauseAfterFullyQualifiedName  Z
    MethodParameters:
                              Name  Flags
      pauseAfterFullyQualifiedName  

  private boolean parseModule();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 731
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtModuleStart:()Z
            ifeq 9
         1: .line 732
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.hasTypeName:Z
         2: .line 733
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.keyStart:I
         3: .line 734
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            bipush 11
            if_icmpne 8
         4: .line 735
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            bipush 12
            if_icmpne 8
         5: .line 737
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeModule:([C)V
         6: .line 738
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.hasModuleName:Z
         7: .line 739
            iconst_1
            ireturn
         8: .line 741
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
         9: .line 743
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  private void parseFullyQualifiedName();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 747
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtCaptureStart:()Z
            ifeq 4
         1: .line 748
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseCapture:()V
         2: .line 749
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.hasTypeName:Z
         3: .line 750
            return
         4: .line 752
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtCapture18Start:()Z
            ifeq 8
         5: .line 753
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseCapture18:()V
         6: .line 754
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.hasTypeName:Z
         7: .line 755
            return
         8: .line 757
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            tableswitch { // 0 - 10
                    0: 9
                    1: 13
                    2: 42
                    3: 42
                    4: 20
                    5: 42
                    6: 42
                    7: 30
                    8: 42
                    9: 42
                   10: 16
              default: 42
          }
         9: .line 759
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.keyStart:I
        10: .line 760
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumePackage:([C)V
        11: .line 761
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.hasTypeName:Z
        12: .line 762
            return
        13: .line 764
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.start:I
            iconst_1
            isub
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.keyStart:I
        14: .line 765
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeFullyQualifiedName:([C)V
        15: .line 766
            goto 44
        16: .line 768
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.start:I
            iconst_1
            isub
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.keyStart:I
        17: .line 769
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeBaseType:([C)V
        18: .line 770
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.hasTypeName:Z
        19: .line 771
            goto 44
        20: .line 773
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.start:I
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.keyStart:I
        21: .line 774
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeArrayDimension:([C)V
        22: .line 775
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            lookupswitch { // 2
                    1: 23
                   10: 25
              default: 28
          }
        23: .line 777
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeFullyQualifiedName:([C)V
        24: .line 778
            goto 44
        25: .line 780
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeBaseType:([C)V
        26: .line 781
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.hasTypeName:Z
        27: .line 782
            goto 44
        28: .line 784
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
        29: .line 785
            return
        30: .line 790
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            bipush 9
            newarray 5
            dup
            iconst_0
            bipush 47
            castore
            dup
            iconst_1
            bipush 112
            castore
            dup
            iconst_2
            bipush 97
            castore
            dup
            iconst_3
            bipush 99
            castore
            dup
            iconst_4
            bipush 107
            castore
            dup
            iconst_5
            bipush 97
            castore
            dup
            bipush 6
            bipush 103
            castore
            dup
            bipush 7
            bipush 101
            castore
            dup
            bipush 8
            bipush 45
            castore
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.endsWith:([C[C)Z
            ifne 33
        31: .line 791
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
        32: .line 792
            return
        33: .line 795
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.start:I
            istore 1 /* start */
        start local 1 // int start
        34: .line 796
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            iconst_1
            if_icmpne 44
        35: .line 797
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            iconst_4
            newarray 5
            dup
            iconst_0
            bipush 105
            castore
            dup
            iconst_1
            bipush 110
            castore
            dup
            iconst_2
            bipush 102
            castore
            dup
            iconst_3
            bipush 111
            castore
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            ifne 38
        36: .line 798
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
        37: .line 799
            return
        38: .line 801
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            iload 1 /* start */
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.start:I
        39: .line 802
            aload 0 /* this */
            iload 1 /* start */
            iconst_1
            isub
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.keyStart:I
        40: .line 803
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeFullyQualifiedName:([C)V
        41: .line 804
            goto 44
        end local 1 // int start
        42: .line 808
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
        43: .line 809
            return
        44: .line 811
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   45     0   this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
           34   42     1  start  I

  private void parseParameterizedMethod();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 814
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipParametersStart:()V
         1: .line 815
            goto 3
         2: .line 816
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseTypeArgument:()V
         3: .line 815
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtParametersEnd:()Z
            ifne 4
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
            ifeq 2
         4: .line 818
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeParameterizedGenericMethod:()V
         5: .line 819
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  private void parseGenericType();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 822
            goto 6
         1: .line 823
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            iconst_1
            if_icmpeq 4
         2: .line 824
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
         3: .line 825
            return
         4: .line 827
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeTypeParameter:([C)V
         5: .line 828
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipTypeEnd:()V
         6: .line 822
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtParametersEnd:()Z
            ifne 7
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
            ifeq 1
         7: .line 830
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  private void parseInnerType();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 833
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtMemberTypeStart:()Z
            ifeq 1
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            iconst_1
            if_icmpeq 2
         1: .line 834
      StackMap locals:
      StackMap stack:
            return
         2: .line 835
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 1 /* typeName */
        start local 1 // char[] typeName
         3: .line 837
            aload 1 /* typeName */
            arraylength
            ifne 5
         4: .line 838
            return
         5: .line 839
      StackMap locals: char[]
      StackMap stack:
            aload 1 /* typeName */
            iconst_0
            caload
            invokestatic java.lang.Character.isDigit:(C)Z
            ifeq 15
         6: .line 841
            iconst_1
            istore 2 /* nextToken */
        start local 2 // int nextToken
         7: .line 842
            goto 9
         8: .line 843
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            istore 2 /* nextToken */
         9: .line 842
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtMemberTypeStart:()Z
            ifeq 10
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
            ifeq 8
        10: .line 844
      StackMap locals:
      StackMap stack:
            iload 2 /* nextToken */
            bipush 12
            if_icmpne 11
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.source:[C
            goto 12
      StackMap locals:
      StackMap stack:
        11: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.source:[C
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.keyStart:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.index:I
            iconst_1
            iadd
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
      StackMap locals:
      StackMap stack: char[]
        12: astore 1 /* typeName */
        13: .line 845
            aload 0 /* this */
            aload 1 /* typeName */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeLocalType:([C)V
        end local 2 // int nextToken
        14: .line 846
            goto 17
        15: .line 847
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* typeName */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeMemberType:([C)V
        16: .line 848
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseInnerType:()V
        17: .line 850
      StackMap locals:
      StackMap stack:
            return
        end local 1 // char[] typeName
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   18     0       this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            3   18     1   typeName  [C
            7   14     2  nextToken  I

  private void parseLocalVariable();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 853
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            iconst_5
            if_icmpeq 3
         1: .line 854
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
         2: .line 855
            return
         3: .line 857
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 1 /* varName */
        start local 1 // char[] varName
         4: .line 858
            aload 1 /* varName */
            iconst_0
            caload
            invokestatic java.lang.Character.isDigit:(C)Z
            ifeq 12
         5: .line 859
            new java.lang.String
            dup
            aload 1 /* varName */
            invokespecial java.lang.String.<init>:([C)V
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 2 /* index */
        start local 2 // int index
         6: .line 860
            aload 0 /* this */
            iload 2 /* index */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeScope:(I)V
         7: .line 861
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtLocalVariableStart:()Z
            ifne 10
         8: .line 862
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
         9: .line 863
            return
        10: .line 865
      StackMap locals: char[] int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseLocalVariable:()V
        end local 2 // int index
        11: .line 866
            goto 27
        12: .line 867
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* occurrenceCount */
        start local 2 // int occurrenceCount
        13: .line 868
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtLocalVariableStart:()Z
            ifeq 19
        14: .line 869
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            iconst_5
            if_icmpeq 17
        15: .line 870
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
        16: .line 871
            return
        17: .line 873
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 3 /* occurrence */
        start local 3 // char[] occurrence
        18: .line 874
            new java.lang.String
            dup
            aload 3 /* occurrence */
            invokespecial java.lang.String.<init>:([C)V
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 2 /* occurrenceCount */
        end local 3 // char[] occurrence
        19: .line 876
      StackMap locals:
      StackMap stack:
            iconst_m1
            istore 3 /* position */
        start local 3 // int position
        20: .line 877
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtLocalVariableStart:()Z
            ifeq 26
        21: .line 878
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            iconst_5
            if_icmpeq 24
        22: .line 879
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
        23: .line 880
            return
        24: .line 882
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 4 /* posToken */
        start local 4 // char[] posToken
        25: .line 883
            new java.lang.String
            dup
            aload 4 /* posToken */
            invokespecial java.lang.String.<init>:([C)V
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 3 /* position */
        end local 4 // char[] posToken
        26: .line 885
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* varName */
            iload 2 /* occurrenceCount */
            iload 3 /* position */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeLocalVar:([CII)V
        end local 3 // int position
        end local 2 // int occurrenceCount
        27: .line 887
      StackMap locals:
      StackMap stack:
            return
        end local 1 // char[] varName
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   28     0             this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            4   28     1          varName  [C
            6   11     2            index  I
           13   27     2  occurrenceCount  I
           18   19     3       occurrence  [C
           20   27     3         position  I
           25   26     4         posToken  [C

  private void parseMethod();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 890
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 1 /* selector */
        start local 1 // char[] selector
         1: .line 891
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipMethodSignature:()V
         2: .line 892
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 2 /* signature */
        start local 2 // char[] signature
         3: .line 893
            aload 0 /* this */
            aload 1 /* selector */
            aload 2 /* signature */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeMethod:([C[C)V
         4: .line 894
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtThrownStart:()Z
            ifeq 6
         5: .line 895
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseThrownExceptions:()V
         6: .line 897
      StackMap locals: char[] char[]
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtParametersStart:()Z
            ifeq 8
         7: .line 898
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseParameterizedMethod:()V
         8: .line 899
      StackMap locals:
      StackMap stack:
            return
        end local 2 // char[] signature
        end local 1 // char[] selector
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            1    9     1   selector  [C
            3    9     2  signature  [C

  private void parseAnnotation();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 906
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
            istore 1 /* token */
        start local 1 // int token
         1: .line 907
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.newParser:()Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            astore 2 /* parser */
        start local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
         2: .line 908
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parse:()V
         3: .line 909
            aload 0 /* this */
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeParser:(Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;)V
         4: .line 910
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeAnnotation:()V
         5: .line 911
            aload 0 /* this */
            aload 2 /* parser */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
         6: .line 912
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            iload 1 /* token */
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
         7: .line 913
            return
        end local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
        end local 1 // int token
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            1    8     1   token  I
            2    8     2  parser  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  private void parseCapture();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 916
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            bipush 8
            if_icmpeq 1
            return
         1: .line 917
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseCaptureWildcard:()V
         2: .line 918
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            iconst_1
            if_icmpeq 5
         3: .line 919
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
         4: .line 920
            return
         5: .line 922
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 1 /* positionChars */
        start local 1 // char[] positionChars
         6: .line 923
            new java.lang.String
            dup
            aload 1 /* positionChars */
            invokespecial java.lang.String.<init>:([C)V
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 2 /* position */
        start local 2 // int position
         7: .line 924
            aload 0 /* this */
            iload 2 /* position */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeCapture:(I)V
         8: .line 925
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipTypeEnd:()V
         9: .line 926
            return
        end local 2 // int position
        end local 1 // char[] positionChars
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   10     0           this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            6   10     1  positionChars  [C
            7   10     2       position  I

  private void parseCapture18();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 930
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            bipush 9
            if_icmpeq 1
            return
         1: .line 932
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipRankStart:()V
         2: .line 933
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipRank:()V
         3: .line 934
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 1 /* source */
        start local 1 // char[] source
         4: .line 935
            new java.lang.String
            dup
            aload 1 /* source */
            invokespecial java.lang.String.<init>:([C)V
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 2 /* position */
        start local 2 // int position
         5: .line 937
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipCapture18Delim:()V
         6: .line 938
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipRank:()V
         7: .line 939
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 1 /* source */
         8: .line 940
            new java.lang.String
            dup
            aload 1 /* source */
            invokespecial java.lang.String.<init>:([C)V
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 3 /* id */
        start local 3 // int id
         9: .line 941
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipRankEnd:()V
        10: .line 943
            aload 0 /* this */
            iload 3 /* id */
            iload 2 /* position */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeCapture18ID:(II)V
        11: .line 945
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipTypeEnd:()V
        12: .line 946
            return
        end local 3 // int id
        end local 2 // int position
        end local 1 // char[] source
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            4   13     1    source  [C
            5   13     2  position  I
            9   13     3        id  I

  private void parseCaptureWildcard();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 953
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
            istore 1 /* token */
        start local 1 // int token
         1: .line 954
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.newParser:()Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            astore 2 /* parser */
        start local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
         2: .line 955
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parse:()V
         3: .line 956
            aload 0 /* this */
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeParser:(Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;)V
         4: .line 957
            aload 0 /* this */
            aload 2 /* parser */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
         5: .line 958
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            iload 1 /* token */
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
         6: .line 959
            return
        end local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
        end local 1 // int token
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            1    7     1   token  I
            2    7     2  parser  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  private void parseField();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 962
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 1 /* fieldName */
        start local 1 // char[] fieldName
         1: .line 963
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseReturnType:()V
         2: .line 964
            aload 0 /* this */
            aload 1 /* fieldName */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeField:([C)V
         3: .line 965
            return
        end local 1 // char[] fieldName
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            1    4     1  fieldName  [C

  private void parseThrownExceptions();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 972
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
            istore 1 /* token */
        start local 1 // int token
         1: .line 973
            goto 9
         2: .line 974
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipThrownStart:()V
         3: .line 975
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.newParser:()Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            astore 2 /* parser */
        start local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
         4: .line 976
            aload 2 /* parser */
            iconst_1
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isParsingThrownExceptions:Z
         5: .line 977
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parse:()V
         6: .line 978
            aload 0 /* this */
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeParser:(Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;)V
         7: .line 979
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeException:()V
         8: .line 980
            aload 0 /* this */
            aload 2 /* parser */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
        end local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
         9: .line 973
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtThrownStart:()Z
            ifeq 10
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
            ifeq 2
        10: .line 982
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            iload 1 /* token */
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
        11: .line 983
            return
        end local 1 // int token
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            1   12     1   token  I
            4    9     2  parser  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  private void parseParameterizedType(char[], boolean);
    descriptor: ([CZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
        start local 1 // char[] typeName
        start local 2 // boolean isRaw
         0: .line 986
            iload 2 /* isRaw */
            ifne 4
         1: .line 987
            goto 3
         2: .line 988
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseTypeArgument:()V
         3: .line 987
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtParametersEnd:()Z
            ifne 4
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
            ifeq 2
         4: .line 992
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipParametersEnd:()V
         5: .line 993
            aload 0 /* this */
            aload 1 /* typeName */
            iload 2 /* isRaw */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeParameterizedType:([CZ)V
         6: .line 994
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipTypeEnd:()V
         7: .line 995
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtMemberTypeStart:()Z
            ifeq 14
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            iconst_1
            if_icmpne 14
         8: .line 996
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 1 /* typeName */
         9: .line 997
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtParametersStart:()Z
            ifeq 13
        10: .line 998
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipParametersStart:()V
        11: .line 999
            aload 0 /* this */
            aload 1 /* typeName */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtRawTypeEnd:()Z
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseParameterizedType:([CZ)V
        12: .line 1000
            goto 14
        13: .line 1001
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* typeName */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeParameterizedType:([CZ)V
        14: .line 1003
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean isRaw
        end local 1 // char[] typeName
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            0   15     1  typeName  [C
            0   15     2     isRaw  Z
    MethodParameters:
          Name  Flags
      typeName  
      isRaw     

  private void parseRawType();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 1006
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipParametersEnd:()V
         1: .line 1007
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeRawType:()V
         2: .line 1008
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipTypeEnd:()V
         3: .line 1009
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtMemberTypeStart:()Z
            ifeq 10
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            iconst_1
            if_icmpne 10
         4: .line 1010
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 1 /* typeName */
        start local 1 // char[] typeName
         5: .line 1011
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtParametersStart:()Z
            ifeq 9
         6: .line 1012
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipParametersStart:()V
         7: .line 1013
            aload 0 /* this */
            aload 1 /* typeName */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtRawTypeEnd:()Z
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseParameterizedType:([CZ)V
         8: .line 1014
            goto 10
         9: .line 1015
      StackMap locals: char[]
      StackMap stack:
            aload 0 /* this */
            aload 1 /* typeName */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeParameterizedType:([CZ)V
        end local 1 // char[] typeName
        10: .line 1017
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            5   10     1  typeName  [C

  private void parseReturnType();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 1020
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            dup
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.index:I
            iconst_1
            iadd
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.index:I
         1: .line 1025
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
            istore 1 /* token */
        start local 1 // int token
         2: .line 1026
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.newParser:()Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            astore 2 /* parser */
        start local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
         3: .line 1027
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parse:()V
         4: .line 1028
            aload 0 /* this */
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeParser:(Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;)V
         5: .line 1029
            aload 0 /* this */
            aload 2 /* parser */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
         6: .line 1030
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            iload 1 /* token */
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
         7: .line 1031
            return
        end local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
        end local 1 // int token
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            2    8     1   token  I
            3    8     2  parser  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  private void parseSecondaryType();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 1034
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.isAtSecondaryTypeStart:()Z
            ifeq 1
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            iconst_1
            if_icmpeq 2
      StackMap locals:
      StackMap stack:
         1: return
         2: .line 1035
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeSecondaryType:([C)V
         3: .line 1036
            return
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  private void parseTypeArgument();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 1043
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
            istore 1 /* token */
        start local 1 // int token
         1: .line 1044
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.newParser:()Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            astore 2 /* parser */
        start local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
         2: .line 1045
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parse:()V
         3: .line 1046
            aload 0 /* this */
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeParser:(Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;)V
         4: .line 1047
            aload 0 /* this */
            aload 2 /* parser */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
         5: .line 1048
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            iload 1 /* token */
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
         6: .line 1049
            return
        end local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
        end local 1 // int token
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            1    7     1   token  I
            2    7     2  parser  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  private void parseTypeWithCapture();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 1052
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            bipush 8
            if_icmpeq 1
            return
         1: .line 1057
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
            istore 1 /* token */
        start local 1 // int token
         2: .line 1058
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.newParser:()Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            astore 2 /* parser */
        start local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
         3: .line 1059
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parse:()V
         4: .line 1060
            aload 0 /* this */
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeParser:(Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;)V
         5: .line 1061
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeTypeWithCapture:()V
         6: .line 1062
            aload 0 /* this */
            aload 2 /* parser */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
         7: .line 1063
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            iload 1 /* token */
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
         8: .line 1064
            return
        end local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
        end local 1 // int token
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            2    9     1   token  I
            3    9     2  parser  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;

  private void parseTypeVariable();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 1067
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            iconst_1
            if_icmpeq 3
         1: .line 1068
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
         2: .line 1069
            return
         3: .line 1071
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 1 /* typeVariableName */
        start local 1 // char[] typeVariableName
         4: .line 1073
            aload 1 /* typeVariableName */
            arraylength
            istore 3 /* length */
        start local 3 // int length
         5: .line 1074
            iload 3 /* length */
            ifle 10
            aload 1 /* typeVariableName */
            iconst_0
            caload
            invokestatic java.lang.Character.isDigit:(C)Z
            ifeq 10
         6: .line 1075
            bipush 84
            aload 1 /* typeVariableName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.indexOf:(C[C)I
            istore 4 /* firstT */
        start local 4 // int firstT
         7: .line 1076
            aload 1 /* typeVariableName */
            iconst_0
            iload 4 /* firstT */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 2 /* position */
        start local 2 // char[] position
         8: .line 1077
            aload 1 /* typeVariableName */
            iload 4 /* firstT */
            iconst_1
            iadd
            aload 1 /* typeVariableName */
            arraylength
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 1 /* typeVariableName */
        end local 4 // int firstT
         9: .line 1078
            goto 11
        end local 2 // char[] position
        10: .line 1079
      StackMap locals: org.eclipse.jdt.internal.core.util.BindingKeyParser char[] top int
      StackMap stack:
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            astore 2 /* position */
        start local 2 // char[] position
        11: .line 1081
      StackMap locals: org.eclipse.jdt.internal.core.util.BindingKeyParser char[] char[] int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* position */
            aload 1 /* typeVariableName */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeTypeVariable:([C[C)V
        12: .line 1082
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipTypeEnd:()V
        13: .line 1083
            return
        end local 3 // int length
        end local 2 // char[] position
        end local 1 // char[] typeVariableName
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   14     0              this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            4   14     1  typeVariableName  [C
            8   10     2          position  [C
           11   14     2          position  [C
            5   14     3            length  I
            7    9     4            firstT  I

  private void parseWildcard();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 1086
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseWildcardRank:()V
         1: .line 1087
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.nextToken:()I
            bipush 7
            if_icmpeq 2
            return
         2: .line 1088
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 1 /* source */
        start local 1 // char[] source
         3: .line 1089
            aload 1 /* source */
            arraylength
            ifne 6
         4: .line 1090
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
         5: .line 1091
            return
         6: .line 1093
      StackMap locals: char[]
      StackMap stack:
            iconst_m1
            istore 2 /* kind */
        start local 2 // int kind
         7: .line 1094
            aload 1 /* source */
            iconst_0
            caload
            tableswitch { // 42 - 45
                   42: 8
                   43: 10
                   44: 13
                   45: 12
              default: 13
          }
         8: .line 1096
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 2 /* kind */
         9: .line 1097
            goto 13
        10: .line 1099
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* kind */
        11: .line 1100
            goto 13
        12: .line 1102
      StackMap locals:
      StackMap stack:
            iconst_2
            istore 2 /* kind */
        13: .line 1105
      StackMap locals:
      StackMap stack:
            iload 2 /* kind */
            iconst_m1
            if_icmpne 16
        14: .line 1106
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.malformedKey:()V
        15: .line 1107
            return
        16: .line 1109
      StackMap locals:
      StackMap stack:
            iload 2 /* kind */
            ifeq 18
        17: .line 1110
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parseWildcardBound:()V
        18: .line 1111
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* kind */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeWildCard:(I)V
        19: .line 1112
            return
        end local 2 // int kind
        end local 1 // char[] source
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   20     0    this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            3   20     1  source  [C
            7   20     2    kind  I

  private void parseWildcardRank();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 1115
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipRankStart:()V
         1: .line 1116
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipRank:()V
         2: .line 1117
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.getTokenSource:()[C
            astore 1 /* source */
        start local 1 // char[] source
         3: .line 1118
            aload 0 /* this */
            new java.lang.String
            dup
            aload 1 /* source */
            invokespecial java.lang.String.<init>:([C)V
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeWildcardRank:(I)V
         4: .line 1119
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.skipRankEnd:()V
         5: .line 1120
            return
        end local 1 // char[] source
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            3    6     1  source  [C

  private void parseWildcardBound();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
         0: .line 1127
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
            istore 1 /* token */
        start local 1 // int token
         1: .line 1128
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.newParser:()Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            astore 2 /* parser */
        start local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
         2: .line 1129
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.parse:()V
         3: .line 1130
            aload 0 /* this */
            aload 2 /* parser */
            invokevirtual org.eclipse.jdt.internal.core.util.BindingKeyParser.consumeParser:(Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;)V
         4: .line 1131
            aload 0 /* this */
            aload 2 /* parser */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser.isMalformed:Z
         5: .line 1132
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.util.BindingKeyParser.scanner:Lorg/eclipse/jdt/internal/core/util/BindingKeyParser$Scanner;
            iload 1 /* token */
            putfield org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner.token:I
         6: .line 1133
            return
        end local 2 // org.eclipse.jdt.internal.core.util.BindingKeyParser parser
        end local 1 // int token
        end local 0 // org.eclipse.jdt.internal.core.util.BindingKeyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
            1    7     1   token  I
            2    7     2  parser  Lorg/eclipse/jdt/internal/core/util/BindingKeyParser;
}
SourceFile: "BindingKeyParser.java"
NestMembers:
  org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner
InnerClasses:
  Scanner = org.eclipse.jdt.internal.core.util.BindingKeyParser$Scanner of org.eclipse.jdt.internal.core.util.BindingKeyParser