public class com.sun.istack.internal.tools.MaskingClassLoader extends java.lang.ClassLoader
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.istack.internal.tools.MaskingClassLoader
  super_class: java.lang.ClassLoader
{
  private final java.lang.String[] masks;
    descriptor: [Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.istack.internal.tools.MaskingClassLoader this
        start local 1 // java.lang.String[] masks
         0: .line 43
            aload 0 /* this */
            invokespecial java.lang.ClassLoader.<init>:()V
         1: .line 44
            aload 0 /* this */
            aload 1 /* masks */
            putfield com.sun.istack.internal.tools.MaskingClassLoader.masks:[Ljava/lang/String;
         2: .line 45
            return
        end local 1 // java.lang.String[] masks
        end local 0 // com.sun.istack.internal.tools.MaskingClassLoader this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/sun/istack/internal/tools/MaskingClassLoader;
            0    3     1  masks  [Ljava/lang/String;
    MethodParameters:
       Name  Flags
      masks  

  public void <init>(java.util.Collection<java.lang.String>);
    descriptor: (Ljava/util/Collection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.istack.internal.tools.MaskingClassLoader this
        start local 1 // java.util.Collection masks
         0: .line 48
            aload 0 /* this */
            aload 1 /* masks */
            aload 1 /* masks */
            invokeinterface java.util.Collection.size:()I
            anewarray java.lang.String
            invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            invokespecial com.sun.istack.internal.tools.MaskingClassLoader.<init>:([Ljava/lang/String;)V
         1: .line 49
            return
        end local 1 // java.util.Collection masks
        end local 0 // com.sun.istack.internal.tools.MaskingClassLoader this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/istack/internal/tools/MaskingClassLoader;
            0    2     1  masks  Ljava/util/Collection<Ljava/lang/String;>;
    Signature: (Ljava/util/Collection<Ljava/lang/String;>;)V
    MethodParameters:
       Name  Flags
      masks  

  public void <init>(java.lang.ClassLoader, java.lang.String[]);
    descriptor: (Ljava/lang/ClassLoader;[Ljava/lang/String;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.sun.istack.internal.tools.MaskingClassLoader this
        start local 1 // java.lang.ClassLoader parent
        start local 2 // java.lang.String[] masks
         0: .line 52
            aload 0 /* this */
            aload 1 /* parent */
            invokespecial java.lang.ClassLoader.<init>:(Ljava/lang/ClassLoader;)V
         1: .line 53
            aload 0 /* this */
            aload 2 /* masks */
            putfield com.sun.istack.internal.tools.MaskingClassLoader.masks:[Ljava/lang/String;
         2: .line 54
            return
        end local 2 // java.lang.String[] masks
        end local 1 // java.lang.ClassLoader parent
        end local 0 // com.sun.istack.internal.tools.MaskingClassLoader this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/sun/istack/internal/tools/MaskingClassLoader;
            0    3     1  parent  Ljava/lang/ClassLoader;
            0    3     2   masks  [Ljava/lang/String;
    MethodParameters:
        Name  Flags
      parent  
      masks   

  public void <init>(java.lang.ClassLoader, java.util.Collection<java.lang.String>);
    descriptor: (Ljava/lang/ClassLoader;Ljava/util/Collection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.sun.istack.internal.tools.MaskingClassLoader this
        start local 1 // java.lang.ClassLoader parent
        start local 2 // java.util.Collection masks
         0: .line 57
            aload 0 /* this */
            aload 1 /* parent */
            aload 2 /* masks */
            aload 2 /* masks */
            invokeinterface java.util.Collection.size:()I
            anewarray java.lang.String
            invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            invokespecial com.sun.istack.internal.tools.MaskingClassLoader.<init>:(Ljava/lang/ClassLoader;[Ljava/lang/String;)V
         1: .line 58
            return
        end local 2 // java.util.Collection masks
        end local 1 // java.lang.ClassLoader parent
        end local 0 // com.sun.istack.internal.tools.MaskingClassLoader this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/sun/istack/internal/tools/MaskingClassLoader;
            0    2     1  parent  Ljava/lang/ClassLoader;
            0    2     2   masks  Ljava/util/Collection<Ljava/lang/String;>;
    Signature: (Ljava/lang/ClassLoader;Ljava/util/Collection<Ljava/lang/String;>;)V
    MethodParameters:
        Name  Flags
      parent  
      masks   

  protected synchronized java.lang.Class<?> loadClass(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/lang/Class;
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // com.sun.istack.internal.tools.MaskingClassLoader this
        start local 1 // java.lang.String name
        start local 2 // boolean resolve
         0: .line 62
            aload 0 /* this */
            getfield com.sun.istack.internal.tools.MaskingClassLoader.masks:[Ljava/lang/String;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: com.sun.istack.internal.tools.MaskingClassLoader java.lang.String int top int int java.lang.String[]
      StackMap stack:
         1: aload 6
            iload 4
            aaload
            astore 3 /* mask */
        start local 3 // java.lang.String mask
         2: .line 63
            aload 1 /* name */
            aload 3 /* mask */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 4
         3: .line 64
            new java.lang.ClassNotFoundException
            dup
            invokespecial java.lang.ClassNotFoundException.<init>:()V
            athrow
        end local 3 // java.lang.String mask
         4: .line 62
      StackMap locals:
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 1
         6: .line 67
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* resolve */
            invokespecial java.lang.ClassLoader.loadClass:(Ljava/lang/String;Z)Ljava/lang/Class;
            areturn
        end local 2 // boolean resolve
        end local 1 // java.lang.String name
        end local 0 // com.sun.istack.internal.tools.MaskingClassLoader this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lcom/sun/istack/internal/tools/MaskingClassLoader;
            0    7     1     name  Ljava/lang/String;
            0    7     2  resolve  Z
            2    4     3     mask  Ljava/lang/String;
    Exceptions:
      throws java.lang.ClassNotFoundException
    Signature: (Ljava/lang/String;Z)Ljava/lang/Class<*>;
    MethodParameters:
         Name  Flags
      name     
      resolve  
}
SourceFile: "MaskingClassLoader.java"