public class org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver implements org.eclipse.jdt.internal.compiler.impl.ITypeRequestor
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver
  super_class: java.lang.Object
{
  private org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding focusType;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0002) ACC_PRIVATE

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

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

  org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment lookupEnvironment;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
    flags: (0x0000) 

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

  org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder builder;
    descriptor: Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
    flags: (0x0000) 

  private org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] typeBindings;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0002) ACC_PRIVATE

  private org.eclipse.jdt.internal.core.hierarchy.BindingMap<org.eclipse.jdt.internal.compiler.env.IGenericType> bindingMap;
    descriptor: Lorg/eclipse/jdt/internal/core/hierarchy/BindingMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lorg/eclipse/jdt/internal/core/hierarchy/BindingMap<Lorg/eclipse/jdt/internal/compiler/env/IGenericType;>;

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

  private org.eclipse.jdt.internal.compiler.env.IGenericType[] typeModels;
    descriptor: [Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
    flags: (0x0002) ACC_PRIVATE

  private org.eclipse.jdt.internal.compiler.parser.Parser basicParser;
    descriptor: Lorg/eclipse/jdt/internal/compiler/parser/Parser;
    flags: (0x0002) ACC_PRIVATE

  private static final org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration FakeUnit;
    descriptor: Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=3, args_size=0
         0: .line 90
            invokestatic org.eclipse.jdt.internal.compiler.DefaultErrorHandlingPolicies.exitAfterAllProblems:()Lorg/eclipse/jdt/internal/compiler/IErrorHandlingPolicy;
            astore 0 /* policy */
        start local 0 // org.eclipse.jdt.internal.compiler.IErrorHandlingPolicy policy
         1: .line 91
            new org.eclipse.jdt.internal.compiler.problem.ProblemReporter
            dup
            aload 0 /* policy */
            new org.eclipse.jdt.internal.compiler.impl.CompilerOptions
            dup
            invokespecial org.eclipse.jdt.internal.compiler.impl.CompilerOptions.<init>:()V
            new org.eclipse.jdt.internal.compiler.problem.DefaultProblemFactory
            dup
            invokespecial org.eclipse.jdt.internal.compiler.problem.DefaultProblemFactory.<init>:()V
            invokespecial org.eclipse.jdt.internal.compiler.problem.ProblemReporter.<init>:(Lorg/eclipse/jdt/internal/compiler/IErrorHandlingPolicy;Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;Lorg/eclipse/jdt/internal/compiler/IProblemFactory;)V
            astore 1 /* problemReporter */
        start local 1 // org.eclipse.jdt.internal.compiler.problem.ProblemReporter problemReporter
         2: .line 92
            new org.eclipse.jdt.internal.compiler.CompilationResult
            dup
            getstatic org.eclipse.jdt.core.compiler.CharOperation.NO_CHAR:[C
            iconst_0
            iconst_0
            iconst_0
            invokespecial org.eclipse.jdt.internal.compiler.CompilationResult.<init>:([CIII)V
            astore 2 /* result */
        start local 2 // org.eclipse.jdt.internal.compiler.CompilationResult result
         3: .line 93
            new org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration
            dup
            aload 1 /* problemReporter */
            aload 2 /* result */
            iconst_0
            invokespecial org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.<init>:(Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;Lorg/eclipse/jdt/internal/compiler/CompilationResult;I)V
            putstatic org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.FakeUnit:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
        end local 2 // org.eclipse.jdt.internal.compiler.CompilationResult result
        end local 1 // org.eclipse.jdt.internal.compiler.problem.ProblemReporter problemReporter
        end local 0 // org.eclipse.jdt.internal.compiler.IErrorHandlingPolicy policy
         4: .line 94
            return
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            1    4     0           policy  Lorg/eclipse/jdt/internal/compiler/IErrorHandlingPolicy;
            2    4     1  problemReporter  Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
            3    4     2           result  Lorg/eclipse/jdt/internal/compiler/CompilationResult;

  public void <init>(org.eclipse.jdt.internal.compiler.env.INameEnvironment, java.util.Map, org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder, org.eclipse.jdt.internal.compiler.IProblemFactory);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/INameEnvironment;Ljava/util/Map;Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;Lorg/eclipse/jdt/internal/compiler/IProblemFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.env.INameEnvironment nameEnvironment
        start local 2 // java.util.Map settings
        start local 3 // org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder builder
        start local 4 // org.eclipse.jdt.internal.compiler.IProblemFactory problemFactory
         0: .line 96
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 82
            aload 0 /* this */
            new org.eclipse.jdt.internal.core.hierarchy.BindingMap
            dup
            invokespecial org.eclipse.jdt.internal.core.hierarchy.BindingMap.<init>:()V
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.bindingMap:Lorg/eclipse/jdt/internal/core/hierarchy/BindingMap;
         2: .line 98
            aload 0 /* this */
            new org.eclipse.jdt.internal.compiler.impl.CompilerOptions
            dup
            aload 2 /* settings */
            invokespecial org.eclipse.jdt.internal.compiler.impl.CompilerOptions.<init>:(Ljava/util/Map;)V
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.options:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
         3: .line 99
            invokestatic org.eclipse.jdt.internal.compiler.DefaultErrorHandlingPolicies.exitAfterAllProblems:()Lorg/eclipse/jdt/internal/compiler/IErrorHandlingPolicy;
            astore 5 /* policy */
        start local 5 // org.eclipse.jdt.internal.compiler.IErrorHandlingPolicy policy
         4: .line 100
            new org.eclipse.jdt.internal.compiler.problem.ProblemReporter
            dup
            aload 5 /* policy */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.options:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            aload 4 /* problemFactory */
            invokespecial org.eclipse.jdt.internal.compiler.problem.ProblemReporter.<init>:(Lorg/eclipse/jdt/internal/compiler/IErrorHandlingPolicy;Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;Lorg/eclipse/jdt/internal/compiler/IProblemFactory;)V
            astore 6 /* problemReporter */
        start local 6 // org.eclipse.jdt.internal.compiler.problem.ProblemReporter problemReporter
         5: .line 102
            new org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.options:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            aload 6 /* problemReporter */
            aload 1 /* nameEnvironment */
            invokespecial org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.<init>:(Lorg/eclipse/jdt/internal/compiler/impl/ITypeRequestor;Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;Lorg/eclipse/jdt/internal/compiler/env/INameEnvironment;)V
            astore 7 /* environment */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment
         6: .line 103
            aload 7 /* environment */
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.mayTolerateMissingType:Z
         7: .line 104
            aload 0 /* this */
            aload 7 /* environment */
            aload 3 /* builder */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.setEnvironment:(Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;)V
         8: .line 105
            return
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment
        end local 6 // org.eclipse.jdt.internal.compiler.problem.ProblemReporter problemReporter
        end local 5 // org.eclipse.jdt.internal.compiler.IErrorHandlingPolicy policy
        end local 4 // org.eclipse.jdt.internal.compiler.IProblemFactory problemFactory
        end local 3 // org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder builder
        end local 2 // java.util.Map settings
        end local 1 // org.eclipse.jdt.internal.compiler.env.INameEnvironment nameEnvironment
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    9     0             this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0    9     1  nameEnvironment  Lorg/eclipse/jdt/internal/compiler/env/INameEnvironment;
            0    9     2         settings  Ljava/util/Map;
            0    9     3          builder  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            0    9     4   problemFactory  Lorg/eclipse/jdt/internal/compiler/IProblemFactory;
            4    9     5           policy  Lorg/eclipse/jdt/internal/compiler/IErrorHandlingPolicy;
            5    9     6  problemReporter  Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
            6    9     7      environment  Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
    MethodParameters:
                 Name  Flags
      nameEnvironment  
      settings         
      builder          
      problemFactory   

  public void <init>(org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment, org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment lookupEnvironment
        start local 2 // org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder builder
         0: .line 106
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 82
            aload 0 /* this */
            new org.eclipse.jdt.internal.core.hierarchy.BindingMap
            dup
            invokespecial org.eclipse.jdt.internal.core.hierarchy.BindingMap.<init>:()V
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.bindingMap:Lorg/eclipse/jdt/internal/core/hierarchy/BindingMap;
         2: .line 107
            aload 0 /* this */
            aload 1 /* lookupEnvironment */
            aload 2 /* builder */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.setEnvironment:(Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;)V
         3: .line 108
            return
        end local 2 // org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder builder
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment lookupEnvironment
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0    4     1  lookupEnvironment  Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            0    4     2            builder  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
    MethodParameters:
                   Name  Flags
      lookupEnvironment  
      builder            

  public void accept(org.eclipse.jdt.internal.compiler.env.IBinaryType, org.eclipse.jdt.internal.compiler.lookup.PackageBinding, org.eclipse.jdt.internal.compiler.env.AccessRestriction);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.PackageBinding packageBinding
        start local 3 // org.eclipse.jdt.internal.compiler.env.AccessRestriction accessRestriction
         0: .line 117
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.hierarchy:Lorg/eclipse/jdt/internal/core/hierarchy/TypeHierarchy;
            getfield org.eclipse.jdt.internal.core.hierarchy.TypeHierarchy.progressMonitor:Lorg/eclipse/core/runtime/SubMonitor;
            astore 4 /* progressMonitor */
        start local 4 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
         1: .line 118
            aload 4 /* progressMonitor */
            ifnull 3
            aload 4 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.isCanceled:()Z
            ifeq 3
         2: .line 119
            new org.eclipse.core.runtime.OperationCanceledException
            dup
            invokespecial org.eclipse.core.runtime.OperationCanceledException.<init>:()V
            athrow
         3: .line 121
      StackMap locals: org.eclipse.core.runtime.IProgressMonitor
      StackMap stack:
            aload 0 /* this */
            aload 1 /* binaryType */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.sanitizeBinaryType:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;)V
         4: .line 122
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 1 /* binaryType */
            aload 2 /* packageBinding */
            aload 3 /* accessRestriction */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createBinaryTypeFrom:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            astore 5 /* typeBinding */
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding typeBinding
         5: .line 124
            aload 0 /* this */
            aload 1 /* binaryType */
            aload 5 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.remember:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
         6: .line 125
            goto 8
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.env.IBinaryType org.eclipse.jdt.internal.compiler.lookup.PackageBinding org.eclipse.jdt.internal.compiler.env.AccessRestriction org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
         7: pop
         8: .line 128
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding typeBinding
        end local 4 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
        end local 3 // org.eclipse.jdt.internal.compiler.env.AccessRestriction accessRestriction
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.PackageBinding packageBinding
        end local 1 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    9     0               this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0    9     1         binaryType  Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;
            0    9     2     packageBinding  Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;
            0    9     3  accessRestriction  Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;
            1    9     4    progressMonitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            5    9     5        typeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
      Exception table:
        from    to  target  type
           5     6       7  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
    MethodParameters:
                   Name  Flags
      binaryType         
      packageBinding     
      accessRestriction  

  private void sanitizeBinaryType(org.eclipse.jdt.internal.compiler.env.IGenericType);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IGenericType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IGenericType binaryType
         0: .line 131
            aload 1 /* binaryType */
            instanceof org.eclipse.jdt.internal.core.hierarchy.HierarchyBinaryType
            ifeq 4
         1: .line 132
            aload 1 /* binaryType */
            checkcast org.eclipse.jdt.internal.core.hierarchy.HierarchyBinaryType
            astore 2 /* hierarchyBinaryType */
        start local 2 // org.eclipse.jdt.internal.core.hierarchy.HierarchyBinaryType hierarchyBinaryType
         2: .line 133
            aload 2 /* hierarchyBinaryType */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBinaryType.getSuperclassName:()[C
            ifnonnull 4
         3: .line 134
            aload 2 /* hierarchyBinaryType */
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.JAVA_LANG_OBJECT:[[C
            bipush 47
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.concatWith:([[CC)[C
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBinaryType.recordSuperclass:([C)V
        end local 2 // org.eclipse.jdt.internal.core.hierarchy.HierarchyBinaryType hierarchyBinaryType
         4: .line 136
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.eclipse.jdt.internal.compiler.env.IGenericType binaryType
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    5     0                 this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0    5     1           binaryType  Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            2    4     2  hierarchyBinaryType  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBinaryType;
    MethodParameters:
            Name  Flags
      binaryType  

  public void accept(org.eclipse.jdt.internal.compiler.env.ICompilationUnit, org.eclipse.jdt.internal.compiler.env.AccessRestriction);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit sourceUnit
        start local 2 // org.eclipse.jdt.internal.compiler.env.AccessRestriction accessRestriction
         0: .line 144
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.MODULE_INFO_NAME:[C
            aload 1 /* sourceUnit */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ICompilationUnit.getMainTypeName:()[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            ifeq 6
         1: .line 146
            new org.eclipse.jdt.internal.compiler.CompilationResult
            dup
            aload 1 /* sourceUnit */
            iconst_1
            iconst_1
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.options:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.maxProblemsPerUnit:I
            invokespecial org.eclipse.jdt.internal.compiler.CompilationResult.<init>:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;III)V
            astore 3 /* unitResult */
        start local 3 // org.eclipse.jdt.internal.compiler.CompilationResult unitResult
         2: .line 147
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.basicParser:()Lorg/eclipse/jdt/internal/compiler/parser/Parser;
            aload 1 /* sourceUnit */
            aload 3 /* unitResult */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Parser.dietParse:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;Lorg/eclipse/jdt/internal/compiler/CompilationResult;)Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            astore 4 /* parsedUnit */
        start local 4 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
         3: .line 148
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 4 /* parsedUnit */
            aload 2 /* accessRestriction */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.buildTypeBindings:(Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)V
         4: .line 149
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 4 /* parsedUnit */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings:(Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;Z)V
        end local 4 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
        end local 3 // org.eclipse.jdt.internal.compiler.CompilationResult unitResult
         5: .line 150
            goto 11
         6: .line 152
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.problemReporter:Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
         7: .line 153
            new java.lang.StringBuffer
            dup
            getstatic org.eclipse.jdt.internal.compiler.util.Messages.accept_cannot:Ljava/lang/String;
            invokespecial java.lang.StringBuffer.<init>:(Ljava/lang/String;)V
         8: .line 154
            aload 1 /* sourceUnit */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ICompilationUnit.getFileName:()[C
            invokevirtual java.lang.StringBuffer.append:([C)Ljava/lang/StringBuffer;
         9: .line 155
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
        10: .line 152
            invokevirtual org.eclipse.jdt.internal.compiler.problem.ProblemReporter.abortDueToInternalError:(Ljava/lang/String;)V
        11: .line 157
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.eclipse.jdt.internal.compiler.env.AccessRestriction accessRestriction
        end local 1 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit sourceUnit
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   12     0               this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0   12     1         sourceUnit  Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;
            0   12     2  accessRestriction  Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;
            2    5     3         unitResult  Lorg/eclipse/jdt/internal/compiler/CompilationResult;
            3    5     4         parsedUnit  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
    MethodParameters:
                   Name  Flags
      sourceUnit         
      accessRestriction  

  private org.eclipse.jdt.internal.compiler.parser.Parser basicParser();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/parser/Parser;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
         0: .line 159
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.basicParser:Lorg/eclipse/jdt/internal/compiler/parser/Parser;
            ifnonnull 9
         1: .line 161
            new org.eclipse.jdt.internal.compiler.problem.ProblemReporter
            dup
         2: .line 162
            invokestatic org.eclipse.jdt.internal.compiler.DefaultErrorHandlingPolicies.proceedWithAllProblems:()Lorg/eclipse/jdt/internal/compiler/IErrorHandlingPolicy;
         3: .line 163
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.options:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
         4: .line 164
            new org.eclipse.jdt.internal.compiler.problem.DefaultProblemFactory
            dup
            invokespecial org.eclipse.jdt.internal.compiler.problem.DefaultProblemFactory.<init>:()V
         5: .line 161
            invokespecial org.eclipse.jdt.internal.compiler.problem.ProblemReporter.<init>:(Lorg/eclipse/jdt/internal/compiler/IErrorHandlingPolicy;Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;Lorg/eclipse/jdt/internal/compiler/IProblemFactory;)V
         6: .line 160
            astore 1 /* problemReporter */
        start local 1 // org.eclipse.jdt.internal.compiler.problem.ProblemReporter problemReporter
         7: .line 165
            aload 0 /* this */
            new org.eclipse.jdt.internal.compiler.parser.Parser
            dup
            aload 1 /* problemReporter */
            iconst_0
            invokespecial org.eclipse.jdt.internal.compiler.parser.Parser.<init>:(Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;Z)V
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.basicParser:Lorg/eclipse/jdt/internal/compiler/parser/Parser;
         8: .line 166
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.basicParser:Lorg/eclipse/jdt/internal/compiler/parser/Parser;
            iconst_1
            putfield org.eclipse.jdt.internal.compiler.parser.Parser.reportOnlyOneSyntaxError:Z
        end local 1 // org.eclipse.jdt.internal.compiler.problem.ProblemReporter problemReporter
         9: .line 168
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.basicParser:Lorg/eclipse/jdt/internal/compiler/parser/Parser;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            7    9     1  problemReporter  Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;

  public void accept(org.eclipse.jdt.internal.compiler.env.ISourceType[], org.eclipse.jdt.internal.compiler.lookup.PackageBinding, org.eclipse.jdt.internal.compiler.env.AccessRestriction);
    descriptor: ([Lorg/eclipse/jdt/internal/compiler/env/ISourceType;Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.env.ISourceType[] sourceTypes
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.PackageBinding packageBinding
        start local 3 // org.eclipse.jdt.internal.compiler.env.AccessRestriction accessRestriction
         0: .line 178
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.hierarchy:Lorg/eclipse/jdt/internal/core/hierarchy/TypeHierarchy;
            getfield org.eclipse.jdt.internal.core.hierarchy.TypeHierarchy.progressMonitor:Lorg/eclipse/core/runtime/SubMonitor;
            astore 4 /* progressMonitor */
        start local 4 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
         1: .line 179
            aload 4 /* progressMonitor */
            ifnull 3
            aload 4 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.isCanceled:()Z
            ifeq 3
         2: .line 180
            new org.eclipse.core.runtime.OperationCanceledException
            dup
            invokespecial org.eclipse.core.runtime.OperationCanceledException.<init>:()V
            athrow
         3: .line 184
      StackMap locals: org.eclipse.core.runtime.IProgressMonitor
      StackMap stack:
            aload 1 /* sourceTypes */
            iconst_0
            aaload
            astore 5 /* sourceType */
        start local 5 // org.eclipse.jdt.internal.compiler.env.ISourceType sourceType
         4: .line 185
            goto 6
         5: .line 186
      StackMap locals: org.eclipse.jdt.internal.compiler.env.ISourceType
      StackMap stack:
            aload 5 /* sourceType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ISourceType.getEnclosingType:()Lorg/eclipse/jdt/internal/compiler/env/ISourceType;
            astore 5 /* sourceType */
         6: .line 185
      StackMap locals:
      StackMap stack:
            aload 5 /* sourceType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ISourceType.getEnclosingType:()Lorg/eclipse/jdt/internal/compiler/env/ISourceType;
            ifnonnull 5
         7: .line 189
            new org.eclipse.jdt.internal.compiler.CompilationResult
            dup
            aload 5 /* sourceType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ISourceType.getFileName:()[C
            iconst_1
            iconst_1
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.options:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.maxProblemsPerUnit:I
            invokespecial org.eclipse.jdt.internal.compiler.CompilationResult.<init>:([CIII)V
            astore 6 /* result */
        start local 6 // org.eclipse.jdt.internal.compiler.CompilationResult result
         8: .line 192
            iconst_1
            anewarray org.eclipse.jdt.internal.compiler.env.ISourceType
            dup
            iconst_0
            aload 5 /* sourceType */
            aastore
         9: .line 193
            bipush 8
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.globalOptions:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.sourceLevel:J
            ldc 3407872
            lcmp
            iflt 10
            iconst_4
            goto 11
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.env.ISourceType[] org.eclipse.jdt.internal.compiler.lookup.PackageBinding org.eclipse.jdt.internal.compiler.env.AccessRestriction org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.compiler.env.ISourceType org.eclipse.jdt.internal.compiler.CompilationResult
      StackMap stack: org.eclipse.jdt.internal.compiler.env.ISourceType[] int
        10: iconst_0
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.env.ISourceType[] org.eclipse.jdt.internal.compiler.lookup.PackageBinding org.eclipse.jdt.internal.compiler.env.AccessRestriction org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.compiler.env.ISourceType org.eclipse.jdt.internal.compiler.CompilationResult
      StackMap stack: org.eclipse.jdt.internal.compiler.env.ISourceType[] int int
        11: ior
        12: .line 195
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.problemReporter:Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
        13: .line 196
            aload 6 /* result */
        14: .line 191
            invokestatic org.eclipse.jdt.internal.compiler.parser.SourceTypeConverter.buildCompilationUnit:([Lorg/eclipse/jdt/internal/compiler/env/ISourceType;ILorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;Lorg/eclipse/jdt/internal/compiler/CompilationResult;)Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
        15: .line 190
            astore 7 /* unit */
        start local 7 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration unit
        16: .line 199
            aload 7 /* unit */
            ifnull 26
        17: .line 201
            aload 2 /* packageBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.PackageBinding.environment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            astore 8 /* environment */
        start local 8 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment
        18: .line 202
            aload 8 /* environment */
            ifnonnull 20
        19: .line 203
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            astore 8 /* environment */
        20: .line 204
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment
      StackMap stack:
            aload 8 /* environment */
            aload 7 /* unit */
            aload 3 /* accessRestriction */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.buildTypeBindings:(Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)V
        21: .line 206
            aload 5 /* sourceType */
            checkcast org.eclipse.jdt.internal.core.SourceTypeElementInfo
            invokevirtual org.eclipse.jdt.internal.core.SourceTypeElementInfo.getHandle:()Lorg/eclipse/jdt/core/IType;
            invokeinterface org.eclipse.jdt.core.IType.getCompilationUnit:()Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 9 /* cu */
        start local 9 // org.eclipse.jdt.core.ICompilationUnit cu
        22: .line 207
            aload 0 /* this */
            aload 7 /* unit */
            aload 9 /* cu */
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.rememberAllTypes:(Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;Lorg/eclipse/jdt/core/ICompilationUnit;Z)V
        23: .line 209
            aload 8 /* environment */
            aload 7 /* unit */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings:(Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;Z)V
        end local 9 // org.eclipse.jdt.core.ICompilationUnit cu
        end local 8 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment environment
        24: .line 210
            goto 26
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.env.ISourceType[] org.eclipse.jdt.internal.compiler.lookup.PackageBinding org.eclipse.jdt.internal.compiler.env.AccessRestriction org.eclipse.core.runtime.IProgressMonitor org.eclipse.jdt.internal.compiler.env.ISourceType org.eclipse.jdt.internal.compiler.CompilationResult org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
        25: pop
        26: .line 214
      StackMap locals:
      StackMap stack:
            return
        end local 7 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration unit
        end local 6 // org.eclipse.jdt.internal.compiler.CompilationResult result
        end local 5 // org.eclipse.jdt.internal.compiler.env.ISourceType sourceType
        end local 4 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
        end local 3 // org.eclipse.jdt.internal.compiler.env.AccessRestriction accessRestriction
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.PackageBinding packageBinding
        end local 1 // org.eclipse.jdt.internal.compiler.env.ISourceType[] sourceTypes
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   27     0               this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0   27     1        sourceTypes  [Lorg/eclipse/jdt/internal/compiler/env/ISourceType;
            0   27     2     packageBinding  Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;
            0   27     3  accessRestriction  Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;
            1   27     4    progressMonitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            4   27     5         sourceType  Lorg/eclipse/jdt/internal/compiler/env/ISourceType;
            8   27     6             result  Lorg/eclipse/jdt/internal/compiler/CompilationResult;
           16   27     7               unit  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
           18   24     8        environment  Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
           22   24     9                 cu  Lorg/eclipse/jdt/core/ICompilationUnit;
      Exception table:
        from    to  target  type
          17    24      25  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
    MethodParameters:
                   Name  Flags
      sourceTypes        
      packageBinding     
      accessRestriction  

  private org.eclipse.jdt.core.IType findSuperClass(org.eclipse.jdt.internal.compiler.env.IGenericType, org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Lorg/eclipse/jdt/core/IType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IGenericType type
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
         0: .line 221
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 3 /* superBinding */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding superBinding
         1: .line 223
            aload 3 /* superBinding */
            ifnull 34
         2: .line 224
            aload 3 /* superBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.erasure:()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 3 /* superBinding */
         3: .line 225
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isHierarchyInconsistent:()Z
            ifeq 31
         4: .line 226
            aload 3 /* superBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.problemId:()I
            iconst_1
            if_icmpne 8
         5: .line 227
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.hasMissingSuperClass:Z
         6: .line 228
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.hierarchy:Lorg/eclipse/jdt/internal/core/hierarchy/TypeHierarchy;
            getfield org.eclipse.jdt.internal.core.hierarchy.TypeHierarchy.missingTypes:Ljava/util/ArrayList;
            new java.lang.String
            dup
            aload 3 /* superBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sourceName:[C
            invokespecial java.lang.String.<init>:([C)V
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         7: .line 229
            aconst_null
            areturn
         8: .line 230
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
            aload 3 /* superBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.id:I
            iconst_1
            if_icmpne 31
         9: .line 233
            aload 1 /* type */
            instanceof org.eclipse.jdt.internal.compiler.env.IBinaryType
            ifeq 13
        10: .line 234
            aload 1 /* type */
            checkcast org.eclipse.jdt.internal.compiler.env.IBinaryType
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getSuperclassName:()[C
            astore 4 /* superclassName */
        start local 4 // char[] superclassName
        11: .line 235
            bipush 47
            istore 5 /* separator */
        start local 5 // char separator
        12: .line 236
            goto 22
        end local 5 // char separator
        end local 4 // char[] superclassName
      StackMap locals:
      StackMap stack:
        13: aload 1 /* type */
            instanceof org.eclipse.jdt.internal.compiler.env.ISourceType
            ifeq 17
        14: .line 237
            aload 1 /* type */
            checkcast org.eclipse.jdt.internal.compiler.env.ISourceType
            invokeinterface org.eclipse.jdt.internal.compiler.env.ISourceType.getSuperclassName:()[C
            astore 4 /* superclassName */
        start local 4 // char[] superclassName
        15: .line 238
            bipush 46
            istore 5 /* separator */
        start local 5 // char separator
        16: .line 239
            goto 22
        end local 5 // char separator
        end local 4 // char[] superclassName
      StackMap locals:
      StackMap stack:
        17: aload 1 /* type */
            instanceof org.eclipse.jdt.internal.core.hierarchy.HierarchyType
            ifeq 21
        18: .line 240
            aload 1 /* type */
            checkcast org.eclipse.jdt.internal.core.hierarchy.HierarchyType
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyType.superclassName:[C
            astore 4 /* superclassName */
        start local 4 // char[] superclassName
        19: .line 241
            bipush 46
            istore 5 /* separator */
        start local 5 // char separator
        20: .line 242
            goto 22
        end local 5 // char separator
        end local 4 // char[] superclassName
        21: .line 243
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        start local 4 // char[] superclassName
        start local 5 // char separator
        22: .line 246
      StackMap locals: char[] int
      StackMap stack:
            aload 4 /* superclassName */
            ifnull 31
        23: .line 247
            iload 5 /* separator */
            aload 4 /* superclassName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.lastIndexOf:(C[C)I
            istore 6 /* lastSeparator */
        start local 6 // int lastSeparator
        24: .line 248
            iload 6 /* lastSeparator */
            iconst_m1
            if_icmpne 25
            aload 4 /* superclassName */
            goto 26
      StackMap locals: int
      StackMap stack:
        25: aload 4 /* superclassName */
            iload 6 /* lastSeparator */
            iconst_1
            iadd
            aload 4 /* superclassName */
            arraylength
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
      StackMap locals:
      StackMap stack: char[]
        26: astore 7 /* simpleName */
        start local 7 // char[] simpleName
        27: .line 249
            aload 7 /* simpleName */
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.OBJECT:[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            ifne 31
        28: .line 250
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.hasMissingSuperClass:Z
        29: .line 251
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.hierarchy:Lorg/eclipse/jdt/internal/core/hierarchy/TypeHierarchy;
            getfield org.eclipse.jdt.internal.core.hierarchy.TypeHierarchy.missingTypes:Ljava/util/ArrayList;
            new java.lang.String
            dup
            aload 7 /* simpleName */
            invokespecial java.lang.String.<init>:([C)V
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        30: .line 252
            aconst_null
            areturn
        end local 7 // char[] simpleName
        end local 6 // int lastSeparator
        end local 5 // char separator
        end local 4 // char[] superclassName
        31: .line 257
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.bindingMap:Lorg/eclipse/jdt/internal/core/hierarchy/BindingMap;
            aload 3 /* superBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.BindingMap.get:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.compiler.env.IGenericType
            astore 4 /* typeModel */
        start local 4 // org.eclipse.jdt.internal.compiler.env.IGenericType typeModel
        32: .line 258
            aload 4 /* typeModel */
            ifnull 34
        33: .line 259
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            aload 4 /* typeModel */
            aload 3 /* superBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.getHandle:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Lorg/eclipse/jdt/core/IType;
            areturn
        end local 4 // org.eclipse.jdt.internal.compiler.env.IGenericType typeModel
        34: .line 262
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding superBinding
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
        end local 1 // org.eclipse.jdt.internal.compiler.env.IGenericType type
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   35     0            this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0   35     1            type  Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            0   35     2     typeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            1   35     3    superBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           11   13     4  superclassName  [C
           15   17     4  superclassName  [C
           19   21     4  superclassName  [C
           22   31     4  superclassName  [C
           12   13     5       separator  C
           16   17     5       separator  C
           20   21     5       separator  C
           22   31     5       separator  C
           24   31     6   lastSeparator  I
           27   31     7      simpleName  [C
           32   34     4       typeModel  Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
    MethodParameters:
             Name  Flags
      type         
      typeBinding  

  private org.eclipse.jdt.core.IType[] findSuperInterfaces(org.eclipse.jdt.internal.compiler.env.IGenericType, org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)[Lorg/eclipse/jdt/core/IType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=22, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IGenericType type
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
         0: .line 271
            aload 1 /* type */
            instanceof org.eclipse.jdt.internal.compiler.env.IBinaryType
            ifeq 4
         1: .line 272
            aload 1 /* type */
            checkcast org.eclipse.jdt.internal.compiler.env.IBinaryType
            invokeinterface org.eclipse.jdt.internal.compiler.env.IBinaryType.getInterfaceNames:()[[C
            astore 3 /* superInterfaceNames */
        start local 3 // char[][] superInterfaceNames
         2: .line 273
            bipush 47
            istore 4 /* separator */
        start local 4 // char separator
         3: .line 274
            goto 30
        end local 4 // char separator
        end local 3 // char[][] superInterfaceNames
      StackMap locals:
      StackMap stack:
         4: aload 1 /* type */
            instanceof org.eclipse.jdt.internal.compiler.env.ISourceType
            ifeq 18
         5: .line 275
            aload 1 /* type */
            checkcast org.eclipse.jdt.internal.compiler.env.ISourceType
            astore 5 /* sourceType */
        start local 5 // org.eclipse.jdt.internal.compiler.env.ISourceType sourceType
         6: .line 276
            aload 5 /* sourceType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ISourceType.isAnonymous:()Z
            ifeq 12
         7: .line 277
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnull 10
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            ifle 10
         8: .line 278
            iconst_1
            anewarray char[]
            dup
            iconst_0
            aload 5 /* sourceType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ISourceType.getSuperclassName:()[C
            aastore
            astore 3 /* superInterfaceNames */
        start local 3 // char[][] superInterfaceNames
         9: .line 279
            goto 16
        end local 3 // char[][] superInterfaceNames
        10: .line 280
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.env.IGenericType org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding top top org.eclipse.jdt.internal.compiler.env.ISourceType
      StackMap stack:
            aload 5 /* sourceType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ISourceType.getInterfaceNames:()[[C
            astore 3 /* superInterfaceNames */
        start local 3 // char[][] superInterfaceNames
        11: .line 282
            goto 16
        end local 3 // char[][] superInterfaceNames
        12: .line 283
      StackMap locals:
      StackMap stack:
            aload 5 /* sourceType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ISourceType.getModifiers:()I
            invokestatic org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.kind:(I)I
            iconst_4
            if_icmpne 15
        13: .line 284
            iconst_1
            anewarray char[]
            dup
            iconst_0
            getstatic org.eclipse.jdt.internal.compiler.lookup.TypeConstants.CharArray_JAVA_LANG_ANNOTATION_ANNOTATION:[C
            aastore
            astore 3 /* superInterfaceNames */
        start local 3 // char[][] superInterfaceNames
        14: goto 16
        end local 3 // char[][] superInterfaceNames
        15: .line 286
      StackMap locals:
      StackMap stack:
            aload 5 /* sourceType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.ISourceType.getInterfaceNames:()[[C
            astore 3 /* superInterfaceNames */
        start local 3 // char[][] superInterfaceNames
        16: .line 288
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.env.IGenericType org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding char[][] top org.eclipse.jdt.internal.compiler.env.ISourceType
      StackMap stack:
            bipush 46
            istore 4 /* separator */
        end local 5 // org.eclipse.jdt.internal.compiler.env.ISourceType sourceType
        start local 4 // char separator
        17: .line 289
            goto 30
        end local 4 // char separator
        end local 3 // char[][] superInterfaceNames
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.env.IGenericType org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
        18: aload 1 /* type */
            instanceof org.eclipse.jdt.internal.core.hierarchy.HierarchyType
            ifeq 29
        19: .line 290
            aload 1 /* type */
            checkcast org.eclipse.jdt.internal.core.hierarchy.HierarchyType
            astore 5 /* hierarchyType */
        start local 5 // org.eclipse.jdt.internal.core.hierarchy.HierarchyType hierarchyType
        20: .line 291
            aload 5 /* hierarchyType */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyType.isAnonymous:()Z
            ifeq 26
        21: .line 292
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnull 24
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            arraylength
            ifle 24
        22: .line 293
            iconst_1
            anewarray char[]
            dup
            iconst_0
            aload 5 /* hierarchyType */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyType.superclassName:[C
            aastore
            astore 3 /* superInterfaceNames */
        start local 3 // char[][] superInterfaceNames
        23: .line 294
            goto 27
        end local 3 // char[][] superInterfaceNames
        24: .line 295
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.env.IGenericType org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding top top org.eclipse.jdt.internal.core.hierarchy.HierarchyType
      StackMap stack:
            aload 5 /* hierarchyType */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyType.superInterfaceNames:[[C
            astore 3 /* superInterfaceNames */
        start local 3 // char[][] superInterfaceNames
        25: .line 297
            goto 27
        end local 3 // char[][] superInterfaceNames
        26: .line 298
      StackMap locals:
      StackMap stack:
            aload 5 /* hierarchyType */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyType.superInterfaceNames:[[C
            astore 3 /* superInterfaceNames */
        start local 3 // char[][] superInterfaceNames
        27: .line 300
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.env.IGenericType org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding char[][] top org.eclipse.jdt.internal.core.hierarchy.HierarchyType
      StackMap stack:
            bipush 46
            istore 4 /* separator */
        end local 5 // org.eclipse.jdt.internal.core.hierarchy.HierarchyType hierarchyType
        start local 4 // char separator
        28: .line 301
            goto 30
        end local 4 // char separator
        end local 3 // char[][] superInterfaceNames
        29: .line 302
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.env.IGenericType org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
            aconst_null
            areturn
        start local 3 // char[][] superInterfaceNames
        start local 4 // char separator
        30: .line 305
      StackMap locals: char[][] int
      StackMap stack:
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 5 /* interfaceBindings */
        start local 5 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] interfaceBindings
        31: .line 306
            iconst_0
            istore 6 /* bindingIndex */
        start local 6 // int bindingIndex
        32: .line 307
            aload 5 /* interfaceBindings */
            ifnonnull 33
            iconst_0
            goto 34
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] int
      StackMap stack:
        33: aload 5 /* interfaceBindings */
            arraylength
      StackMap locals:
      StackMap stack: int
        34: istore 7 /* bindingLength */
        start local 7 // int bindingLength
        35: .line 308
            aload 3 /* superInterfaceNames */
            ifnonnull 36
            iconst_0
            goto 37
      StackMap locals: int
      StackMap stack:
        36: aload 3 /* superInterfaceNames */
            arraylength
      StackMap locals:
      StackMap stack: int
        37: istore 8 /* length */
        start local 8 // int length
        38: .line 309
            iload 8 /* length */
            anewarray org.eclipse.jdt.core.IType
            astore 9 /* superinterfaces */
        start local 9 // org.eclipse.jdt.core.IType[] superinterfaces
        39: .line 310
            iconst_0
            istore 10 /* index */
        start local 10 // int index
        40: .line 311
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        41: goto 63
        42: .line 312
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.env.IGenericType org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding char[][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] int int int org.eclipse.jdt.core.IType[] int int
      StackMap stack:
            aload 3 /* superInterfaceNames */
            iload 11 /* i */
            aaload
            astore 12 /* superInterfaceName */
        start local 12 // char[] superInterfaceName
        43: .line 313
            aload 12 /* superInterfaceName */
            arraylength
            istore 13 /* end */
        start local 13 // int end
        44: .line 316
            bipush 60
            aload 12 /* superInterfaceName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.indexOf:(C[C)I
            istore 14 /* genericStart */
        start local 14 // int genericStart
        45: .line 317
            iload 14 /* genericStart */
            iconst_m1
            if_icmpeq 46
            iload 14 /* genericStart */
            istore 13 /* end */
        46: .line 320
      StackMap locals: char[] int int
      StackMap stack:
            iload 4 /* separator */
            aload 12 /* superInterfaceName */
            iconst_0
            iload 13 /* end */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.lastIndexOf:(C[CII)I
            istore 15 /* lastSeparator */
        start local 15 // int lastSeparator
        47: .line 321
            iload 15 /* lastSeparator */
            iconst_1
            iadd
            istore 16 /* start */
        start local 16 // int start
        48: .line 324
            bipush 36
            aload 12 /* superInterfaceName */
            iload 16 /* start */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.lastIndexOf:(C[CI)I
            istore 17 /* lastDollar */
        start local 17 // int lastDollar
        49: .line 325
            iload 17 /* lastDollar */
            iconst_m1
            if_icmpeq 50
            iload 17 /* lastDollar */
            iconst_1
            iadd
            istore 16 /* start */
        50: .line 327
      StackMap locals: int int int
      StackMap stack:
            aload 12 /* superInterfaceName */
            iload 16 /* start */
            iload 13 /* end */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            astore 18 /* simpleName */
        start local 18 // char[] simpleName
        51: .line 329
            iload 6 /* bindingIndex */
            iload 7 /* bindingLength */
            if_icmpge 61
        52: .line 330
            aload 5 /* interfaceBindings */
            iload 6 /* bindingIndex */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.erasure:()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 19 /* interfaceBinding */
        start local 19 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding interfaceBinding
        53: .line 333
            aload 18 /* simpleName */
            aload 19 /* interfaceBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sourceName:[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
            ifeq 61
        54: .line 334
            iinc 6 /* bindingIndex */ 1
        55: .line 335
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.bindingMap:Lorg/eclipse/jdt/internal/core/hierarchy/BindingMap;
            aload 19 /* interfaceBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.BindingMap.get:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.compiler.env.IGenericType
            astore 20 /* genericType */
        start local 20 // org.eclipse.jdt.internal.compiler.env.IGenericType genericType
        56: .line 336
            aload 20 /* genericType */
            ifnull 61
        57: .line 337
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            aload 20 /* genericType */
            aload 19 /* interfaceBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.getHandle:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Lorg/eclipse/jdt/core/IType;
            astore 21 /* handle */
        start local 21 // org.eclipse.jdt.core.IType handle
        58: .line 338
            aload 21 /* handle */
            ifnull 61
        59: .line 339
            aload 9 /* superinterfaces */
            iload 10 /* index */
            iinc 10 /* index */ 1
            aload 21 /* handle */
            aastore
        60: .line 340
            goto 62
        end local 21 // org.eclipse.jdt.core.IType handle
        end local 20 // org.eclipse.jdt.internal.compiler.env.IGenericType genericType
        end local 19 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding interfaceBinding
        61: .line 345
      StackMap locals: char[]
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.hierarchy:Lorg/eclipse/jdt/internal/core/hierarchy/TypeHierarchy;
            getfield org.eclipse.jdt.internal.core.hierarchy.TypeHierarchy.missingTypes:Ljava/util/ArrayList;
            new java.lang.String
            dup
            aload 18 /* simpleName */
            invokespecial java.lang.String.<init>:([C)V
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 18 // char[] simpleName
        end local 17 // int lastDollar
        end local 16 // int start
        end local 15 // int lastSeparator
        end local 14 // int genericStart
        end local 13 // int end
        end local 12 // char[] superInterfaceName
        62: .line 311
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.env.IGenericType org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding char[][] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] int int int org.eclipse.jdt.core.IType[] int int
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        63: iload 11 /* i */
            iload 8 /* length */
            if_icmplt 42
        end local 11 // int i
        64: .line 347
            iload 10 /* index */
            iload 8 /* length */
            if_icmpeq 66
        65: .line 348
            aload 9 /* superinterfaces */
            iconst_0
            iload 10 /* index */
            anewarray org.eclipse.jdt.core.IType
            dup
            astore 9 /* superinterfaces */
            iconst_0
            iload 10 /* index */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        66: .line 349
      StackMap locals:
      StackMap stack:
            aload 9 /* superinterfaces */
            areturn
        end local 10 // int index
        end local 9 // org.eclipse.jdt.core.IType[] superinterfaces
        end local 8 // int length
        end local 7 // int bindingLength
        end local 6 // int bindingIndex
        end local 5 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] interfaceBindings
        end local 4 // char separator
        end local 3 // char[][] superInterfaceNames
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
        end local 1 // org.eclipse.jdt.internal.compiler.env.IGenericType type
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   67     0                 this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0   67     1                 type  Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            0   67     2          typeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            2    4     3  superInterfaceNames  [[C
            9   10     3  superInterfaceNames  [[C
           11   12     3  superInterfaceNames  [[C
           14   15     3  superInterfaceNames  [[C
           16   18     3  superInterfaceNames  [[C
           23   24     3  superInterfaceNames  [[C
           25   26     3  superInterfaceNames  [[C
           27   29     3  superInterfaceNames  [[C
           30   67     3  superInterfaceNames  [[C
            3    4     4            separator  C
           17   18     4            separator  C
           28   29     4            separator  C
           30   67     4            separator  C
            6   17     5           sourceType  Lorg/eclipse/jdt/internal/compiler/env/ISourceType;
           20   28     5        hierarchyType  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyType;
           31   67     5    interfaceBindings  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           32   67     6         bindingIndex  I
           35   67     7        bindingLength  I
           38   67     8               length  I
           39   67     9      superinterfaces  [Lorg/eclipse/jdt/core/IType;
           40   67    10                index  I
           41   64    11                    i  I
           43   62    12   superInterfaceName  [C
           44   62    13                  end  I
           45   62    14         genericStart  I
           47   62    15        lastSeparator  I
           48   62    16                start  I
           49   62    17           lastDollar  I
           51   62    18           simpleName  [C
           53   61    19     interfaceBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           56   61    20          genericType  Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
           58   61    21               handle  Lorg/eclipse/jdt/core/IType;
    MethodParameters:
             Name  Flags
      type         
      typeBinding  

  private void fixSupertypeBindings();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=13, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
         0: .line 356
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            istore 1 /* current */
        start local 1 // int current
         1: goto 63
         2: .line 357
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeBindings:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 1 /* current */
            aaload
            astore 2 /* typeBinding */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
         3: .line 358
            aload 2 /* typeBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.tagBits:J
            ldc 131072
            land
            lconst_0
            lcmp
            ifne 5
         4: .line 359
            goto 62
         5: .line 361
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
            aload 2 /* typeBinding */
            instanceof org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding
            ifeq 51
         6: .line 362
            aload 2 /* typeBinding */
            instanceof org.eclipse.jdt.internal.compiler.lookup.LocalTypeBinding
            ifeq 13
         7: .line 363
            aload 2 /* typeBinding */
            checkcast org.eclipse.jdt.internal.compiler.lookup.LocalTypeBinding
            astore 3 /* localTypeBinding */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.LocalTypeBinding localTypeBinding
         8: .line 364
            aload 3 /* localTypeBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalTypeBinding.scope:Lorg/eclipse/jdt/internal/compiler/lookup/ClassScope;
            getfield org.eclipse.jdt.internal.compiler.lookup.ClassScope.referenceContext:Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.allocation:Lorg/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression;
            astore 4 /* allocationExpression */
        start local 4 // org.eclipse.jdt.internal.compiler.ast.QualifiedAllocationExpression allocationExpression
         9: .line 366
            aload 4 /* allocationExpression */
            ifnull 13
            aload 4 /* allocationExpression */
            getfield org.eclipse.jdt.internal.compiler.ast.QualifiedAllocationExpression.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            dup
            astore 5 /* type */
        start local 5 // org.eclipse.jdt.internal.compiler.ast.TypeReference type
        10: ifnull 13
            aload 5 /* type */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            ifnull 13
        11: .line 367
            aload 3 /* localTypeBinding */
            aload 5 /* type */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LocalTypeBinding.setSuperClass:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        12: .line 368
            goto 62
        end local 5 // org.eclipse.jdt.internal.compiler.ast.TypeReference type
        end local 4 // org.eclipse.jdt.internal.compiler.ast.QualifiedAllocationExpression allocationExpression
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.LocalTypeBinding localTypeBinding
        13: .line 371
      StackMap locals:
      StackMap stack:
            aload 2 /* typeBinding */
            checkcast org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding
            getfield org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.scope:Lorg/eclipse/jdt/internal/compiler/lookup/ClassScope;
            astore 3 /* scope */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.ClassScope scope
        14: .line 372
            aload 3 /* scope */
            ifnull 62
        15: .line 373
            aload 3 /* scope */
            getfield org.eclipse.jdt.internal.compiler.lookup.ClassScope.referenceContext:Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            astore 4 /* typeDeclaration */
        start local 4 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDeclaration
        16: .line 374
            aload 4 /* typeDeclaration */
            ifnonnull 17
            aconst_null
            goto 18
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ClassScope org.eclipse.jdt.internal.compiler.ast.TypeDeclaration
      StackMap stack:
        17: aload 4 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.superclass:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.ast.TypeReference
        18: astore 5 /* superclassRef */
        start local 5 // org.eclipse.jdt.internal.compiler.ast.TypeReference superclassRef
        19: .line 375
            aload 5 /* superclassRef */
            ifnonnull 20
            aconst_null
            goto 21
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TypeReference
      StackMap stack:
        20: aload 5 /* superclassRef */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.lookup.TypeBinding
        21: astore 6 /* superclass */
        start local 6 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding superclass
        22: .line 376
            aload 6 /* superclass */
            ifnull 24
        23: .line 377
            aload 6 /* superclass */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.closestMatch:()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 6 /* superclass */
        24: .line 379
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeBinding
      StackMap stack:
            aload 6 /* superclass */
            instanceof org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            ifeq 27
        25: .line 381
            aload 0 /* this */
            aload 6 /* superclass */
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.subTypeOfType:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Z
            ifne 27
        26: .line 382
            aload 2 /* typeBinding */
            checkcast org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding
            aload 6 /* superclass */
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.setSuperClass:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        27: .line 386
      StackMap locals:
      StackMap stack:
            aload 4 /* typeDeclaration */
            ifnonnull 28
            aconst_null
            goto 29
      StackMap locals:
      StackMap stack:
        28: aload 4 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.ast.TypeReference[]
        29: astore 7 /* superInterfaces */
        start local 7 // org.eclipse.jdt.internal.compiler.ast.TypeReference[] superInterfaces
        30: .line 388
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 9 /* interfaceBindings */
        start local 9 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] interfaceBindings
        31: .line 389
            aload 7 /* superInterfaces */
            ifnull 62
            aload 7 /* superInterfaces */
            arraylength
            dup
            istore 8 /* length */
        start local 8 // int length
        32: aload 9 /* interfaceBindings */
            ifnonnull 33
            iconst_0
            goto 34
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.ClassScope org.eclipse.jdt.internal.compiler.ast.TypeDeclaration org.eclipse.jdt.internal.compiler.ast.TypeReference org.eclipse.jdt.internal.compiler.lookup.TypeBinding org.eclipse.jdt.internal.compiler.ast.TypeReference[] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[]
      StackMap stack: int
        33: aload 9 /* interfaceBindings */
            arraylength
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.internal.compiler.lookup.ClassScope org.eclipse.jdt.internal.compiler.ast.TypeDeclaration org.eclipse.jdt.internal.compiler.ast.TypeReference org.eclipse.jdt.internal.compiler.lookup.TypeBinding org.eclipse.jdt.internal.compiler.ast.TypeReference[] int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[]
      StackMap stack: int int
        34: if_icmple 62
        35: .line 390
            iload 8 /* length */
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 9 /* interfaceBindings */
        36: .line 391
            iconst_0
            istore 10 /* index */
        start local 10 // int index
        37: .line 392
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        38: goto 46
        39: .line 393
      StackMap locals: int int
      StackMap stack:
            aload 7 /* superInterfaces */
            iload 11 /* i */
            aaload
            getfield org.eclipse.jdt.internal.compiler.ast.TypeReference.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 12 /* superInterface */
        start local 12 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding superInterface
        40: .line 394
            aload 12 /* superInterface */
            ifnull 42
        41: .line 395
            aload 12 /* superInterface */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.closestMatch:()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            astore 12 /* superInterface */
        42: .line 397
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.TypeBinding
      StackMap stack:
            aload 12 /* superInterface */
            instanceof org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            ifeq 45
        43: .line 399
            aload 0 /* this */
            aload 12 /* superInterface */
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.subTypeOfType:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Z
            ifne 45
        44: .line 400
            aload 9 /* interfaceBindings */
            iload 10 /* index */
            iinc 10 /* index */ 1
            aload 12 /* superInterface */
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            aastore
        end local 12 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding superInterface
        45: .line 392
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        46: iload 11 /* i */
            iload 8 /* length */
            if_icmplt 39
        end local 11 // int i
        47: .line 404
            iload 10 /* index */
            iload 8 /* length */
            if_icmpge 49
        48: .line 405
            aload 9 /* interfaceBindings */
            iconst_0
            iload 10 /* index */
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            dup
            astore 9 /* interfaceBindings */
            iconst_0
            iload 10 /* index */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        49: .line 406
      StackMap locals:
      StackMap stack:
            aload 2 /* typeBinding */
            checkcast org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding
            aload 9 /* interfaceBindings */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.setSuperInterfaces:([Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        end local 10 // int index
        end local 9 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] interfaceBindings
        end local 8 // int length
        end local 7 // org.eclipse.jdt.internal.compiler.ast.TypeReference[] superInterfaces
        end local 6 // org.eclipse.jdt.internal.compiler.lookup.TypeBinding superclass
        end local 5 // org.eclipse.jdt.internal.compiler.ast.TypeReference superclassRef
        end local 4 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDeclaration
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.ClassScope scope
        50: .line 409
            goto 62
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver int org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
        51: aload 2 /* typeBinding */
            instanceof org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding
            ifeq 62
        52: .line 411
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        53: .line 412
            goto 58
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
        54: pop
        55: .line 414
            aload 2 /* typeBinding */
            checkcast org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc -33554433
            land
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        56: .line 415
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.hierarchy:Lorg/eclipse/jdt/internal/core/hierarchy/TypeHierarchy;
            getfield org.eclipse.jdt.internal.core.hierarchy.TypeHierarchy.missingTypes:Ljava/util/ArrayList;
            new java.lang.String
            dup
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sourceName:()[C
            invokespecial java.lang.String.<init>:([C)V
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        57: .line 416
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.hasMissingSuperClass:Z
        58: .line 419
      StackMap locals:
      StackMap stack:
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        59: .line 420
            goto 62
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
        60: pop
        61: .line 422
            aload 2 /* typeBinding */
            checkcast org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding
            dup
            getfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
            ldc -67108865
            land
            putfield org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding.tagBits:J
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
        62: .line 356
      StackMap locals:
      StackMap stack:
            iinc 1 /* current */ -1
      StackMap locals:
      StackMap stack:
        63: iload 1 /* current */
            ifge 2
        end local 1 // int current
        64: .line 426
            return
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   65     0                  this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            1   64     1               current  I
            3   62     2           typeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            8   13     3      localTypeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding;
            9   13     4  allocationExpression  Lorg/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression;
           10   13     5                  type  Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
           14   50     3                 scope  Lorg/eclipse/jdt/internal/compiler/lookup/ClassScope;
           16   50     4       typeDeclaration  Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
           19   50     5         superclassRef  Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
           22   50     6            superclass  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
           30   50     7       superInterfaces  [Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
           32   50     8                length  I
           31   50     9     interfaceBindings  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           37   50    10                 index  I
           38   47    11                     i  I
           40   45    12        superInterface  Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
      Exception table:
        from    to  target  type
          52    53      54  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
          58    59      60  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation

  private void remember(org.eclipse.jdt.internal.compiler.env.IGenericType, org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IGenericType suppliedType
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
         0: .line 428
            aload 2 /* typeBinding */
            ifnonnull 1
            return
         1: .line 430
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            iconst_1
            iadd
            dup_x1
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeModels:[Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            arraylength
            if_icmpne 4
         2: .line 431
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeModels:[Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            iconst_0
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            iconst_2
            imul
            anewarray org.eclipse.jdt.internal.compiler.env.IGenericType
            dup_x1
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeModels:[Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         3: .line 432
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeBindings:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iconst_0
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            iconst_2
            imul
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            dup_x1
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeBindings:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         4: .line 434
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeModels:[Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            aload 1 /* suppliedType */
            aastore
         5: .line 435
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeBindings:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            aload 2 /* typeBinding */
            aastore
         6: .line 436
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.bindingMap:Lorg/eclipse/jdt/internal/core/hierarchy/BindingMap;
            aload 2 /* typeBinding */
            aload 1 /* suppliedType */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.BindingMap.put:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Ljava/lang/Object;)V
         7: .line 437
            return
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
        end local 1 // org.eclipse.jdt.internal.compiler.env.IGenericType suppliedType
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0          this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0    8     1  suppliedType  Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            0    8     2   typeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    MethodParameters:
              Name  Flags
      suppliedType  
      typeBinding   

  private void remember(org.eclipse.jdt.core.IType, org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding);
    descriptor: (Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=11, locals=13, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.core.IType type
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
         0: .line 439
            aload 1 /* type */
            invokeinterface org.eclipse.jdt.core.IType.getCompilationUnit:()Lorg/eclipse/jdt/core/ICompilationUnit;
            checkcast org.eclipse.jdt.internal.core.CompilationUnit
            invokevirtual org.eclipse.jdt.internal.core.CompilationUnit.isOpen:()Z
            ifeq 6
         1: .line 441
            aload 1 /* type */
            checkcast org.eclipse.jdt.internal.core.JavaElement
            invokevirtual org.eclipse.jdt.internal.core.JavaElement.getElementInfo:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.compiler.env.IGenericType
            astore 3 /* genericType */
        start local 3 // org.eclipse.jdt.internal.compiler.env.IGenericType genericType
         2: .line 442
            aload 0 /* this */
            aload 3 /* genericType */
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.remember:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
        end local 3 // org.eclipse.jdt.internal.compiler.env.IGenericType genericType
         3: .line 443
            goto 54
      StackMap locals:
      StackMap stack: org.eclipse.jdt.core.JavaModelException
         4: pop
         5: .line 445
            return
         6: .line 448
      StackMap locals:
      StackMap stack:
            aload 2 /* typeBinding */
            ifnonnull 7
            return
         7: .line 449
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* isAnonymous */
        start local 3 // boolean isAnonymous
         8: .line 451
            aload 1 /* type */
            invokeinterface org.eclipse.jdt.core.IType.isAnonymous:()Z
            istore 3 /* isAnonymous */
         9: .line 452
            goto 11
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.core.IType org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding int
      StackMap stack: org.eclipse.jdt.core.JavaModelException
        10: pop
        11: .line 455
      StackMap locals:
      StackMap stack:
            aload 2 /* typeBinding */
            instanceof org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding
            ifeq 45
        12: .line 456
            aload 2 /* typeBinding */
            checkcast org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding
            getfield org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.scope:Lorg/eclipse/jdt/internal/compiler/lookup/ClassScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ClassScope.referenceType:()Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            astore 4 /* typeDeclaration */
        start local 4 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDeclaration
        13: .line 459
            aconst_null
            astore 5 /* superclassName */
        start local 5 // char[] superclassName
        14: .line 461
            aload 4 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.bits:I
            sipush 512
            iand
            ifeq 17
        15: .line 462
            aload 4 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.allocation:Lorg/eclipse/jdt/internal/compiler/ast/QualifiedAllocationExpression;
            getfield org.eclipse.jdt.internal.compiler.ast.QualifiedAllocationExpression.type:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            astore 6 /* superclass */
        start local 6 // org.eclipse.jdt.internal.compiler.ast.TypeReference superclass
        16: .line 463
            goto 18
        end local 6 // org.eclipse.jdt.internal.compiler.ast.TypeReference superclass
        17: .line 464
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TypeDeclaration char[]
      StackMap stack:
            aload 4 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.superclass:Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            astore 6 /* superclass */
        start local 6 // org.eclipse.jdt.internal.compiler.ast.TypeReference superclass
        18: .line 466
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TypeReference
      StackMap stack:
            aload 6 /* superclass */
            ifnull 23
        19: .line 467
            aload 6 /* superclass */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TypeReference.getTypeName:()[[C
            astore 7 /* typeName */
        start local 7 // char[][] typeName
        20: .line 468
            aload 7 /* typeName */
            ifnonnull 21
            aconst_null
            goto 22
      StackMap locals: char[][]
      StackMap stack:
        21: aload 7 /* typeName */
            aload 7 /* typeName */
            arraylength
            iconst_1
            isub
            aaload
      StackMap locals:
      StackMap stack: char[]
        22: astore 5 /* superclassName */
        end local 7 // char[][] typeName
        23: .line 472
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 7 /* superInterfaceNames */
        start local 7 // char[][] superInterfaceNames
        24: .line 473
            aload 4 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.superInterfaces:[Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
            astore 8 /* superInterfaces */
        start local 8 // org.eclipse.jdt.internal.compiler.ast.TypeReference[] superInterfaces
        25: .line 474
            aload 8 /* superInterfaces */
            ifnull 35
        26: .line 475
            aload 8 /* superInterfaces */
            arraylength
            istore 9 /* length */
        start local 9 // int length
        27: .line 476
            iload 9 /* length */
            anewarray char[]
            astore 7 /* superInterfaceNames */
        28: .line 477
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        29: goto 34
        30: .line 478
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.core.IType org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding int org.eclipse.jdt.internal.compiler.ast.TypeDeclaration char[] org.eclipse.jdt.internal.compiler.ast.TypeReference char[][] org.eclipse.jdt.internal.compiler.ast.TypeReference[] int int
      StackMap stack:
            aload 8 /* superInterfaces */
            iload 10 /* i */
            aaload
            astore 11 /* superInterface */
        start local 11 // org.eclipse.jdt.internal.compiler.ast.TypeReference superInterface
        31: .line 479
            aload 11 /* superInterface */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.TypeReference.getTypeName:()[[C
            astore 12 /* typeName */
        start local 12 // char[][] typeName
        32: .line 480
            aload 7 /* superInterfaceNames */
            iload 10 /* i */
            aload 12 /* typeName */
            aload 12 /* typeName */
            arraylength
            iconst_1
            isub
            aaload
            aastore
        end local 12 // char[][] typeName
        end local 11 // org.eclipse.jdt.internal.compiler.ast.TypeReference superInterface
        33: .line 477
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        34: iload 10 /* i */
            iload 9 /* length */
            if_icmplt 30
        end local 10 // int i
        end local 9 // int length
        35: .line 484
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.hierarchy.HierarchyType
            dup
        36: .line 485
            aload 1 /* type */
        37: .line 486
            aload 4 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.name:[C
        38: .line 487
            aload 4 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.modifiers:I
        39: .line 488
            aload 5 /* superclassName */
        40: .line 489
            aload 7 /* superInterfaceNames */
        41: .line 490
            iload 3 /* isAnonymous */
        42: .line 484
            invokespecial org.eclipse.jdt.internal.core.hierarchy.HierarchyType.<init>:(Lorg/eclipse/jdt/core/IType;[CI[C[[CZ)V
            astore 9 /* hierarchyType */
        start local 9 // org.eclipse.jdt.internal.core.hierarchy.HierarchyType hierarchyType
        43: .line 491
            aload 0 /* this */
            aload 9 /* hierarchyType */
            aload 4 /* typeDeclaration */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding;
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.remember:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
        end local 9 // org.eclipse.jdt.internal.core.hierarchy.HierarchyType hierarchyType
        end local 8 // org.eclipse.jdt.internal.compiler.ast.TypeReference[] superInterfaces
        end local 7 // char[][] superInterfaceNames
        end local 6 // org.eclipse.jdt.internal.compiler.ast.TypeReference superclass
        end local 5 // char[] superclassName
        end local 4 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDeclaration
        44: .line 492
            goto 54
        45: .line 493
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.core.IType org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding int
      StackMap stack:
            new org.eclipse.jdt.internal.core.hierarchy.HierarchyType
            dup
        46: .line 494
            aload 1 /* type */
        47: .line 495
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sourceName:()[C
        48: .line 496
            aload 2 /* typeBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.modifiers:I
        49: .line 497
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sourceName:()[C
        50: .line 498
            iconst_1
            anewarray char[]
            dup
            iconst_0
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iconst_0
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.sourceName:()[C
            aastore
        51: .line 499
            iload 3 /* isAnonymous */
        52: .line 493
            invokespecial org.eclipse.jdt.internal.core.hierarchy.HierarchyType.<init>:(Lorg/eclipse/jdt/core/IType;[CI[C[[CZ)V
            astore 4 /* hierarchyType */
        start local 4 // org.eclipse.jdt.internal.core.hierarchy.HierarchyType hierarchyType
        53: .line 500
            aload 0 /* this */
            aload 4 /* hierarchyType */
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.remember:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
        end local 4 // org.eclipse.jdt.internal.core.hierarchy.HierarchyType hierarchyType
        end local 3 // boolean isAnonymous
        54: .line 504
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
        end local 1 // org.eclipse.jdt.core.IType type
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   55     0                 this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0   55     1                 type  Lorg/eclipse/jdt/core/IType;
            0   55     2          typeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            2    3     3          genericType  Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            8   54     3          isAnonymous  Z
           13   44     4      typeDeclaration  Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
           14   44     5       superclassName  [C
           16   17     6           superclass  Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
           18   44     6           superclass  Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
           20   23     7             typeName  [[C
           24   44     7  superInterfaceNames  [[C
           25   44     8      superInterfaces  [Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
           27   35     9               length  I
           29   35    10                    i  I
           31   33    11       superInterface  Lorg/eclipse/jdt/internal/compiler/ast/TypeReference;
           32   33    12             typeName  [[C
           43   44     9        hierarchyType  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyType;
           53   54     4        hierarchyType  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyType;
      Exception table:
        from    to  target  type
           1     3       4  Class org.eclipse.jdt.core.JavaModelException
           8     9      10  Class org.eclipse.jdt.core.JavaModelException
    MethodParameters:
             Name  Flags
      type         
      typeBinding  

  private void rememberAllTypes(org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration, org.eclipse.jdt.core.ICompilationUnit, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;Lorg/eclipse/jdt/core/ICompilationUnit;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=13, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
        start local 2 // org.eclipse.jdt.core.ICompilationUnit cu
        start local 3 // boolean includeLocalTypes
         0: .line 509
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.types:[Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            astore 4 /* types */
        start local 4 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration[] types
         1: .line 510
            aload 4 /* types */
            ifnull 9
         2: .line 511
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: aload 4 /* types */
            arraylength
            istore 6 /* length */
        start local 6 // int length
         4: goto 8
         5: .line 512
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TypeDeclaration[] int int
      StackMap stack:
            aload 4 /* types */
            iload 5 /* i */
            aaload
            astore 7 /* type */
        start local 7 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration type
         6: .line 513
            aload 0 /* this */
            aload 7 /* type */
            aload 2 /* cu */
            new java.lang.String
            dup
            aload 7 /* type */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.name:[C
            invokespecial java.lang.String.<init>:([C)V
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getType:(Ljava/lang/String;)Lorg/eclipse/jdt/core/IType;
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.rememberWithMemberTypes:(Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;Lorg/eclipse/jdt/core/IType;)V
        end local 7 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration type
         7: .line 511
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* i */
            iload 6 /* length */
            if_icmplt 5
        end local 6 // int length
        end local 5 // int i
         9: .line 516
      StackMap locals:
      StackMap stack:
            iload 3 /* includeLocalTypes */
            ifeq 10
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.localTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding;
            ifnonnull 11
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.functionalExpressions:[Lorg/eclipse/jdt/internal/compiler/ast/FunctionalExpression;
            ifnonnull 11
        10: .line 517
      StackMap locals:
      StackMap stack:
            return
        11: .line 519
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.util.HandleFactory
            dup
            invokespecial org.eclipse.jdt.internal.core.util.HandleFactory.<init>:()V
            astore 5 /* factory */
        start local 5 // org.eclipse.jdt.internal.core.util.HandleFactory factory
        12: .line 520
            new java.util.HashSet
            dup
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.localTypeCount:I
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.functionalExpressionsCount:I
            iadd
            invokespecial java.util.HashSet.<init>:(I)V
            astore 6 /* existingElements */
        start local 6 // java.util.HashSet existingElements
        13: .line 521
            new java.util.HashMap
            dup
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.localTypeCount:I
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.functionalExpressionsCount:I
            iadd
            invokespecial java.util.HashMap.<init>:(I)V
            astore 7 /* knownScopes */
        start local 7 // java.util.HashMap knownScopes
        14: .line 523
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.localTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding;
            ifnull 24
        15: .line 524
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        16: goto 23
        17: .line 525
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.core.ICompilationUnit int org.eclipse.jdt.internal.compiler.ast.TypeDeclaration[] org.eclipse.jdt.internal.core.util.HandleFactory java.util.HashSet java.util.HashMap int
      StackMap stack:
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.localTypes:[Lorg/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding;
            iload 8 /* i */
            aaload
            astore 9 /* localType */
        start local 9 // org.eclipse.jdt.internal.compiler.lookup.LocalTypeBinding localType
        18: .line 526
            aload 9 /* localType */
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalTypeBinding.scope:Lorg/eclipse/jdt/internal/compiler/lookup/ClassScope;
            astore 10 /* classScope */
        start local 10 // org.eclipse.jdt.internal.compiler.lookup.ClassScope classScope
        19: .line 527
            aload 10 /* classScope */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ClassScope.referenceType:()Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            astore 11 /* typeDecl */
        start local 11 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDecl
        20: .line 528
            aload 5 /* factory */
            aload 10 /* classScope */
            aload 2 /* cu */
            aload 6 /* existingElements */
            aload 7 /* knownScopes */
            invokevirtual org.eclipse.jdt.internal.core.util.HandleFactory.createElement:(Lorg/eclipse/jdt/internal/compiler/lookup/ClassScope;Lorg/eclipse/jdt/core/ICompilationUnit;Ljava/util/HashSet;Ljava/util/HashMap;)Lorg/eclipse/jdt/core/IJavaElement;
            checkcast org.eclipse.jdt.core.IType
            astore 12 /* typeHandle */
        start local 12 // org.eclipse.jdt.core.IType typeHandle
        21: .line 529
            aload 0 /* this */
            aload 11 /* typeDecl */
            aload 12 /* typeHandle */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.rememberWithMemberTypes:(Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;Lorg/eclipse/jdt/core/IType;)V
        end local 12 // org.eclipse.jdt.core.IType typeHandle
        end local 11 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDecl
        end local 10 // org.eclipse.jdt.internal.compiler.lookup.ClassScope classScope
        end local 9 // org.eclipse.jdt.internal.compiler.lookup.LocalTypeBinding localType
        22: .line 524
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 8 /* i */
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.localTypeCount:I
            if_icmplt 17
        end local 8 // int i
        24: .line 532
      StackMap locals:
      StackMap stack:
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.functionalExpressions:[Lorg/eclipse/jdt/internal/compiler/ast/FunctionalExpression;
            ifnull 34
        25: .line 533
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        26: goto 33
        27: .line 534
      StackMap locals: int
      StackMap stack:
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.functionalExpressions:[Lorg/eclipse/jdt/internal/compiler/ast/FunctionalExpression;
            iload 8 /* i */
            aaload
            instanceof org.eclipse.jdt.internal.compiler.ast.LambdaExpression
            ifeq 32
        28: .line 535
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.functionalExpressions:[Lorg/eclipse/jdt/internal/compiler/ast/FunctionalExpression;
            iload 8 /* i */
            aaload
            checkcast org.eclipse.jdt.internal.compiler.ast.LambdaExpression
            astore 9 /* expression */
        start local 9 // org.eclipse.jdt.internal.compiler.ast.LambdaExpression expression
        29: .line 536
            aload 9 /* expression */
            getfield org.eclipse.jdt.internal.compiler.ast.LambdaExpression.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            ifnull 32
            aload 9 /* expression */
            getfield org.eclipse.jdt.internal.compiler.ast.LambdaExpression.resolvedType:Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.TypeBinding.isValidBinding:()Z
            ifeq 32
        30: .line 537
            aload 5 /* factory */
            aload 9 /* expression */
            aload 2 /* cu */
            aload 6 /* existingElements */
            aload 7 /* knownScopes */
            invokevirtual org.eclipse.jdt.internal.core.util.HandleFactory.createLambdaTypeElement:(Lorg/eclipse/jdt/internal/compiler/ast/LambdaExpression;Lorg/eclipse/jdt/core/ICompilationUnit;Ljava/util/HashSet;Ljava/util/HashMap;)Lorg/eclipse/jdt/core/IJavaElement;
            checkcast org.eclipse.jdt.core.IType
            astore 10 /* typeHandle */
        start local 10 // org.eclipse.jdt.core.IType typeHandle
        31: .line 538
            aload 0 /* this */
            aload 10 /* typeHandle */
            aload 9 /* expression */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.LambdaExpression.getTypeBinding:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.remember:(Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
        end local 10 // org.eclipse.jdt.core.IType typeHandle
        end local 9 // org.eclipse.jdt.internal.compiler.ast.LambdaExpression expression
        32: .line 533
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        33: iload 8 /* i */
            aload 1 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.functionalExpressionsCount:I
            if_icmplt 27
        end local 8 // int i
        34: .line 543
      StackMap locals:
      StackMap stack:
            return
        end local 7 // java.util.HashMap knownScopes
        end local 6 // java.util.HashSet existingElements
        end local 5 // org.eclipse.jdt.internal.core.util.HandleFactory factory
        end local 4 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration[] types
        end local 3 // boolean includeLocalTypes
        end local 2 // org.eclipse.jdt.core.ICompilationUnit cu
        end local 1 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   35     0               this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0   35     1         parsedUnit  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            0   35     2                 cu  Lorg/eclipse/jdt/core/ICompilationUnit;
            0   35     3  includeLocalTypes  Z
            1   35     4              types  [Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            3    9     5                  i  I
            4    9     6             length  I
            6    7     7               type  Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
           12   35     5            factory  Lorg/eclipse/jdt/internal/core/util/HandleFactory;
           13   35     6   existingElements  Ljava/util/HashSet;
           14   35     7        knownScopes  Ljava/util/HashMap;
           16   24     8                  i  I
           18   22     9          localType  Lorg/eclipse/jdt/internal/compiler/lookup/LocalTypeBinding;
           19   22    10         classScope  Lorg/eclipse/jdt/internal/compiler/lookup/ClassScope;
           20   22    11           typeDecl  Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
           21   22    12         typeHandle  Lorg/eclipse/jdt/core/IType;
           26   34     8                  i  I
           29   32     9         expression  Lorg/eclipse/jdt/internal/compiler/ast/LambdaExpression;
           31   32    10         typeHandle  Lorg/eclipse/jdt/core/IType;
    MethodParameters:
                   Name  Flags
      parsedUnit         
      cu                 
      includeLocalTypes  

  private void rememberWithMemberTypes(org.eclipse.jdt.internal.compiler.ast.TypeDeclaration, org.eclipse.jdt.core.IType);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;Lorg/eclipse/jdt/core/IType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDecl
        start local 2 // org.eclipse.jdt.core.IType typeHandle
         0: .line 545
            aload 0 /* this */
            aload 2 /* typeHandle */
            aload 1 /* typeDecl */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding;
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.remember:(Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
         1: .line 547
            aload 1 /* typeDecl */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.memberTypes:[Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            astore 3 /* memberTypes */
        start local 3 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration[] memberTypes
         2: .line 548
            aload 3 /* memberTypes */
            ifnull 10
         3: .line 549
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: aload 3 /* memberTypes */
            arraylength
            istore 5 /* length */
        start local 5 // int length
         5: goto 9
         6: .line 550
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.TypeDeclaration[] int int
      StackMap stack:
            aload 3 /* memberTypes */
            iload 4 /* i */
            aaload
            astore 6 /* memberType */
        start local 6 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration memberType
         7: .line 551
            aload 0 /* this */
            aload 6 /* memberType */
            aload 2 /* typeHandle */
            new java.lang.String
            dup
            aload 6 /* memberType */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.name:[C
            invokespecial java.lang.String.<init>:([C)V
            invokeinterface org.eclipse.jdt.core.IType.getType:(Ljava/lang/String;)Lorg/eclipse/jdt/core/IType;
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.rememberWithMemberTypes:(Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;Lorg/eclipse/jdt/core/IType;)V
        end local 6 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration memberType
         8: .line 549
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            iload 5 /* length */
            if_icmplt 6
        end local 5 // int length
        end local 4 // int i
        10: .line 554
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration[] memberTypes
        end local 2 // org.eclipse.jdt.core.IType typeHandle
        end local 1 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration typeDecl
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0   11     1     typeDecl  Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            0   11     2   typeHandle  Lorg/eclipse/jdt/core/IType;
            2   11     3  memberTypes  [Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            4   10     4            i  I
            5   10     5       length  I
            7    8     6   memberType  Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
    MethodParameters:
            Name  Flags
      typeDecl    
      typeHandle  

  private void reportHierarchy(org.eclipse.jdt.core.IType, org.eclipse.jdt.internal.compiler.ast.TypeDeclaration, org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding);
    descriptor: (Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=11, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.core.IType focus
        start local 2 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration focusLocalType
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding binaryTypeBinding
         0: .line 562
            aload 1 /* focus */
            ifnull 9
         1: .line 563
            aload 3 /* binaryTypeBinding */
            ifnull 4
         2: .line 565
            aload 0 /* this */
            aload 3 /* binaryTypeBinding */
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         3: .line 566
            goto 9
         4: .line 568
      StackMap locals:
      StackMap stack:
            aload 2 /* focusLocalType */
            ifnull 7
         5: .line 570
            aload 0 /* this */
            aload 2 /* focusLocalType */
            getfield org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.binding:Lorg/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding;
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         6: .line 571
            goto 9
         7: .line 573
      StackMap locals:
      StackMap stack:
            aload 1 /* focus */
            invokeinterface org.eclipse.jdt.core.IType.getFullyQualifiedName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 4 /* fullyQualifiedName */
        start local 4 // char[] fullyQualifiedName
         8: .line 574
            aload 0 /* this */
            bipush 46
            aload 4 /* fullyQualifiedName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[C)[[C
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.setFocusType:([[C)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        end local 4 // char[] fullyQualifiedName
         9: .line 580
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.fixSupertypeBindings:()V
        10: .line 582
            iconst_m1
            istore 4 /* objectIndex */
        start local 4 // int objectIndex
        11: .line 583
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.hierarchy:Lorg/eclipse/jdt/internal/core/hierarchy/TypeHierarchy;
            getfield org.eclipse.jdt.internal.core.hierarchy.TypeHierarchy.progressMonitor:Lorg/eclipse/core/runtime/SubMonitor;
            astore 5 /* progressMonitor */
        start local 5 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
        12: .line 584
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            istore 6 /* current */
        start local 6 // int current
        13: goto 30
        14: .line 585
      StackMap locals: int org.eclipse.core.runtime.IProgressMonitor int
      StackMap stack:
            aload 5 /* progressMonitor */
            ifnull 16
            aload 5 /* progressMonitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.isCanceled:()Z
            ifeq 16
        15: .line 586
            new org.eclipse.core.runtime.OperationCanceledException
            dup
            invokespecial org.eclipse.core.runtime.OperationCanceledException.<init>:()V
            athrow
        16: .line 588
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeBindings:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 6 /* current */
            aaload
            astore 7 /* typeBinding */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
        17: .line 591
            aload 7 /* typeBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.id:I
            iconst_1
            if_icmpne 20
        18: .line 592
            iload 6 /* current */
            istore 4 /* objectIndex */
        19: .line 593
            goto 29
        20: .line 596
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeModels:[Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            iload 6 /* current */
            aaload
            astore 8 /* suppliedType */
        start local 8 // org.eclipse.jdt.internal.compiler.env.IGenericType suppliedType
        21: .line 598
            aload 0 /* this */
            aload 7 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.subOrSuperOfFocus:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Z
            ifne 23
        22: .line 599
            goto 29
        23: .line 603
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IGenericType
      StackMap stack:
            aload 7 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.isInterface:()Z
            ifeq 26
        24: .line 604
            aconst_null
            astore 9 /* superclass */
        start local 9 // org.eclipse.jdt.core.IType superclass
        25: .line 605
            goto 27
        end local 9 // org.eclipse.jdt.core.IType superclass
        26: .line 606
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* suppliedType */
            aload 7 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.findSuperClass:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Lorg/eclipse/jdt/core/IType;
            astore 9 /* superclass */
        start local 9 // org.eclipse.jdt.core.IType superclass
        27: .line 608
      StackMap locals: org.eclipse.jdt.core.IType
      StackMap stack:
            aload 0 /* this */
            aload 8 /* suppliedType */
            aload 7 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.findSuperInterfaces:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)[Lorg/eclipse/jdt/core/IType;
            astore 10 /* superinterfaces */
        start local 10 // org.eclipse.jdt.core.IType[] superinterfaces
        28: .line 610
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            aload 8 /* suppliedType */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            aload 8 /* suppliedType */
            aload 7 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.getHandle:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Lorg/eclipse/jdt/core/IType;
            aload 9 /* superclass */
            aload 10 /* superinterfaces */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.connect:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/core/IType;[Lorg/eclipse/jdt/core/IType;)V
        end local 10 // org.eclipse.jdt.core.IType[] superinterfaces
        end local 9 // org.eclipse.jdt.core.IType superclass
        end local 8 // org.eclipse.jdt.internal.compiler.env.IGenericType suppliedType
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
        29: .line 584
      StackMap locals:
      StackMap stack:
            iinc 6 /* current */ -1
      StackMap locals:
      StackMap stack:
        30: iload 6 /* current */
            ifge 14
        end local 6 // int current
        31: .line 613
            iload 4 /* objectIndex */
            iconst_m1
            if_icmple 34
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.hasMissingSuperClass:Z
            ifeq 32
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnonnull 34
        32: .line 614
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeModels:[Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            iload 4 /* objectIndex */
            aaload
            astore 6 /* objectType */
        start local 6 // org.eclipse.jdt.internal.compiler.env.IGenericType objectType
        33: .line 615
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            aload 6 /* objectType */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            aload 6 /* objectType */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeBindings:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 4 /* objectIndex */
            aaload
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.getHandle:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Lorg/eclipse/jdt/core/IType;
            aconst_null
            aconst_null
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.connect:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/core/IType;[Lorg/eclipse/jdt/core/IType;)V
        end local 6 // org.eclipse.jdt.internal.compiler.env.IGenericType objectType
        34: .line 617
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.eclipse.core.runtime.IProgressMonitor progressMonitor
        end local 4 // int objectIndex
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding binaryTypeBinding
        end local 2 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration focusLocalType
        end local 1 // org.eclipse.jdt.core.IType focus
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   35     0                this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0   35     1               focus  Lorg/eclipse/jdt/core/IType;
            0   35     2      focusLocalType  Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            0   35     3   binaryTypeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            8    9     4  fullyQualifiedName  [C
           11   35     4         objectIndex  I
           12   35     5     progressMonitor  Lorg/eclipse/core/runtime/IProgressMonitor;
           13   31     6             current  I
           17   29     7         typeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           21   29     8        suppliedType  Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
           25   26     9          superclass  Lorg/eclipse/jdt/core/IType;
           27   29     9          superclass  Lorg/eclipse/jdt/core/IType;
           28   29    10     superinterfaces  [Lorg/eclipse/jdt/core/IType;
           33   34     6          objectType  Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
    MethodParameters:
                   Name  Flags
      focus              
      focusLocalType     
      binaryTypeBinding  

  private void reset();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
         0: .line 619
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.reset:()V
         1: .line 621
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         2: .line 622
            aload 0 /* this */
            iconst_0
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.superTypesOnly:Z
         3: .line 623
            aload 0 /* this */
            iconst_m1
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
         4: .line 624
            aload 0 /* this */
            iconst_5
            anewarray org.eclipse.jdt.internal.compiler.env.IGenericType
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeModels:[Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
         5: .line 625
            aload 0 /* this */
            iconst_5
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeBindings:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         6: .line 626
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.bindingMap:Lorg/eclipse/jdt/internal/core/hierarchy/BindingMap;
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.BindingMap.clear:()V
         7: .line 627
            return
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;

  public void resolve(org.eclipse.jdt.internal.compiler.env.IGenericType);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/IGenericType;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.env.IGenericType suppliedType
         0: .line 637
            aload 1 /* suppliedType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IGenericType.isBinaryType:()Z
            ifeq 27
         1: .line 638
            aload 0 /* this */
            aload 1 /* suppliedType */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.sanitizeBinaryType:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;)V
         2: .line 639
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 1 /* suppliedType */
            checkcast org.eclipse.jdt.internal.compiler.env.IBinaryType
            iconst_0
            aconst_null
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.cacheBinaryType:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;ZLorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            astore 2 /* binaryTypeBinding */
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding binaryTypeBinding
         3: .line 640
            aload 0 /* this */
            aload 1 /* suppliedType */
            aload 2 /* binaryTypeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.remember:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
         4: .line 642
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            istore 3 /* startIndex */
        start local 3 // int startIndex
         5: .line 643
            iload 3 /* startIndex */
            istore 4 /* i */
        start local 4 // int i
         6: goto 23
         7: .line 644
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeModels:[Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            iload 4 /* i */
            aaload
            astore 5 /* igType */
        start local 5 // org.eclipse.jdt.internal.compiler.env.IGenericType igType
         8: .line 645
            aload 5 /* igType */
            ifnull 22
            aload 5 /* igType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IGenericType.isBinaryType:()Z
            ifeq 22
         9: .line 646
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.unitBeingCompleted:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            astore 6 /* previousUnitBeingCompleted */
        start local 6 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration previousUnitBeingCompleted
        10: .line 651
            aload 6 /* previousUnitBeingCompleted */
            ifnonnull 12
        11: .line 652
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getstatic org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.FakeUnit:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.unitBeingCompleted:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
        12: .line 654
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IGenericType org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeBindings:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 4 /* i */
            aaload
            astore 7 /* typeBinding */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
        13: .line 655
            aload 7 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        14: .line 656
            aload 7 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
        15: .line 657
            goto 21
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
        16: pop
        17: .line 660
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 6 /* previousUnitBeingCompleted */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.unitBeingCompleted:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            goto 22
        18: .line 659
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 8
        19: .line 660
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 6 /* previousUnitBeingCompleted */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.unitBeingCompleted:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
        20: .line 661
            aload 8
            athrow
        21: .line 660
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 6 /* previousUnitBeingCompleted */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.unitBeingCompleted:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
        end local 6 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration previousUnitBeingCompleted
        end local 5 // org.eclipse.jdt.internal.compiler.env.IGenericType igType
        22: .line 643
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 4 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            if_icmple 7
        end local 4 // int i
        24: .line 664
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.superTypesOnly:Z
        25: .line 665
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.getType:()Lorg/eclipse/jdt/core/IType;
            aconst_null
            aload 2 /* binaryTypeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.reportHierarchy:(Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
        end local 3 // int startIndex
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding binaryTypeBinding
        26: .line 666
            goto 39
        27: .line 667
      StackMap locals:
      StackMap stack:
            aload 1 /* suppliedType */
            checkcast org.eclipse.jdt.internal.core.SourceTypeElementInfo
            invokevirtual org.eclipse.jdt.internal.core.SourceTypeElementInfo.getHandle:()Lorg/eclipse/jdt/core/IType;
            invokeinterface org.eclipse.jdt.core.IType.getCompilationUnit:()Lorg/eclipse/jdt/core/ICompilationUnit;
            astore 2 /* cu */
        start local 2 // org.eclipse.jdt.core.ICompilationUnit cu
        28: .line 668
            aload 2 /* cu */
            ifnull 39
        29: .line 669
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 3 /* localTypes */
        start local 3 // java.util.HashSet localTypes
        30: .line 670
            aload 3 /* localTypes */
            aload 2 /* cu */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        31: .line 671
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.superTypesOnly:Z
        32: .line 672
            aload 0 /* this */
            iconst_1
            anewarray org.eclipse.jdt.internal.core.Openable
            dup
            iconst_0
            aload 2 /* cu */
            checkcast org.eclipse.jdt.internal.core.Openable
            aastore
            aload 3 /* localTypes */
            aconst_null
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.resolve:([Lorg/eclipse/jdt/internal/core/Openable;Ljava/util/HashSet;Lorg/eclipse/core/runtime/IProgressMonitor;)V
        end local 3 // java.util.HashSet localTypes
        end local 2 // org.eclipse.jdt.core.ICompilationUnit cu
        33: .line 675
            goto 39
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
        34: pop
        35: .line 677
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.reset:()V
            goto 40
        36: .line 676
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 9
        37: .line 677
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.reset:()V
        38: .line 678
            aload 9
            athrow
        39: .line 677
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.reset:()V
        40: .line 679
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.eclipse.jdt.internal.compiler.env.IGenericType suppliedType
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   41     0                        this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0   41     1                suppliedType  Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            3   26     2           binaryTypeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            5   26     3                  startIndex  I
            6   24     4                           i  I
            8   22     5                      igType  Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
           10   22     6  previousUnitBeingCompleted  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
           13   15     7                 typeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
           28   33     2                          cu  Lorg/eclipse/jdt/core/ICompilationUnit;
           30   33     3                  localTypes  Ljava/util/HashSet;
      Exception table:
        from    to  target  type
          10    15      16  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
          10    17      18  any
           0    33      34  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
           0    35      36  any
    MethodParameters:
              Name  Flags
      suppliedType  

  public void resolve(org.eclipse.jdt.internal.core.Openable[], java.util.HashSet, org.eclipse.core.runtime.IProgressMonitor);
    descriptor: ([Lorg/eclipse/jdt/internal/core/Openable;Ljava/util/HashSet;Lorg/eclipse/core/runtime/IProgressMonitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=28, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.core.Openable[] openables
        start local 2 // java.util.HashSet localTypes
        start local 3 // org.eclipse.core.runtime.IProgressMonitor monitor
         0: .line 695
            aload 3 /* monitor */
            iconst_3
            invokestatic org.eclipse.core.runtime.SubMonitor.convert:(Lorg/eclipse/core/runtime/IProgressMonitor;I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 4 /* subMonitor */
        start local 4 // org.eclipse.core.runtime.SubMonitor subMonitor
         1: .line 697
            aload 1 /* openables */
            arraylength
            istore 5 /* openablesLength */
        start local 5 // int openablesLength
         2: .line 698
            iload 5 /* openablesLength */
            anewarray org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration
            astore 6 /* parsedUnits */
        start local 6 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration[] parsedUnits
         3: .line 699
            iload 5 /* openablesLength */
            newarray 4
            astore 7 /* hasLocalType */
        start local 7 // boolean[] hasLocalType
         4: .line 700
            iload 5 /* openablesLength */
            anewarray org.eclipse.jdt.core.ICompilationUnit
            astore 8 /* cus */
        start local 8 // org.eclipse.jdt.core.ICompilationUnit[] cus
         5: .line 701
            iconst_0
            istore 9 /* unitsIndex */
        start local 9 // int unitsIndex
         6: .line 703
            aconst_null
            astore 10 /* focusUnit */
        start local 10 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration focusUnit
         7: .line 704
            aconst_null
            astore 11 /* focusBinaryBinding */
        start local 11 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding focusBinaryBinding
         8: .line 705
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.getType:()Lorg/eclipse/jdt/core/IType;
            astore 12 /* focus */
        start local 12 // org.eclipse.jdt.core.IType focus
         9: .line 706
            aconst_null
            astore 13 /* focusOpenable */
        start local 13 // org.eclipse.jdt.internal.core.Openable focusOpenable
        10: .line 707
            aload 12 /* focus */
            ifnull 15
        11: .line 708
            aload 12 /* focus */
            invokeinterface org.eclipse.jdt.core.IType.isBinary:()Z
            ifeq 14
        12: .line 709
            aload 12 /* focus */
            invokeinterface org.eclipse.jdt.core.IType.getClassFile:()Lorg/eclipse/jdt/core/IOrdinaryClassFile;
            checkcast org.eclipse.jdt.internal.core.Openable
            astore 13 /* focusOpenable */
        13: .line 710
            goto 15
        14: .line 711
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.core.Openable[] java.util.HashSet org.eclipse.core.runtime.IProgressMonitor org.eclipse.core.runtime.SubMonitor int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration[] boolean[] org.eclipse.jdt.core.ICompilationUnit[] int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.core.IType org.eclipse.jdt.internal.core.Openable
      StackMap stack:
            aload 12 /* focus */
            invokeinterface org.eclipse.jdt.core.IType.getCompilationUnit:()Lorg/eclipse/jdt/core/ICompilationUnit;
            checkcast org.eclipse.jdt.internal.core.Openable
            astore 13 /* focusOpenable */
        15: .line 715
      StackMap locals:
      StackMap stack:
            aload 4 /* subMonitor */
            iconst_1
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
            pop
        16: .line 717
            new org.eclipse.jdt.internal.compiler.parser.Parser
            dup
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.problemReporter:Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
            iconst_1
            invokespecial org.eclipse.jdt.internal.compiler.parser.Parser.<init>:(Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;Z)V
            astore 14 /* parser */
        start local 14 // org.eclipse.jdt.internal.compiler.parser.Parser parser
        17: .line 718
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.options:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.sourceLevel:J
            ldc 3407872
            lcmp
            iflt 18
            iconst_1
            goto 19
      StackMap locals: org.eclipse.jdt.internal.compiler.parser.Parser
      StackMap stack:
        18: iconst_0
      StackMap locals:
      StackMap stack: int
        19: istore 15 /* isJava8 */
        start local 15 // boolean isJava8
        20: .line 719
            iconst_0
            istore 16 /* i */
        start local 16 // int i
        21: goto 95
        22: .line 720
      StackMap locals: int int
      StackMap stack:
            aload 1 /* openables */
            iload 16 /* i */
            aaload
            astore 17 /* openable */
        start local 17 // org.eclipse.jdt.internal.core.Openable openable
        23: .line 721
            aload 17 /* openable */
            instanceof org.eclipse.jdt.core.ICompilationUnit
            ifeq 78
        24: .line 722
            aload 17 /* openable */
            checkcast org.eclipse.jdt.core.ICompilationUnit
            astore 18 /* cu */
        start local 18 // org.eclipse.jdt.core.ICompilationUnit cu
        25: .line 725
            iconst_0
            istore 19 /* containsLocalType */
        start local 19 // boolean containsLocalType
        26: .line 726
            aload 2 /* localTypes */
            ifnonnull 29
        27: .line 727
            iconst_1
            istore 19 /* containsLocalType */
        28: .line 728
            goto 33
        29: .line 729
      StackMap locals: org.eclipse.jdt.internal.core.Openable org.eclipse.jdt.core.ICompilationUnit int
      StackMap stack:
            aload 18 /* cu */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getPath:()Lorg/eclipse/core/runtime/IPath;
            astore 20 /* path */
        start local 20 // org.eclipse.core.runtime.IPath path
        30: .line 730
            aload 18 /* cu */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.isWorkingCopy:()Z
            ifeq 31
            iconst_1
            goto 32
      StackMap locals: org.eclipse.core.runtime.IPath
      StackMap stack:
        31: aload 2 /* localTypes */
            aload 20 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
      StackMap locals:
      StackMap stack: int
        32: istore 19 /* containsLocalType */
        end local 20 // org.eclipse.core.runtime.IPath path
        33: .line 734
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 20 /* parsedUnit */
        start local 20 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
        34: .line 735
            aload 18 /* cu */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.isOpen:()Z
            ifeq 64
        35: .line 737
            new org.eclipse.jdt.internal.compiler.CompilationResult
            dup
            aload 18 /* cu */
            checkcast org.eclipse.jdt.internal.compiler.env.ICompilationUnit
            iload 16 /* i */
            iload 5 /* openablesLength */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.options:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.maxProblemsPerUnit:I
            invokespecial org.eclipse.jdt.internal.compiler.CompilationResult.<init>:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;III)V
            astore 21 /* result */
        start local 21 // org.eclipse.jdt.internal.compiler.CompilationResult result
        36: .line 738
            aconst_null
            astore 22 /* typeInfos */
        start local 22 // org.eclipse.jdt.internal.core.SourceTypeElementInfo[] typeInfos
        37: .line 740
            aload 18 /* cu */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getTypes:()[Lorg/eclipse/jdt/core/IType;
            astore 23 /* topLevelTypes */
        start local 23 // org.eclipse.jdt.core.IType[] topLevelTypes
        38: .line 741
            aload 23 /* topLevelTypes */
            arraylength
            istore 24 /* topLevelLength */
        start local 24 // int topLevelLength
        39: .line 742
            iload 24 /* topLevelLength */
            ifne 41
        40: goto 94
        41: .line 743
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.core.Openable[] java.util.HashSet org.eclipse.core.runtime.IProgressMonitor org.eclipse.core.runtime.SubMonitor int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration[] boolean[] org.eclipse.jdt.core.ICompilationUnit[] int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.core.IType org.eclipse.jdt.internal.core.Openable org.eclipse.jdt.internal.compiler.parser.Parser int int org.eclipse.jdt.internal.core.Openable org.eclipse.jdt.core.ICompilationUnit int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.CompilationResult org.eclipse.jdt.internal.core.SourceTypeElementInfo[] org.eclipse.jdt.core.IType[] int
      StackMap stack:
            iload 24 /* topLevelLength */
            anewarray org.eclipse.jdt.internal.core.SourceTypeElementInfo
            astore 22 /* typeInfos */
        42: .line 744
            iconst_0
            istore 25 /* j */
        start local 25 // int j
        43: goto 47
        44: .line 745
      StackMap locals: int
      StackMap stack:
            aload 23 /* topLevelTypes */
            iload 25 /* j */
            aaload
            astore 26 /* topLevelType */
        start local 26 // org.eclipse.jdt.core.IType topLevelType
        45: .line 746
            aload 22 /* typeInfos */
            iload 25 /* j */
            aload 26 /* topLevelType */
            checkcast org.eclipse.jdt.internal.core.JavaElement
            invokevirtual org.eclipse.jdt.internal.core.JavaElement.getElementInfo:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.core.SourceTypeElementInfo
            aastore
        end local 26 // org.eclipse.jdt.core.IType topLevelType
        46: .line 744
            iinc 25 /* j */ 1
      StackMap locals:
      StackMap stack:
        47: iload 25 /* j */
            iload 24 /* topLevelLength */
            if_icmplt 44
        end local 25 // int j
        end local 24 // int topLevelLength
        end local 23 // org.eclipse.jdt.core.IType[] topLevelTypes
        48: .line 748
            goto 50
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.core.Openable[] java.util.HashSet org.eclipse.core.runtime.IProgressMonitor org.eclipse.core.runtime.SubMonitor int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration[] boolean[] org.eclipse.jdt.core.ICompilationUnit[] int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.core.IType org.eclipse.jdt.internal.core.Openable org.eclipse.jdt.internal.compiler.parser.Parser int int org.eclipse.jdt.internal.core.Openable org.eclipse.jdt.core.ICompilationUnit int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.CompilationResult org.eclipse.jdt.internal.core.SourceTypeElementInfo[]
      StackMap stack: org.eclipse.jdt.core.JavaModelException
        49: pop
        50: .line 751
      StackMap locals:
      StackMap stack:
            iload 19 /* containsLocalType */
            ifne 54
        51: .line 752
            bipush 8
            iload 15 /* isJava8 */
            ifeq 52
            iconst_4
            goto 53
      StackMap locals:
      StackMap stack: int
        52: iconst_0
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.core.Openable[] java.util.HashSet org.eclipse.core.runtime.IProgressMonitor org.eclipse.core.runtime.SubMonitor int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration[] boolean[] org.eclipse.jdt.core.ICompilationUnit[] int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.core.IType org.eclipse.jdt.internal.core.Openable org.eclipse.jdt.internal.compiler.parser.Parser int int org.eclipse.jdt.internal.core.Openable org.eclipse.jdt.core.ICompilationUnit int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.CompilationResult org.eclipse.jdt.internal.core.SourceTypeElementInfo[]
      StackMap stack: int int
        53: ior
            goto 55
        54: .line 753
      StackMap locals:
      StackMap stack:
            bipush 47
        55: .line 751
      StackMap locals:
      StackMap stack: int
            istore 23 /* flags */
        start local 23 // int flags
        56: .line 756
            aload 22 /* typeInfos */
        57: .line 757
            iload 23 /* flags */
        58: .line 758
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.problemReporter:Lorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;
        59: .line 759
            aload 21 /* result */
        60: .line 755
            invokestatic org.eclipse.jdt.internal.compiler.parser.SourceTypeConverter.buildCompilationUnit:([Lorg/eclipse/jdt/internal/compiler/env/ISourceType;ILorg/eclipse/jdt/internal/compiler/problem/ProblemReporter;Lorg/eclipse/jdt/internal/compiler/CompilationResult;)Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
        61: .line 754
            astore 20 /* parsedUnit */
        62: .line 764
            iload 19 /* containsLocalType */
            ifeq 68
            aload 20 /* parsedUnit */
            ifnull 68
            aload 20 /* parsedUnit */
            dup
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.bits:I
            bipush 16
            ior
            putfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.bits:I
        end local 23 // int flags
        end local 22 // org.eclipse.jdt.internal.core.SourceTypeElementInfo[] typeInfos
        end local 21 // org.eclipse.jdt.internal.compiler.CompilationResult result
        63: .line 765
            goto 68
        64: .line 767
      StackMap locals:
      StackMap stack:
            aload 18 /* cu */
            invokeinterface org.eclipse.jdt.core.ICompilationUnit.getResource:()Lorg/eclipse/core/resources/IResource;
            checkcast org.eclipse.core.resources.IFile
            astore 21 /* file */
        start local 21 // org.eclipse.core.resources.IFile file
        65: .line 768
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            aload 17 /* openable */
            aload 21 /* file */
            aload 0 /* this */
            aload 17 /* openable */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.findAssociatedModuleName:(Lorg/eclipse/jdt/internal/core/Openable;)[C
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.createCompilationUnitFromPath:(Lorg/eclipse/jdt/internal/core/Openable;Lorg/eclipse/core/resources/IFile;[C)Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;
            astore 22 /* sourceUnit */
        start local 22 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit sourceUnit
        66: .line 769
            new org.eclipse.jdt.internal.compiler.CompilationResult
            dup
            aload 22 /* sourceUnit */
            iload 16 /* i */
            iload 5 /* openablesLength */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.options:Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;
            getfield org.eclipse.jdt.internal.compiler.impl.CompilerOptions.maxProblemsPerUnit:I
            invokespecial org.eclipse.jdt.internal.compiler.CompilationResult.<init>:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;III)V
            astore 23 /* unitResult */
        start local 23 // org.eclipse.jdt.internal.compiler.CompilationResult unitResult
        67: .line 770
            aload 14 /* parser */
            aload 22 /* sourceUnit */
            aload 23 /* unitResult */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Parser.dietParse:(Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;Lorg/eclipse/jdt/internal/compiler/CompilationResult;)Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            astore 20 /* parsedUnit */
        end local 23 // org.eclipse.jdt.internal.compiler.CompilationResult unitResult
        end local 22 // org.eclipse.jdt.internal.compiler.env.ICompilationUnit sourceUnit
        end local 21 // org.eclipse.core.resources.IFile file
        68: .line 773
      StackMap locals:
      StackMap stack:
            aload 20 /* parsedUnit */
            ifnull 94
        69: .line 774
            aload 7 /* hasLocalType */
            iload 9 /* unitsIndex */
            iload 19 /* containsLocalType */
            bastore
        70: .line 775
            aload 8 /* cus */
            iload 9 /* unitsIndex */
            aload 18 /* cu */
            aastore
        71: .line 776
            aload 6 /* parsedUnits */
            iload 9 /* unitsIndex */
            iinc 9 /* unitsIndex */ 1
            aload 20 /* parsedUnit */
            aastore
        72: .line 778
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 20 /* parsedUnit */
            aconst_null
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.buildTypeBindings:(Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;Lorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)V
        73: .line 779
            aload 17 /* openable */
            aload 13 /* focusOpenable */
            invokevirtual org.eclipse.jdt.internal.core.Openable.equals:(Ljava/lang/Object;)Z
            ifeq 94
        74: .line 780
            aload 20 /* parsedUnit */
            astore 10 /* focusUnit */
        75: .line 782
            goto 94
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
        76: pop
        end local 20 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
        end local 19 // boolean containsLocalType
        end local 18 // org.eclipse.jdt.core.ICompilationUnit cu
        77: .line 786
            goto 94
        78: .line 788
      StackMap locals:
      StackMap stack:
            aload 17 /* openable */
            checkcast org.eclipse.jdt.internal.core.ClassFile
            astore 18 /* classFile */
        start local 18 // org.eclipse.jdt.internal.core.ClassFile classFile
        79: .line 789
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getJavaModelManager:()Lorg/eclipse/jdt/internal/core/JavaModelManager;
            aload 18 /* classFile */
            invokevirtual org.eclipse.jdt.internal.core.ClassFile.getType:()Lorg/eclipse/jdt/core/IType;
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.getInfo:(Lorg/eclipse/jdt/core/IJavaElement;)Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.compiler.env.IBinaryType
            astore 19 /* binaryType */
        start local 19 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        80: .line 790
            aload 19 /* binaryType */
            ifnonnull 86
        81: .line 792
            aload 18 /* classFile */
            invokevirtual org.eclipse.jdt.internal.core.ClassFile.getPackageFragmentRoot:()Lorg/eclipse/jdt/internal/core/PackageFragmentRoot;
            invokevirtual org.eclipse.jdt.internal.core.PackageFragmentRoot.isArchive:()Z
            ifeq 84
        82: .line 793
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            aload 18 /* classFile */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.createInfoFromClassFileInJar:(Lorg/eclipse/jdt/internal/core/Openable;)Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;
            astore 19 /* binaryType */
        83: .line 794
            goto 86
        84: .line 795
      StackMap locals: org.eclipse.jdt.internal.core.ClassFile org.eclipse.jdt.internal.compiler.env.IBinaryType
      StackMap stack:
            aload 18 /* classFile */
            invokevirtual org.eclipse.jdt.internal.core.ClassFile.resource:()Lorg/eclipse/core/resources/IResource;
            astore 20 /* file */
        start local 20 // org.eclipse.core.resources.IResource file
        85: .line 796
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
            aload 18 /* classFile */
            aload 20 /* file */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder.createInfoFromClassFile:(Lorg/eclipse/jdt/internal/core/Openable;Lorg/eclipse/core/resources/IResource;)Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;
            astore 19 /* binaryType */
        end local 20 // org.eclipse.core.resources.IResource file
        86: .line 799
      StackMap locals:
      StackMap stack:
            aload 19 /* binaryType */
            ifnull 94
        87: .line 801
            aload 0 /* this */
            aload 19 /* binaryType */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.sanitizeBinaryType:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;)V
        88: .line 802
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 19 /* binaryType */
            iconst_0
            aconst_null
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.cacheBinaryType:(Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;ZLorg/eclipse/jdt/internal/compiler/env/AccessRestriction;)Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
            astore 20 /* binaryTypeBinding */
        start local 20 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding binaryTypeBinding
        89: .line 803
            aload 0 /* this */
            aload 19 /* binaryType */
            aload 20 /* binaryTypeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.remember:(Lorg/eclipse/jdt/internal/compiler/env/IGenericType;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
        90: .line 804
            aload 17 /* openable */
            aload 13 /* focusOpenable */
            invokevirtual org.eclipse.jdt.internal.core.Openable.equals:(Ljava/lang/Object;)Z
            ifeq 94
        91: .line 805
            aload 20 /* binaryTypeBinding */
            astore 11 /* focusBinaryBinding */
        end local 20 // org.eclipse.jdt.internal.compiler.lookup.BinaryTypeBinding binaryTypeBinding
        92: .line 807
            goto 94
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
        93: pop
        end local 19 // org.eclipse.jdt.internal.compiler.env.IBinaryType binaryType
        end local 18 // org.eclipse.jdt.internal.core.ClassFile classFile
        end local 17 // org.eclipse.jdt.internal.core.Openable openable
        94: .line 719
      StackMap locals:
      StackMap stack:
            iinc 16 /* i */ 1
      StackMap locals:
      StackMap stack:
        95: iload 16 /* i */
            iload 5 /* openablesLength */
            if_icmplt 22
        end local 16 // int i
        96: .line 815
            aconst_null
            astore 16 /* focusLocalType */
        start local 16 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration focusLocalType
        97: .line 816
            aload 12 /* focus */
            ifnull 99
            aload 11 /* focusBinaryBinding */
            ifnonnull 99
            aload 10 /* focusUnit */
            ifnull 99
            aload 12 /* focus */
            checkcast org.eclipse.jdt.internal.core.Member
            invokevirtual org.eclipse.jdt.internal.core.Member.getOuterMostLocalContext:()Lorg/eclipse/jdt/internal/core/Member;
            ifnull 99
        98: .line 817
            new org.eclipse.jdt.internal.core.util.ASTNodeFinder
            dup
            aload 10 /* focusUnit */
            invokespecial org.eclipse.jdt.internal.core.util.ASTNodeFinder.<init>:(Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;)V
            aload 12 /* focus */
            invokevirtual org.eclipse.jdt.internal.core.util.ASTNodeFinder.findType:(Lorg/eclipse/jdt/core/IType;)Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
            astore 16 /* focusLocalType */
        99: .line 821
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.core.Openable[] java.util.HashSet org.eclipse.core.runtime.IProgressMonitor org.eclipse.core.runtime.SubMonitor int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration[] boolean[] org.eclipse.jdt.core.ICompilationUnit[] int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.core.IType org.eclipse.jdt.internal.core.Openable org.eclipse.jdt.internal.compiler.parser.Parser int org.eclipse.jdt.internal.compiler.ast.TypeDeclaration
      StackMap stack:
            iconst_0
            istore 17 /* i */
        start local 17 // int i
       100: goto 117
       101: .line 822
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeModels:[Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
            iload 17 /* i */
            aaload
            astore 18 /* suppliedType */
        start local 18 // org.eclipse.jdt.internal.compiler.env.IGenericType suppliedType
       102: .line 823
            aload 18 /* suppliedType */
            ifnull 116
            aload 18 /* suppliedType */
            invokeinterface org.eclipse.jdt.internal.compiler.env.IGenericType.isBinaryType:()Z
            ifeq 116
       103: .line 824
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.unitBeingCompleted:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            astore 19 /* previousUnitBeingCompleted */
        start local 19 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration previousUnitBeingCompleted
       104: .line 829
            aload 19 /* previousUnitBeingCompleted */
            ifnonnull 106
       105: .line 830
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getstatic org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.FakeUnit:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.unitBeingCompleted:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
       106: .line 832
      StackMap locals: org.eclipse.jdt.internal.compiler.env.IGenericType org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeBindings:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            iload 17 /* i */
            aaload
            astore 20 /* typeBinding */
        start local 20 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
       107: .line 833
            aload 20 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
       108: .line 834
            aload 20 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            pop
        end local 20 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
       109: .line 835
            goto 115
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
       110: pop
       111: .line 838
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 19 /* previousUnitBeingCompleted */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.unitBeingCompleted:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            goto 116
       112: .line 837
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 21
       113: .line 838
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 19 /* previousUnitBeingCompleted */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.unitBeingCompleted:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
       114: .line 839
            aload 21
            athrow
       115: .line 838
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 19 /* previousUnitBeingCompleted */
            putfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.unitBeingCompleted:Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
        end local 19 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration previousUnitBeingCompleted
        end local 18 // org.eclipse.jdt.internal.compiler.env.IGenericType suppliedType
       116: .line 821
      StackMap locals:
      StackMap stack:
            iinc 17 /* i */ 1
      StackMap locals:
      StackMap stack:
       117: iload 17 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
            if_icmple 101
        end local 17 // int i
       118: .line 843
            aload 4 /* subMonitor */
            iconst_1
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
            iload 9 /* unitsIndex */
            invokevirtual org.eclipse.core.runtime.SubMonitor.setWorkRemaining:(I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 17 /* unitLoopMonitor */
        start local 17 // org.eclipse.core.runtime.SubMonitor unitLoopMonitor
       119: .line 845
            iconst_0
            istore 18 /* i */
        start local 18 // int i
       120: goto 130
       121: .line 846
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.core.Openable[] java.util.HashSet org.eclipse.core.runtime.IProgressMonitor org.eclipse.core.runtime.SubMonitor int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration[] boolean[] org.eclipse.jdt.core.ICompilationUnit[] int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.core.IType org.eclipse.jdt.internal.core.Openable org.eclipse.jdt.internal.compiler.parser.Parser int org.eclipse.jdt.internal.compiler.ast.TypeDeclaration org.eclipse.core.runtime.SubMonitor int
      StackMap stack:
            aload 17 /* unitLoopMonitor */
            iconst_1
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
            pop
       122: .line 847
            aload 6 /* parsedUnits */
            iload 18 /* i */
            aaload
            astore 19 /* parsedUnit */
        start local 19 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
       123: .line 848
            aload 19 /* parsedUnit */
            ifnull 129
       124: .line 850
            aload 7 /* hasLocalType */
            iload 18 /* i */
            baload
            ifeq 129
       125: .line 851
            aload 14 /* parser */
            aload 19 /* parsedUnit */
            invokevirtual org.eclipse.jdt.internal.compiler.parser.Parser.getMethodBodies:(Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;)V
       126: .line 853
            goto 129
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.core.Openable[] java.util.HashSet org.eclipse.core.runtime.IProgressMonitor org.eclipse.core.runtime.SubMonitor int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration[] boolean[] org.eclipse.jdt.core.ICompilationUnit[] int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.core.IType org.eclipse.jdt.internal.core.Openable org.eclipse.jdt.internal.compiler.parser.Parser int org.eclipse.jdt.internal.compiler.ast.TypeDeclaration org.eclipse.core.runtime.SubMonitor int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
       127: pop
       128: .line 855
            aload 7 /* hasLocalType */
            iload 18 /* i */
            iconst_0
            bastore
        end local 19 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
       129: .line 845
      StackMap locals:
      StackMap stack:
            iinc 18 /* i */ 1
      StackMap locals:
      StackMap stack:
       130: iload 18 /* i */
            iload 9 /* unitsIndex */
            if_icmplt 121
        end local 18 // int i
       131: .line 863
            aload 4 /* subMonitor */
            iconst_1
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
            iload 9 /* unitsIndex */
            invokevirtual org.eclipse.core.runtime.SubMonitor.setWorkRemaining:(I)Lorg/eclipse/core/runtime/SubMonitor;
            astore 18 /* completeLoopMonitor */
        start local 18 // org.eclipse.core.runtime.SubMonitor completeLoopMonitor
       132: .line 864
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 6 /* parsedUnits */
            aload 7 /* hasLocalType */
            iload 9 /* unitsIndex */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings:([Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;[ZI)V
       133: .line 866
            iconst_0
            istore 19 /* i */
        start local 19 // int i
       134: goto 144
       135: .line 867
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.core.Openable[] java.util.HashSet org.eclipse.core.runtime.IProgressMonitor org.eclipse.core.runtime.SubMonitor int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration[] boolean[] org.eclipse.jdt.core.ICompilationUnit[] int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.core.IType org.eclipse.jdt.internal.core.Openable org.eclipse.jdt.internal.compiler.parser.Parser int org.eclipse.jdt.internal.compiler.ast.TypeDeclaration org.eclipse.core.runtime.SubMonitor org.eclipse.core.runtime.SubMonitor int
      StackMap stack:
            aload 18 /* completeLoopMonitor */
            iconst_1
            invokevirtual org.eclipse.core.runtime.SubMonitor.split:(I)Lorg/eclipse/core/runtime/SubMonitor;
            pop
       136: .line 868
            aload 6 /* parsedUnits */
            iload 19 /* i */
            aaload
            astore 20 /* parsedUnit */
        start local 20 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
       137: .line 871
            aload 20 /* parsedUnit */
            ifnull 143
       138: .line 872
            aload 7 /* hasLocalType */
            iload 19 /* i */
            baload
            istore 21 /* containsLocalType */
        start local 21 // boolean containsLocalType
       139: .line 873
            iload 21 /* containsLocalType */
            ifeq 142
       140: .line 874
            aload 20 /* parsedUnit */
            getfield org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.scope:Lorg/eclipse/jdt/internal/compiler/lookup/CompilationUnitScope;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.faultInTypes:()V
       141: .line 875
            aload 20 /* parsedUnit */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve:()V
       142: .line 877
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration int
      StackMap stack:
            aload 0 /* this */
            aload 20 /* parsedUnit */
            aload 8 /* cus */
            iload 19 /* i */
            aaload
            iload 21 /* containsLocalType */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.rememberAllTypes:(Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;Lorg/eclipse/jdt/core/ICompilationUnit;Z)V
        end local 21 // boolean containsLocalType
        end local 20 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit
       143: .line 866
      StackMap locals:
      StackMap stack:
            iinc 19 /* i */ 1
      StackMap locals:
      StackMap stack:
       144: iload 19 /* i */
            iload 9 /* unitsIndex */
            if_icmplt 135
        end local 19 // int i
        end local 18 // org.eclipse.core.runtime.SubMonitor completeLoopMonitor
       145: .line 880
            goto 147
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.core.Openable[] java.util.HashSet org.eclipse.core.runtime.IProgressMonitor org.eclipse.core.runtime.SubMonitor int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration[] boolean[] org.eclipse.jdt.core.ICompilationUnit[] int org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding org.eclipse.jdt.core.IType org.eclipse.jdt.internal.core.Openable org.eclipse.jdt.internal.compiler.parser.Parser int org.eclipse.jdt.internal.compiler.ast.TypeDeclaration org.eclipse.core.runtime.SubMonitor
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
       146: pop
       147: .line 886
      StackMap locals:
      StackMap stack:
            aload 11 /* focusBinaryBinding */
            ifnonnull 154
            aload 12 /* focus */
            ifnull 154
            aload 12 /* focus */
            invokeinterface org.eclipse.jdt.core.IType.isBinary:()Z
            ifeq 154
       148: .line 887
            aload 12 /* focus */
            invokeinterface org.eclipse.jdt.core.IType.getFullyQualifiedName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            astore 18 /* fullyQualifiedName */
        start local 18 // char[] fullyQualifiedName
       149: .line 888
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            bipush 46
            aload 18 /* fullyQualifiedName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[C)[[C
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getCachedType:([[C)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 11 /* focusBinaryBinding */
       150: .line 892
            aload 11 /* focusBinaryBinding */
            ifnull 152
       151: .line 893
            aload 11 /* focusBinaryBinding */
            getfield org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.tagBits:J
            ldc 33554432
            land
            lconst_0
            lcmp
            ifeq 154
       152: .line 904
      StackMap locals: char[]
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.reset:()V
       153: .line 894
            return
        end local 18 // char[] fullyQualifiedName
       154: .line 897
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 12 /* focus */
            aload 16 /* focusLocalType */
            aload 11 /* focusBinaryBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.reportHierarchy:(Lorg/eclipse/jdt/core/IType;Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)V
        end local 17 // org.eclipse.core.runtime.SubMonitor unitLoopMonitor
        end local 16 // org.eclipse.jdt.internal.compiler.ast.TypeDeclaration focusLocalType
        end local 15 // boolean isJava8
        end local 14 // org.eclipse.jdt.internal.compiler.parser.Parser parser
        end local 13 // org.eclipse.jdt.internal.core.Openable focusOpenable
        end local 12 // org.eclipse.jdt.core.IType focus
        end local 11 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding focusBinaryBinding
        end local 10 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration focusUnit
        end local 9 // int unitsIndex
        end local 8 // org.eclipse.jdt.core.ICompilationUnit[] cus
        end local 7 // boolean[] hasLocalType
        end local 6 // org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration[] parsedUnits
        end local 5 // int openablesLength
       155: .line 899
            goto 165
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver org.eclipse.jdt.internal.core.Openable[] java.util.HashSet org.eclipse.core.runtime.IProgressMonitor org.eclipse.core.runtime.SubMonitor
      StackMap stack: java.lang.ClassCastException
       156: pop
       157: .line 904
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.reset:()V
            goto 166
       158: .line 900
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
            astore 5 /* e */
        start local 5 // org.eclipse.jdt.internal.compiler.problem.AbortCompilation e
       159: .line 901
            getstatic org.eclipse.jdt.internal.core.hierarchy.TypeHierarchy.DEBUG:Z
            ifeq 161
       160: .line 902
            aload 5 /* e */
            invokevirtual org.eclipse.jdt.internal.compiler.problem.AbortCompilation.printStackTrace:()V
        end local 5 // org.eclipse.jdt.internal.compiler.problem.AbortCompilation e
       161: .line 904
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.reset:()V
            goto 166
       162: .line 903
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 27
       163: .line 904
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.reset:()V
       164: .line 905
            aload 27
            athrow
       165: .line 904
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.reset:()V
       166: .line 906
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.eclipse.core.runtime.SubMonitor subMonitor
        end local 3 // org.eclipse.core.runtime.IProgressMonitor monitor
        end local 2 // java.util.HashSet localTypes
        end local 1 // org.eclipse.jdt.internal.core.Openable[] openables
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0  167     0                        this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0  167     1                   openables  [Lorg/eclipse/jdt/internal/core/Openable;
            0  167     2                  localTypes  Ljava/util/HashSet;
            0  167     3                     monitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            1  167     4                  subMonitor  Lorg/eclipse/core/runtime/SubMonitor;
            2  155     5             openablesLength  I
            3  155     6                 parsedUnits  [Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            4  155     7                hasLocalType  [Z
            5  155     8                         cus  [Lorg/eclipse/jdt/core/ICompilationUnit;
            6  155     9                  unitsIndex  I
            7  155    10                   focusUnit  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
            8  155    11          focusBinaryBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            9  155    12                       focus  Lorg/eclipse/jdt/core/IType;
           10  155    13               focusOpenable  Lorg/eclipse/jdt/internal/core/Openable;
           17  155    14                      parser  Lorg/eclipse/jdt/internal/compiler/parser/Parser;
           20  155    15                     isJava8  Z
           21   96    16                           i  I
           23   94    17                    openable  Lorg/eclipse/jdt/internal/core/Openable;
           25   77    18                          cu  Lorg/eclipse/jdt/core/ICompilationUnit;
           26   77    19           containsLocalType  Z
           30   33    20                        path  Lorg/eclipse/core/runtime/IPath;
           34   77    20                  parsedUnit  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
           36   63    21                      result  Lorg/eclipse/jdt/internal/compiler/CompilationResult;
           37   63    22                   typeInfos  [Lorg/eclipse/jdt/internal/core/SourceTypeElementInfo;
           38   48    23               topLevelTypes  [Lorg/eclipse/jdt/core/IType;
           39   48    24              topLevelLength  I
           43   48    25                           j  I
           45   46    26                topLevelType  Lorg/eclipse/jdt/core/IType;
           56   63    23                       flags  I
           65   68    21                        file  Lorg/eclipse/core/resources/IFile;
           66   68    22                  sourceUnit  Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;
           67   68    23                  unitResult  Lorg/eclipse/jdt/internal/compiler/CompilationResult;
           79   94    18                   classFile  Lorg/eclipse/jdt/internal/core/ClassFile;
           80   94    19                  binaryType  Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;
           85   86    20                        file  Lorg/eclipse/core/resources/IResource;
           89   92    20           binaryTypeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding;
           97  155    16              focusLocalType  Lorg/eclipse/jdt/internal/compiler/ast/TypeDeclaration;
          100  118    17                           i  I
          102  116    18                suppliedType  Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
          104  116    19  previousUnitBeingCompleted  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
          107  109    20                 typeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
          119  155    17             unitLoopMonitor  Lorg/eclipse/core/runtime/SubMonitor;
          120  131    18                           i  I
          123  129    19                  parsedUnit  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
          132  145    18         completeLoopMonitor  Lorg/eclipse/core/runtime/SubMonitor;
          134  145    19                           i  I
          137  143    20                  parsedUnit  Lorg/eclipse/jdt/internal/compiler/ast/CompilationUnitDeclaration;
          139  143    21           containsLocalType  Z
          149  154    18          fullyQualifiedName  [C
          159  161     5                           e  Lorg/eclipse/jdt/internal/compiler/problem/AbortCompilation;
      Exception table:
        from    to  target  type
          37    40      49  Class org.eclipse.jdt.core.JavaModelException
          41    48      49  Class org.eclipse.jdt.core.JavaModelException
          72    75      76  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
          87    92      93  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
         104   109     110  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
         104   111     112  any
         124   126     127  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
         131   145     146  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
           1   152     156  Class java.lang.ClassCastException
         154   155     156  Class java.lang.ClassCastException
           1   152     158  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
         154   155     158  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
           1   152     162  any
         154   157     162  any
         158   161     162  any
    MethodParameters:
            Name  Flags
      openables   
      localTypes  
      monitor     

  private char[] findAssociatedModuleName(org.eclipse.jdt.internal.core.Openable);
    descriptor: (Lorg/eclipse/jdt/internal/core/Openable;)[C
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.core.Openable openable
         0: .line 909
            aconst_null
            astore 2 /* module */
        start local 2 // org.eclipse.jdt.core.IModuleDescription module
         1: .line 910
            aload 1 /* openable */
            invokevirtual org.eclipse.jdt.internal.core.Openable.getPackageFragmentRoot:()Lorg/eclipse/jdt/internal/core/PackageFragmentRoot;
            astore 3 /* root */
        start local 3 // org.eclipse.jdt.core.IPackageFragmentRoot root
         2: .line 912
            aload 3 /* root */
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.getKind:()I
            iconst_1
            if_icmpne 4
         3: .line 913
            aload 3 /* root */
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.getJavaProject:()Lorg/eclipse/jdt/core/IJavaProject;
            invokeinterface org.eclipse.jdt.core.IJavaProject.getModuleDescription:()Lorg/eclipse/jdt/core/IModuleDescription;
            astore 2 /* module */
            goto 7
         4: .line 915
      StackMap locals: org.eclipse.jdt.core.IModuleDescription org.eclipse.jdt.core.IPackageFragmentRoot
      StackMap stack:
            aload 3 /* root */
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.getModuleDescription:()Lorg/eclipse/jdt/core/IModuleDescription;
            astore 2 /* module */
         5: .line 916
            goto 7
      StackMap locals:
      StackMap stack: org.eclipse.jdt.core.JavaModelException
         6: pop
         7: .line 919
      StackMap locals:
      StackMap stack:
            aload 2 /* module */
            ifnull 9
         8: .line 920
            aload 2 /* module */
            invokeinterface org.eclipse.jdt.core.IModuleDescription.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
            areturn
         9: .line 921
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // org.eclipse.jdt.core.IPackageFragmentRoot root
        end local 2 // org.eclipse.jdt.core.IModuleDescription module
        end local 1 // org.eclipse.jdt.internal.core.Openable openable
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0   10     1  openable  Lorg/eclipse/jdt/internal/core/Openable;
            1   10     2    module  Lorg/eclipse/jdt/core/IModuleDescription;
            2   10     3      root  Lorg/eclipse/jdt/core/IPackageFragmentRoot;
      Exception table:
        from    to  target  type
           2     5       6  Class org.eclipse.jdt.core.JavaModelException
    MethodParameters:
          Name  Flags
      openable  

  private void setEnvironment(org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment, org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment lookupEnvironment
        start local 2 // org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder builder
         0: .line 925
            aload 0 /* this */
            aload 1 /* lookupEnvironment */
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
         1: .line 926
            aload 0 /* this */
            aload 2 /* builder */
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.builder:Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
         2: .line 928
            aload 0 /* this */
            iconst_m1
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeIndex:I
         3: .line 929
            aload 0 /* this */
            iconst_5
            anewarray org.eclipse.jdt.internal.compiler.env.IGenericType
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeModels:[Lorg/eclipse/jdt/internal/compiler/env/IGenericType;
         4: .line 930
            aload 0 /* this */
            iconst_5
            anewarray org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.typeBindings:[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         5: .line 931
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.bindingMap:Lorg/eclipse/jdt/internal/core/hierarchy/BindingMap;
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.BindingMap.clear:()V
         6: .line 932
            return
        end local 2 // org.eclipse.jdt.internal.core.hierarchy.HierarchyBuilder builder
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment lookupEnvironment
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0    7     1  lookupEnvironment  Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            0    7     2            builder  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyBuilder;
    MethodParameters:
                   Name  Flags
      lookupEnvironment  
      builder            

  public org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding setFocusType(char[][]);
    descriptor: ([[C)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // char[][] compoundName
         0: .line 939
            aload 1 /* compoundName */
            ifnull 1
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            ifnonnull 2
      StackMap locals:
      StackMap stack:
         1: aconst_null
            areturn
         2: .line 940
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 1 /* compoundName */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.getCachedType:([[C)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         3: .line 941
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnonnull 21
         4: .line 942
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 1 /* compoundName */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.UnNamedModule:Lorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType:([[CLorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
         5: .line 943
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnonnull 21
         6: .line 944
            aload 1 /* compoundName */
            arraylength
            istore 2 /* length */
        start local 2 // int length
         7: .line 945
            aload 1 /* compoundName */
            iload 2 /* length */
            iconst_1
            isub
            aaload
            astore 3 /* typeName */
        start local 3 // char[] typeName
         8: .line 946
            bipush 36
            aload 3 /* typeName */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.indexOf:(C[C)I
            istore 4 /* firstDollar */
        start local 4 // int firstDollar
         9: .line 947
            iload 4 /* firstDollar */
            iconst_m1
            if_icmpeq 21
        10: .line 948
            aload 1 /* compoundName */
            iload 2 /* length */
            iconst_1
            isub
            aload 3 /* typeName */
            iconst_0
            iload 4 /* firstDollar */
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.subarray:([CII)[C
            aastore
        11: .line 949
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            aload 1 /* compoundName */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.lookupEnvironment:Lorg/eclipse/jdt/internal/compiler/lookup/LookupEnvironment;
            getfield org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.UnNamedModule:Lorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType:([[CLorg/eclipse/jdt/internal/compiler/lookup/ModuleBinding;)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        12: .line 950
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnull 21
        13: .line 951
            bipush 36
            aload 3 /* typeName */
            iload 4 /* firstDollar */
            iconst_1
            iadd
            aload 3 /* typeName */
            arraylength
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[CII)[[C
            astore 5 /* memberTypeNames */
        start local 5 // char[][] memberTypeNames
        14: .line 952
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        15: goto 20
        16: .line 953
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver char[][] int char[] int char[][] int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aload 5 /* memberTypeNames */
            iload 6 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.getMemberType:([C)Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            putfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
        17: .line 954
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnonnull 19
        18: .line 955
            aconst_null
            areturn
        19: .line 952
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 6 /* i */
            aload 5 /* memberTypeNames */
            arraylength
            if_icmplt 16
        end local 6 // int i
        end local 5 // char[][] memberTypeNames
        end local 4 // int firstDollar
        end local 3 // char[] typeName
        end local 2 // int length
        21: .line 961
      StackMap locals: org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver char[][]
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            areturn
        end local 1 // char[][] compoundName
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   22     0             this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0   22     1     compoundName  [[C
            7   21     2           length  I
            8   21     3         typeName  [C
            9   21     4      firstDollar  I
           14   21     5  memberTypeNames  [[C
           15   21     6                i  I
    MethodParameters:
              Name  Flags
      compoundName  

  public boolean subOrSuperOfFocus(org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
         0: .line 964
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            ifnonnull 1
            iconst_1
            ireturn
         1: .line 966
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            aload 1 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.subTypeOfType:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Z
            ifeq 3
         2: iconst_1
            ireturn
         3: .line 967
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.superTypesOnly:Z
            ifne 6
            aload 0 /* this */
            aload 1 /* typeBinding */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.focusType:Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.subTypeOfType:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Z
            ifeq 6
         4: iconst_1
            ireturn
         5: .line 968
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.compiler.problem.AbortCompilation
            pop
         6: .line 971
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0    7     1  typeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
      Exception table:
        from    to  target  type
           1     2       5  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
           3     4       5  Class org.eclipse.jdt.internal.compiler.problem.AbortCompilation
    MethodParameters:
             Name  Flags
      typeBinding  

  private boolean subTypeOfType(org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding, org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding subType
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
         0: .line 974
            aload 2 /* typeBinding */
            ifnull 1
            aload 1 /* subType */
            ifnonnull 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
         2: .line 975
      StackMap locals:
      StackMap stack:
            aload 1 /* subType */
            aload 2 /* typeBinding */
            invokestatic org.eclipse.jdt.internal.compiler.lookup.TypeBinding.equalsEquals:(Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;)Z
            ifeq 3
            iconst_1
            ireturn
         3: .line 976
      StackMap locals:
      StackMap stack:
            aload 1 /* subType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superclass:()Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 3 /* superclass */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding superclass
         4: .line 977
            aload 3 /* superclass */
            ifnull 5
            aload 3 /* superclass */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.erasure:()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 3 /* superclass */
         5: .line 979
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
      StackMap stack:
            aload 0 /* this */
            aload 3 /* superclass */
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.subTypeOfType:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Z
            ifeq 6
            iconst_1
            ireturn
         6: .line 980
      StackMap locals:
      StackMap stack:
            aload 1 /* subType */
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.superInterfaces:()[Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            astore 4 /* superInterfaces */
        start local 4 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] superInterfaces
         7: .line 981
            aload 4 /* superInterfaces */
            ifnull 15
         8: .line 982
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         9: aload 4 /* superInterfaces */
            arraylength
            istore 6 /* length */
        start local 6 // int length
        10: goto 14
        11: .line 983
      StackMap locals: org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] int int
      StackMap stack:
            aload 4 /* superInterfaces */
            iload 5 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.erasure:()Lorg/eclipse/jdt/internal/compiler/lookup/TypeBinding;
            checkcast org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
            astore 7 /* superInterface */
        start local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding superInterface
        12: .line 984
            aload 0 /* this */
            aload 7 /* superInterface */
            aload 2 /* typeBinding */
            invokevirtual org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.subTypeOfType:(Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;)Z
            ifeq 13
            iconst_1
            ireturn
        end local 7 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding superInterface
        13: .line 982
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 5 /* i */
            iload 6 /* length */
            if_icmplt 11
        end local 6 // int length
        end local 5 // int i
        15: .line 987
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding[] superInterfaces
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding superclass
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding typeBinding
        end local 1 // org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding subType
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   16     0             this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0   16     1          subType  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            0   16     2      typeBinding  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            4   16     3       superclass  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            7   16     4  superInterfaces  [Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
            9   15     5                i  I
           10   15     6           length  I
           12   13     7   superInterface  Lorg/eclipse/jdt/internal/compiler/lookup/ReferenceBinding;
    MethodParameters:
             Name  Flags
      subType      
      typeBinding  

  protected void worked(org.eclipse.core.runtime.IProgressMonitor, int);
    descriptor: (Lorg/eclipse/core/runtime/IProgressMonitor;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
        start local 1 // org.eclipse.core.runtime.IProgressMonitor monitor
        start local 2 // int work
         0: .line 990
            aload 1 /* monitor */
            ifnull 4
         1: .line 991
            aload 1 /* monitor */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.isCanceled:()Z
            ifeq 3
         2: .line 992
            new org.eclipse.core.runtime.OperationCanceledException
            dup
            invokespecial org.eclipse.core.runtime.OperationCanceledException.<init>:()V
            athrow
         3: .line 994
      StackMap locals:
      StackMap stack:
            aload 1 /* monitor */
            iload 2 /* work */
            invokeinterface org.eclipse.core.runtime.IProgressMonitor.worked:(I)V
         4: .line 997
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int work
        end local 1 // org.eclipse.core.runtime.IProgressMonitor monitor
        end local 0 // org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/eclipse/jdt/internal/core/hierarchy/HierarchyResolver;
            0    5     1  monitor  Lorg/eclipse/core/runtime/IProgressMonitor;
            0    5     2     work  I
    MethodParameters:
         Name  Flags
      monitor  
      work     
}
SourceFile: "HierarchyResolver.java"