public final class org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers implements org.eclipse.jdt.internal.launching.sourcelookup.advanced.IJDIHelpers
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers
  super_class: java.lang.Object
{
  public static final java.lang.String STRATA_ID;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdt"

  private static final org.eclipse.debug.core.model.IStackFrame[] EMPTY_STACK;
    descriptor: [Lorg/eclipse/debug/core/model/IStackFrame;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 123
            iconst_0
            anewarray org.eclipse.debug.core.model.IStackFrame
            putstatic org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers.EMPTY_STACK:[Lorg/eclipse/debug/core/model/IStackFrame;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers this
         0: .line 36
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 37
            return
        end local 0 // org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jdt/internal/launching/sourcelookup/advanced/JDIHelpers;

  public java.io.File getClassesLocation(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/io/File;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers this
         0: .line 44
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tIJavaReferenceType cannot be resolved to a type\n\tIJavaStackFrame cannot be resolved to a type\n\tIJavaStackFrame cannot be resolved to a type\n\tIJavaStackFrame cannot be resolved to a type\n\tIJavaObject cannot be resolved to a type\n\tIJavaType cannot be resolved to a type\n\tIJavaObject cannot be resolved to a type\n\tIJavaObject cannot be resolved to a type\n\tIJavaReferenceType cannot be resolved to a type\n\tIJavaReferenceType cannot be resolved to a type\n\tIJavaReferenceType cannot be resolved to a type\n\tIJavaReferenceType cannot be resolved to a type\n\tIJavaVariable cannot be resolved to a type\n\tIJavaVariable cannot be resolved to a type\n\tIJavaVariable cannot be resolved to a type\n\tIJavaType cannot be resolved to a type\n\tIJavaValue cannot be resolved to a type\n\tIJavaValue cannot be resolved to a type\n\tIJavaReferenceType cannot be resolved to a type\n\tIJavaReferenceType cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/launching/sourcelookup/advanced/JDIHelpers;
    Exceptions:
      throws org.eclipse.debug.core.DebugException
    MethodParameters:
         Name  Flags
      element  

  public java.lang.String getSourcePath(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.internal.launching.sourcelookup.advanced.JDIHelpers this
         0: .line 86
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tIJavaReferenceType cannot be resolved to a type\n\tIJavaStackFrame cannot be resolved to a type\n\tIJavaStackFrame cannot be resolved to a type\n\tIJavaStackFrame cannot be resolved to a type\n\tIJavaObject cannot be resolved to a type\n\tIJavaType cannot be resolved to a type\n\tIJavaObject cannot be resolved to a type\n\tIJavaObject cannot be resolved to a type\n\tIJavaReferenceType cannot be resolved to a type\n\tIJavaReferenceType cannot be resolved to a type\n\tIJavaReferenceType cannot be resolved to a type\n\tIJavaReferenceType cannot be resolved to a type\n\tIJavaVariable cannot be resolved to a type\n\tIJavaType cannot be resolved to a type\n\tIJavaVariable cannot be resolved to a type\n\tIJavaVariable cannot be resolved to a type\n\tIJavaReferenceType cannot be resolved to a type\n\tIJavaReferenceType cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/launching/sourcelookup/advanced/JDIHelpers;
    Exceptions:
      throws org.eclipse.debug.core.DebugException
    MethodParameters:
         Name  Flags
      element  

  private org.eclipse.debug.core.model.IStackFrame[] getStackFrames(java.lang.Object);
    descriptor: (Ljava/lang/Object;)[Lorg/eclipse/debug/core/model/IStackFrame;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers this
        start local 1 // java.lang.Object element
         0: .line 126
            aload 1 /* element */
            instanceof org.eclipse.debug.core.model.IStackFrame
            ifeq 8
         1: .line 127
            aload 1 /* element */
            checkcast org.eclipse.debug.core.model.IStackFrame
            invokeinterface org.eclipse.debug.core.model.IStackFrame.getThread:()Lorg/eclipse/debug/core/model/IThread;
            invokeinterface org.eclipse.debug.core.model.IThread.getStackFrames:()[Lorg/eclipse/debug/core/model/IStackFrame;
            astore 2 /* frames */
        start local 2 // org.eclipse.debug.core.model.IStackFrame[] frames
         2: .line 128
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 7
         4: .line 129
      StackMap locals: org.eclipse.debug.core.model.IStackFrame[] int
      StackMap stack:
            aload 2 /* frames */
            iload 3 /* i */
            aaload
            aload 1 /* element */
            if_acmpne 6
         5: .line 130
            aload 2 /* frames */
            iload 3 /* i */
            iconst_1
            iadd
            aload 2 /* frames */
            arraylength
            invokestatic java.util.Arrays.copyOfRange:([Ljava/lang/Object;II)[Ljava/lang/Object;
            checkcast org.eclipse.debug.core.model.IStackFrame[]
            areturn
         6: .line 128
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            aload 2 /* frames */
            arraylength
            iconst_1
            isub
            if_icmplt 4
        end local 3 // int i
        end local 2 // org.eclipse.debug.core.model.IStackFrame[] frames
         8: .line 134
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers.EMPTY_STACK:[Lorg/eclipse/debug/core/model/IStackFrame;
            areturn
        end local 1 // java.lang.Object element
        end local 0 // org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/eclipse/jdt/internal/launching/sourcelookup/advanced/JDIHelpers;
            0    9     1  element  Ljava/lang/Object;
            2    8     2   frames  [Lorg/eclipse/debug/core/model/IStackFrame;
            3    8     3        i  I
    Exceptions:
      throws org.eclipse.debug.core.DebugException
    MethodParameters:
         Name  Flags
      element  

  public java.lang.Iterable<java.io.File> getStackFramesClassesLocations();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Iterable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers this
        start local 1 // java.lang.Object element
         0: .line 139
            aload 0 /* this */
            aload 1 /* element */
            invokevirtual org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers.getStackFrames:(Ljava/lang/Object;)[Lorg/eclipse/debug/core/model/IStackFrame;
            astore 2 /* stack */
        start local 2 // org.eclipse.debug.core.model.IStackFrame[] stack
         1: .line 141
            new org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers$1
            dup
            aload 0 /* this */
            aload 2 /* stack */
            invokespecial org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers$1.<init>:(Lorg/eclipse/jdt/internal/launching/sourcelookup/advanced/JDIHelpers;[Lorg/eclipse/debug/core/model/IStackFrame;)V
            areturn
        end local 2 // org.eclipse.debug.core.model.IStackFrame[] stack
        end local 1 // java.lang.Object element
        end local 0 // org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/eclipse/jdt/internal/launching/sourcelookup/advanced/JDIHelpers;
            0    2     1  element  Ljava/lang/Object;
            1    2     2    stack  [Lorg/eclipse/debug/core/model/IStackFrame;
    Exceptions:
      throws org.eclipse.debug.core.DebugException
    Signature: (Ljava/lang/Object;)Ljava/lang/Iterable<Ljava/io/File;>;
    MethodParameters:
         Name  Flags
      element  

  private static java.lang.String generateSourceName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.lang.String qualifiedTypeName
         0: .line 164
            aload 0 /* qualifiedTypeName */
            bipush 36
            invokevirtual java.lang.String.indexOf:(I)I
            istore 1 /* index */
        start local 1 // int index
         1: .line 165
            iload 1 /* index */
            iflt 3
         2: .line 166
            aload 0 /* qualifiedTypeName */
            iconst_0
            iload 1 /* index */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 0 /* qualifiedTypeName */
         3: .line 168
      StackMap locals: int
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* qualifiedTypeName */
            bipush 46
            getstatic java.io.File.separatorChar:C
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".java"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // int index
        end local 0 // java.lang.String qualifiedTypeName
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0  qualifiedTypeName  Ljava/lang/String;
            1    4     1              index  I
    MethodParameters:
                   Name  Flags
      qualifiedTypeName  
}
SourceFile: "JDIHelpers.java"
NestMembers:
  org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers$1
InnerClasses:
  org.eclipse.jdt.internal.launching.sourcelookup.advanced.JDIHelpers$1