public class org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant extends org.eclipse.debug.core.sourcelookup.AbstractSourceLookupParticipant
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant
  super_class: org.eclipse.debug.core.sourcelookup.AbstractSourceLookupParticipant
{
  private java.util.Map<org.eclipse.debug.core.sourcelookup.ISourceContainer, org.eclipse.jdt.launching.sourcelookup.containers.PackageFragmentRootSourceContainer> fDelegateContainers;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Lorg/eclipse/debug/core/sourcelookup/ISourceContainer;Lorg/eclipse/jdt/launching/sourcelookup/containers/PackageFragmentRootSourceContainer;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant this
         0: .line 43
            aload 0 /* this */
            invokespecial org.eclipse.debug.core.sourcelookup.AbstractSourceLookupParticipant.<init>:()V
            return
        end local 0 // org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/launching/sourcelookup/containers/JavaSourceLookupParticipant;

  public java.lang.String getSourceName(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant this
         0: .line 64
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tJavaDebugUtils cannot be resolved\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/launching/sourcelookup/containers/JavaSourceLookupParticipant;
    Exceptions:
      throws org.eclipse.core.runtime.CoreException
    MethodParameters:
        Name  Flags
      object  

  public void dispose();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant this
         0: .line 72
            aload 0 /* this */
            getfield org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant.fDelegateContainers:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 1 /* iterator */
        start local 1 // java.util.Iterator iterator
         1: .line 73
            goto 4
         2: .line 74
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 1 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.debug.core.sourcelookup.ISourceContainer
            astore 2 /* container */
        start local 2 // org.eclipse.debug.core.sourcelookup.ISourceContainer container
         3: .line 75
            aload 2 /* container */
            invokeinterface org.eclipse.debug.core.sourcelookup.ISourceContainer.dispose:()V
        end local 2 // org.eclipse.debug.core.sourcelookup.ISourceContainer container
         4: .line 73
      StackMap locals:
      StackMap stack:
            aload 1 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 77
            aload 0 /* this */
            aconst_null
            putfield org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant.fDelegateContainers:Ljava/util/Map;
         6: .line 78
            aload 0 /* this */
            invokespecial org.eclipse.debug.core.sourcelookup.AbstractSourceLookupParticipant.dispose:()V
         7: .line 80
            return
        end local 1 // java.util.Iterator iterator
        end local 0 // org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/eclipse/jdt/launching/sourcelookup/containers/JavaSourceLookupParticipant;
            1    8     1   iterator  Ljava/util/Iterator<Lorg/eclipse/jdt/launching/sourcelookup/containers/PackageFragmentRootSourceContainer;>;
            3    4     2  container  Lorg/eclipse/debug/core/sourcelookup/ISourceContainer;

  protected org.eclipse.debug.core.sourcelookup.ISourceContainer getDelegateContainer(org.eclipse.debug.core.sourcelookup.ISourceContainer);
    descriptor: (Lorg/eclipse/debug/core/sourcelookup/ISourceContainer;)Lorg/eclipse/debug/core/sourcelookup/ISourceContainer;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant this
        start local 1 // org.eclipse.debug.core.sourcelookup.ISourceContainer container
         0: .line 87
            aload 0 /* this */
            getfield org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant.fDelegateContainers:Ljava/util/Map;
            aload 1 /* container */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.eclipse.debug.core.sourcelookup.ISourceContainer
            astore 2 /* delegate */
        start local 2 // org.eclipse.debug.core.sourcelookup.ISourceContainer delegate
         1: .line 88
            aload 2 /* delegate */
            ifnonnull 3
         2: .line 89
            aload 1 /* container */
            areturn
         3: .line 91
      StackMap locals: org.eclipse.debug.core.sourcelookup.ISourceContainer
      StackMap stack:
            aload 2 /* delegate */
            areturn
        end local 2 // org.eclipse.debug.core.sourcelookup.ISourceContainer delegate
        end local 1 // org.eclipse.debug.core.sourcelookup.ISourceContainer container
        end local 0 // org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/eclipse/jdt/launching/sourcelookup/containers/JavaSourceLookupParticipant;
            0    4     1  container  Lorg/eclipse/debug/core/sourcelookup/ISourceContainer;
            1    4     2   delegate  Lorg/eclipse/debug/core/sourcelookup/ISourceContainer;
    MethodParameters:
           Name  Flags
      container  

  public void init(org.eclipse.debug.core.sourcelookup.ISourceLookupDirector);
    descriptor: (Lorg/eclipse/debug/core/sourcelookup/ISourceLookupDirector;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant this
        start local 1 // org.eclipse.debug.core.sourcelookup.ISourceLookupDirector director
         0: .line 98
            aload 0 /* this */
            aload 1 /* director */
            invokespecial org.eclipse.debug.core.sourcelookup.AbstractSourceLookupParticipant.init:(Lorg/eclipse/debug/core/sourcelookup/ISourceLookupDirector;)V
         1: .line 99
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant.fDelegateContainers:Ljava/util/Map;
         2: .line 100
            return
        end local 1 // org.eclipse.debug.core.sourcelookup.ISourceLookupDirector director
        end local 0 // org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/eclipse/jdt/launching/sourcelookup/containers/JavaSourceLookupParticipant;
            0    3     1  director  Lorg/eclipse/debug/core/sourcelookup/ISourceLookupDirector;
    MethodParameters:
          Name  Flags
      director  

  public void sourceContainersChanged(org.eclipse.debug.core.sourcelookup.ISourceLookupDirector);
    descriptor: (Lorg/eclipse/debug/core/sourcelookup/ISourceLookupDirector;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=12, args_size=2
        start local 0 // org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant this
        start local 1 // org.eclipse.debug.core.sourcelookup.ISourceLookupDirector director
         0: .line 107
            aload 0 /* this */
            getfield org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant.fDelegateContainers:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
         1: .line 108
            aload 1 /* director */
            invokeinterface org.eclipse.debug.core.sourcelookup.ISourceLookupDirector.getSourceContainers:()[Lorg/eclipse/debug/core/sourcelookup/ISourceContainer;
            astore 2 /* containers */
        start local 2 // org.eclipse.debug.core.sourcelookup.ISourceContainer[] containers
         2: .line 109
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 26
         4: .line 110
      StackMap locals: org.eclipse.debug.core.sourcelookup.ISourceContainer[] int
      StackMap stack:
            aload 2 /* containers */
            iload 3 /* i */
            aaload
            astore 4 /* container */
        start local 4 // org.eclipse.debug.core.sourcelookup.ISourceContainer container
         5: .line 111
            aload 4 /* container */
            invokeinterface org.eclipse.debug.core.sourcelookup.ISourceContainer.getType:()Lorg/eclipse/debug/core/sourcelookup/ISourceContainerType;
            invokeinterface org.eclipse.debug.core.sourcelookup.ISourceContainerType.getId:()Ljava/lang/String;
            getstatic org.eclipse.debug.core.sourcelookup.containers.ArchiveSourceContainer.TYPE_ID:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 25
         6: .line 112
            aload 4 /* container */
            checkcast org.eclipse.debug.core.sourcelookup.containers.ArchiveSourceContainer
            invokevirtual org.eclipse.debug.core.sourcelookup.containers.ArchiveSourceContainer.getFile:()Lorg/eclipse/core/resources/IFile;
            astore 5 /* file */
        start local 5 // org.eclipse.core.resources.IFile file
         7: .line 113
            aload 5 /* file */
            invokeinterface org.eclipse.core.resources.IFile.getProject:()Lorg/eclipse/core/resources/IProject;
            astore 6 /* project */
        start local 6 // org.eclipse.core.resources.IProject project
         8: .line 114
            aload 6 /* project */
            invokestatic org.eclipse.jdt.core.JavaCore.create:(Lorg/eclipse/core/resources/IProject;)Lorg/eclipse/jdt/core/IJavaProject;
            astore 7 /* javaProject */
        start local 7 // org.eclipse.jdt.core.IJavaProject javaProject
         9: .line 115
            aload 7 /* javaProject */
            invokeinterface org.eclipse.jdt.core.IJavaProject.exists:()Z
            ifeq 25
        10: .line 117
            aload 7 /* javaProject */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getPackageFragmentRoots:()[Lorg/eclipse/jdt/core/IPackageFragmentRoot;
            astore 8 /* roots */
        start local 8 // org.eclipse.jdt.core.IPackageFragmentRoot[] roots
        11: .line 118
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        12: goto 22
        13: .line 119
      StackMap locals: org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant org.eclipse.debug.core.sourcelookup.ISourceLookupDirector org.eclipse.debug.core.sourcelookup.ISourceContainer[] int org.eclipse.debug.core.sourcelookup.ISourceContainer org.eclipse.core.resources.IFile org.eclipse.core.resources.IProject org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IPackageFragmentRoot[] int
      StackMap stack:
            aload 8 /* roots */
            iload 9 /* j */
            aaload
            astore 10 /* root */
        start local 10 // org.eclipse.jdt.core.IPackageFragmentRoot root
        14: .line 120
            aload 5 /* file */
            aload 10 /* root */
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.getUnderlyingResource:()Lorg/eclipse/core/resources/IResource;
            invokeinterface org.eclipse.core.resources.IFile.equals:(Ljava/lang/Object;)Z
            ifeq 17
        15: .line 122
            aload 0 /* this */
            getfield org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant.fDelegateContainers:Ljava/util/Map;
            aload 4 /* container */
            new org.eclipse.jdt.launching.sourcelookup.containers.PackageFragmentRootSourceContainer
            dup
            aload 10 /* root */
            invokespecial org.eclipse.jdt.launching.sourcelookup.containers.PackageFragmentRootSourceContainer.<init>:(Lorg/eclipse/jdt/core/IPackageFragmentRoot;)V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 123
            goto 21
        17: .line 124
      StackMap locals: org.eclipse.jdt.core.IPackageFragmentRoot
      StackMap stack:
            aload 10 /* root */
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.getSourceAttachmentPath:()Lorg/eclipse/core/runtime/IPath;
            astore 11 /* path */
        start local 11 // org.eclipse.core.runtime.IPath path
        18: .line 125
            aload 11 /* path */
            ifnull 21
        19: .line 126
            aload 5 /* file */
            invokeinterface org.eclipse.core.resources.IFile.getFullPath:()Lorg/eclipse/core/runtime/IPath;
            aload 11 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifeq 21
        20: .line 128
            aload 0 /* this */
            getfield org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant.fDelegateContainers:Ljava/util/Map;
            aload 4 /* container */
            new org.eclipse.jdt.launching.sourcelookup.containers.PackageFragmentRootSourceContainer
            dup
            aload 10 /* root */
            invokespecial org.eclipse.jdt.launching.sourcelookup.containers.PackageFragmentRootSourceContainer.<init>:(Lorg/eclipse/jdt/core/IPackageFragmentRoot;)V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 11 // org.eclipse.core.runtime.IPath path
        end local 10 // org.eclipse.jdt.core.IPackageFragmentRoot root
        21: .line 118
      StackMap locals:
      StackMap stack:
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        22: iload 9 /* j */
            aload 8 /* roots */
            arraylength
            if_icmplt 13
        end local 9 // int j
        end local 8 // org.eclipse.jdt.core.IPackageFragmentRoot[] roots
        23: .line 133
            goto 25
      StackMap locals: org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant org.eclipse.debug.core.sourcelookup.ISourceLookupDirector org.eclipse.debug.core.sourcelookup.ISourceContainer[] int org.eclipse.debug.core.sourcelookup.ISourceContainer org.eclipse.core.resources.IFile org.eclipse.core.resources.IProject org.eclipse.jdt.core.IJavaProject
      StackMap stack: org.eclipse.jdt.core.JavaModelException
        24: pop
        end local 7 // org.eclipse.jdt.core.IJavaProject javaProject
        end local 6 // org.eclipse.core.resources.IProject project
        end local 5 // org.eclipse.core.resources.IFile file
        end local 4 // org.eclipse.debug.core.sourcelookup.ISourceContainer container
        25: .line 109
      StackMap locals: org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant org.eclipse.debug.core.sourcelookup.ISourceLookupDirector org.eclipse.debug.core.sourcelookup.ISourceContainer[] int
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 3 /* i */
            aload 2 /* containers */
            arraylength
            if_icmplt 4
        end local 3 // int i
        27: .line 138
            return
        end local 2 // org.eclipse.debug.core.sourcelookup.ISourceContainer[] containers
        end local 1 // org.eclipse.debug.core.sourcelookup.ISourceLookupDirector director
        end local 0 // org.eclipse.jdt.launching.sourcelookup.containers.JavaSourceLookupParticipant this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   28     0         this  Lorg/eclipse/jdt/launching/sourcelookup/containers/JavaSourceLookupParticipant;
            0   28     1     director  Lorg/eclipse/debug/core/sourcelookup/ISourceLookupDirector;
            2   28     2   containers  [Lorg/eclipse/debug/core/sourcelookup/ISourceContainer;
            3   27     3            i  I
            5   25     4    container  Lorg/eclipse/debug/core/sourcelookup/ISourceContainer;
            7   25     5         file  Lorg/eclipse/core/resources/IFile;
            8   25     6      project  Lorg/eclipse/core/resources/IProject;
            9   25     7  javaProject  Lorg/eclipse/jdt/core/IJavaProject;
           11   23     8        roots  [Lorg/eclipse/jdt/core/IPackageFragmentRoot;
           12   23     9            j  I
           14   21    10         root  Lorg/eclipse/jdt/core/IPackageFragmentRoot;
           18   21    11         path  Lorg/eclipse/core/runtime/IPath;
      Exception table:
        from    to  target  type
          10    23      24  Class org.eclipse.jdt.core.JavaModelException
    MethodParameters:
          Name  Flags
      director  
}
SourceFile: "JavaSourceLookupParticipant.java"