class jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer implements java.util.function.Consumer<java.util.jar.JarEntry>, java.util.function.Predicate<java.util.jar.JarEntry>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer
super_class: java.lang.Object
{
final jdk.tools.jmod.JmodOutputStream out;
descriptor: Ljdk/tools/jmod/JmodOutputStream;
flags: (0x0010) ACC_FINAL
final java.util.jar.JarFile jarfile;
descriptor: Ljava/util/jar/JarFile;
flags: (0x0010) ACC_FINAL
final jdk.tools.jmod.JmodTask$JmodFileWriter this$1;
descriptor: Ljdk/tools/jmod/JmodTask$JmodFileWriter;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(jdk.tools.jmod.JmodTask$JmodFileWriter, jdk.tools.jmod.JmodOutputStream, java.util.jar.JarFile);
descriptor: (Ljdk/tools/jmod/JmodTask$JmodFileWriter;Ljdk/tools/jmod/JmodOutputStream;Ljava/util/jar/JarFile;)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=4
start local 0 start local 2 start local 3 0: aload 0
aload 1
putfield jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer.this$1:Ljdk/tools/jmod/JmodTask$JmodFileWriter;
aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 2
putfield jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer.out:Ljdk/tools/jmod/JmodOutputStream;
2: aload 0
aload 3
putfield jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer.jarfile:Ljava/util/jar/JarFile;
3: return
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/tools/jmod/JmodTask$JmodFileWriter$JarEntryConsumer;
0 4 2 out Ljdk/tools/jmod/JmodOutputStream;
0 4 3 jarfile Ljava/util/jar/JarFile;
MethodParameters:
Name Flags
this$0 final
out
jarfile
public void accept(java.util.jar.JarEntry);
descriptor: (Ljava/util/jar/JarEntry;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
aconst_null
astore 3
1: aload 0
getfield jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer.jarfile:Ljava/util/jar/JarFile;
aload 1
invokevirtual java.util.jar.JarFile.getInputStream:(Ljava/util/zip/ZipEntry;)Ljava/io/InputStream;
astore 4
start local 4 2: aload 0
getfield jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer.out:Ljdk/tools/jmod/JmodOutputStream;
aload 4
getstatic jdk.internal.jmod.JmodFile$Section.CLASSES:Ljdk/internal/jmod/JmodFile$Section;
aload 1
invokevirtual java.util.jar.JarEntry.getName:()Ljava/lang/String;
invokevirtual jdk.tools.jmod.JmodOutputStream.writeEntry:(Ljava/io/InputStream;Ljdk/internal/jmod/JmodFile$Section;Ljava/lang/String;)V
3: aload 4
ifnull 11
aload 4
invokevirtual java.io.InputStream.close:()V
goto 11
StackMap locals: jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer java.util.jar.JarEntry java.lang.Throwable java.lang.Throwable java.io.InputStream
StackMap stack: java.lang.Throwable
4: astore 2
aload 4
ifnull 5
aload 4
invokevirtual java.io.InputStream.close:()V
end local 4 StackMap locals:
StackMap stack:
5: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
6: astore 3
aload 2
ifnonnull 7
aload 3
astore 2
goto 8
StackMap locals:
StackMap stack:
7: aload 2
aload 3
if_acmpeq 8
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
8: aload 2
athrow
StackMap locals: jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer java.util.jar.JarEntry
StackMap stack: java.io.IOException
9: astore 2
start local 2 10: new java.io.UncheckedIOException
dup
aload 2
invokespecial java.io.UncheckedIOException.<init>:(Ljava/io/IOException;)V
athrow
end local 2 11: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljdk/tools/jmod/JmodTask$JmodFileWriter$JarEntryConsumer;
0 12 1 je Ljava/util/jar/JarEntry;
2 5 4 in Ljava/io/InputStream;
10 11 2 e Ljava/io/IOException;
Exception table:
from to target type
2 3 4 any
1 6 6 any
0 9 9 Class java.io.IOException
MethodParameters:
Name Flags
je
public boolean test(java.util.jar.JarEntry);
descriptor: (Ljava/util/jar/JarEntry;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.util.jar.JarEntry.getName:()Ljava/lang/String;
astore 2
start local 2 1: aload 2
ldc "module-info.class"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 2
aload 1
invokevirtual java.util.jar.JarEntry.isDirectory:()Z
ifeq 3
2: StackMap locals: java.lang.String
StackMap stack:
iconst_0
ireturn
3: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer.out:Ljdk/tools/jmod/JmodOutputStream;
getstatic jdk.internal.jmod.JmodFile$Section.CLASSES:Ljdk/internal/jmod/JmodFile$Section;
aload 2
invokevirtual jdk.tools.jmod.JmodOutputStream.contains:(Ljdk/internal/jmod/JmodFile$Section;Ljava/lang/String;)Z
ifeq 6
4: aload 0
getfield jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer.this$1:Ljdk/tools/jmod/JmodTask$JmodFileWriter;
invokestatic jdk.tools.jmod.JmodTask$JmodFileWriter.access$0:(Ljdk/tools/jmod/JmodTask$JmodFileWriter;)Ljdk/tools/jmod/JmodTask;
ldc "warn.ignore.duplicate.entry"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
dup
iconst_1
getstatic jdk.internal.jmod.JmodFile$Section.CLASSES:Ljdk/internal/jmod/JmodFile$Section;
aastore
invokevirtual jdk.tools.jmod.JmodTask.warning:(Ljava/lang/String;[Ljava/lang/Object;)V
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/tools/jmod/JmodTask$JmodFileWriter$JarEntryConsumer;
0 7 1 je Ljava/util/jar/JarEntry;
1 7 2 name Ljava/lang/String;
MethodParameters:
Name Flags
je
public boolean test(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast java.util.jar.JarEntry
invokevirtual jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer.test:(Ljava/util/jar/JarEntry;)Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
public void accept(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast java.util.jar.JarEntry
invokevirtual jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer.accept:(Ljava/util/jar/JarEntry;)V
return
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Ljava/util/function/Consumer<Ljava/util/jar/JarEntry;>;Ljava/util/function/Predicate<Ljava/util/jar/JarEntry;>;
SourceFile: "JmodTask.java"
NestHost: jdk.tools.jmod.JmodTask
InnerClasses:
public final Section = jdk.internal.jmod.JmodFile$Section of jdk.internal.jmod.JmodFile
private JmodFileWriter = jdk.tools.jmod.JmodTask$JmodFileWriter of jdk.tools.jmod.JmodTask
JarEntryConsumer = jdk.tools.jmod.JmodTask$JmodFileWriter$JarEntryConsumer of jdk.tools.jmod.JmodTask$JmodFileWriter