public class org.eclipse.jdt.internal.core.builder.ModuleInfoBuilder
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.jdt.internal.core.builder.ModuleInfoBuilder
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jdt/internal/core/builder/ModuleInfoBuilder;
public byte[] compileWithAttributes(org.eclipse.jdt.core.IModuleDescription, java.util.Map<java.lang.String, java.lang.String>);
descriptor: (Lorg/eclipse/jdt/core/IModuleDescription;Ljava/util/Map;)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface org.eclipse.jdt.core.IModuleDescription.getJavaProject:()Lorg/eclipse/jdt/core/IJavaProject;
astore 3
start local 3 1: new org.eclipse.jdt.internal.core.builder.NameEnvironment
dup
aload 3
getstatic org.eclipse.jdt.internal.core.CompilationGroup.MAIN:Lorg/eclipse/jdt/internal/core/CompilationGroup;
invokespecial org.eclipse.jdt.internal.core.builder.NameEnvironment.<init>:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/internal/core/CompilationGroup;)V
astore 4
start local 4 2: aload 0
aload 1
aload 4
getfield org.eclipse.jdt.internal.core.builder.NameEnvironment.moduleUpdater:Lorg/eclipse/jdt/internal/core/ModuleUpdater;
aload 2
invokevirtual org.eclipse.jdt.internal.core.builder.ModuleInfoBuilder.addModuleUpdates:(Lorg/eclipse/jdt/core/IModuleDescription;Lorg/eclipse/jdt/internal/core/ModuleUpdater;Ljava/util/Map;)V
3: aload 0
aload 3
aload 4
aload 1
invokevirtual org.eclipse.jdt.internal.core.builder.ModuleInfoBuilder.getSourceLocation:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/internal/core/builder/NameEnvironment;Lorg/eclipse/jdt/core/IModuleDescription;)Lorg/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory;
astore 5
start local 5 4: aload 1
invokeinterface org.eclipse.jdt.core.IModuleDescription.getCompilationUnit:()Lorg/eclipse/jdt/core/ICompilationUnit;
invokeinterface org.eclipse.jdt.core.ICompilationUnit.getCorrespondingResource:()Lorg/eclipse/core/resources/IResource;
checkcast org.eclipse.core.resources.IFile
astore 6
start local 6 5: iconst_1
anewarray org.eclipse.jdt.internal.compiler.env.ICompilationUnit
dup
iconst_0
new org.eclipse.jdt.internal.core.builder.SourceFile
dup
aload 6
aload 5
invokespecial org.eclipse.jdt.internal.core.builder.SourceFile.<init>:(Lorg/eclipse/core/resources/IFile;Lorg/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory;)V
aastore
astore 7
start local 7 6: new org.eclipse.jdt.internal.core.builder.ModuleInfoBuilder$BytecodeCollector
dup
invokespecial org.eclipse.jdt.internal.core.builder.ModuleInfoBuilder$BytecodeCollector.<init>:()V
astore 8
start local 8 7: new org.eclipse.jdt.internal.compiler.Compiler
dup
8: aload 4
9: invokestatic org.eclipse.jdt.internal.compiler.DefaultErrorHandlingPolicies.exitOnFirstError:()Lorg/eclipse/jdt/internal/compiler/IErrorHandlingPolicy;
10: new org.eclipse.jdt.internal.compiler.impl.CompilerOptions
dup
aload 3
iconst_1
invokeinterface org.eclipse.jdt.core.IJavaProject.getOptions:(Z)Ljava/util/Map;
invokespecial org.eclipse.jdt.internal.compiler.impl.CompilerOptions.<init>:(Ljava/util/Map;)V
11: aload 8
12: invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
invokestatic org.eclipse.jdt.internal.core.builder.ProblemFactory.getProblemFactory:(Ljava/util/Locale;)Lorg/eclipse/jdt/internal/core/builder/ProblemFactory;
13: invokespecial org.eclipse.jdt.internal.compiler.Compiler.<init>:(Lorg/eclipse/jdt/internal/compiler/env/INameEnvironment;Lorg/eclipse/jdt/internal/compiler/IErrorHandlingPolicy;Lorg/eclipse/jdt/internal/compiler/impl/CompilerOptions;Lorg/eclipse/jdt/internal/compiler/ICompilerRequestor;Lorg/eclipse/jdt/internal/compiler/IProblemFactory;)V
astore 9
start local 9 14: aload 9
aload 7
invokevirtual org.eclipse.jdt.internal.compiler.Compiler.compile:([Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;)V
15: aload 8
getfield org.eclipse.jdt.internal.core.builder.ModuleInfoBuilder$BytecodeCollector.bytes:[B
areturn
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/eclipse/jdt/internal/core/builder/ModuleInfoBuilder;
0 16 1 module Lorg/eclipse/jdt/core/IModuleDescription;
0 16 2 classFileAttributes Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
1 16 3 javaProject Lorg/eclipse/jdt/core/IJavaProject;
2 16 4 nameEnvironment Lorg/eclipse/jdt/internal/core/builder/NameEnvironment;
4 16 5 sourceLocation Lorg/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory;
5 16 6 file Lorg/eclipse/core/resources/IFile;
6 16 7 sourceUnits [Lorg/eclipse/jdt/internal/compiler/env/ICompilationUnit;
7 16 8 collector Lorg/eclipse/jdt/internal/core/builder/ModuleInfoBuilder$BytecodeCollector;
14 16 9 newCompiler Lorg/eclipse/jdt/internal/compiler/Compiler;
Exceptions:
throws org.eclipse.jdt.core.JavaModelException
Signature: (Lorg/eclipse/jdt/core/IModuleDescription;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)[B
MethodParameters:
Name Flags
module
classFileAttributes
private void addModuleUpdates(org.eclipse.jdt.core.IModuleDescription, org.eclipse.jdt.internal.core.ModuleUpdater, java.util.Map<java.lang.String, java.lang.String>);
descriptor: (Lorg/eclipse/jdt/core/IModuleDescription;Lorg/eclipse/jdt/internal/core/ModuleUpdater;Ljava/util/Map;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
getstatic org.eclipse.jdt.core.util.IAttributeNamesConstants.MODULE_MAIN_CLASS:[C
invokestatic java.lang.String.valueOf:([C)Ljava/lang/String;
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 1: aload 4
ifnull 3
2: aload 2
aload 1
invokeinterface org.eclipse.jdt.core.IModuleDescription.getElementName:()Ljava/lang/String;
aload 4
invokedynamic accept(Ljava/lang/String;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder.lambda$0(Ljava/lang/String;Lorg/eclipse/jdt/internal/compiler/env/IUpdatableModule;)V (6)
(Lorg/eclipse/jdt/internal/compiler/env/IUpdatableModule;)V
getstatic org.eclipse.jdt.internal.compiler.env.IUpdatableModule$UpdateKind.MODULE:Lorg/eclipse/jdt/internal/compiler/env/IUpdatableModule$UpdateKind;
invokevirtual org.eclipse.jdt.internal.core.ModuleUpdater.addModuleUpdate:(Ljava/lang/String;Ljava/util/function/Consumer;Lorg/eclipse/jdt/internal/compiler/env/IUpdatableModule$UpdateKind;)V
3: StackMap locals: java.lang.String
StackMap stack:
aload 3
getstatic org.eclipse.jdt.core.util.IAttributeNamesConstants.MODULE_PACKAGES:[C
invokestatic java.lang.String.valueOf:([C)Ljava/lang/String;
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 4: aload 5
ifnull 13
5: new org.eclipse.jdt.internal.compiler.util.SimpleSetOfCharArray
dup
invokespecial org.eclipse.jdt.internal.compiler.util.SimpleSetOfCharArray.<init>:()V
astore 6
start local 6 6: aload 5
ldc ","
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 7
start local 7 7: iconst_0
istore 8
start local 8 8: goto 11
9: StackMap locals: org.eclipse.jdt.internal.core.builder.ModuleInfoBuilder org.eclipse.jdt.core.IModuleDescription org.eclipse.jdt.internal.core.ModuleUpdater java.util.Map java.lang.String java.lang.String org.eclipse.jdt.internal.compiler.util.SimpleSetOfCharArray java.lang.String[] int
StackMap stack:
aload 6
aload 7
iload 8
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokevirtual java.lang.String.toCharArray:()[C
invokevirtual org.eclipse.jdt.internal.compiler.util.SimpleSetOfCharArray.add:([C)Ljava/lang/Object;
pop
10: iinc 8 1
StackMap locals:
StackMap stack:
11: iload 8
aload 7
arraylength
if_icmplt 9
end local 8 12: aload 2
aload 1
invokeinterface org.eclipse.jdt.core.IModuleDescription.getElementName:()Ljava/lang/String;
aload 6
invokedynamic accept(Lorg/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
org/eclipse/jdt/internal/core/builder/ModuleInfoBuilder.lambda$1(Lorg/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray;Lorg/eclipse/jdt/internal/compiler/env/IUpdatableModule;)V (6)
(Lorg/eclipse/jdt/internal/compiler/env/IUpdatableModule;)V
getstatic org.eclipse.jdt.internal.compiler.env.IUpdatableModule$UpdateKind.MODULE:Lorg/eclipse/jdt/internal/compiler/env/IUpdatableModule$UpdateKind;
invokevirtual org.eclipse.jdt.internal.core.ModuleUpdater.addModuleUpdate:(Ljava/lang/String;Ljava/util/function/Consumer;Lorg/eclipse/jdt/internal/compiler/env/IUpdatableModule$UpdateKind;)V
end local 7 end local 6 13: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Map.isEmpty:()Z
ifne 15
14: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Unsupported key(s): "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/eclipse/jdt/internal/core/builder/ModuleInfoBuilder;
0 16 1 module Lorg/eclipse/jdt/core/IModuleDescription;
0 16 2 moduleUpdater Lorg/eclipse/jdt/internal/core/ModuleUpdater;
0 16 3 classFileAttributes Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
1 16 4 mainClassName Ljava/lang/String;
4 16 5 modulePackageNames Ljava/lang/String;
6 13 6 namesSet Lorg/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray;
7 13 7 providedNames [Ljava/lang/String;
8 12 8 i I
Signature: (Lorg/eclipse/jdt/core/IModuleDescription;Lorg/eclipse/jdt/internal/core/ModuleUpdater;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)V
MethodParameters:
Name Flags
module
moduleUpdater
classFileAttributes
private org.eclipse.jdt.internal.core.builder.ClasspathMultiDirectory getSourceLocation(org.eclipse.jdt.core.IJavaProject, org.eclipse.jdt.internal.core.builder.NameEnvironment, org.eclipse.jdt.core.IModuleDescription);
descriptor: (Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/internal/core/builder/NameEnvironment;Lorg/eclipse/jdt/core/IModuleDescription;)Lorg/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
iconst_3
invokeinterface org.eclipse.jdt.core.IModuleDescription.getAncestor:(I)Lorg/eclipse/jdt/core/IJavaElement;
checkcast org.eclipse.jdt.core.IPackageFragmentRoot
astore 4
start local 4 1: aload 4
invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.getCorrespondingResource:()Lorg/eclipse/core/resources/IResource;
astore 5
start local 5 2: aload 2
getfield org.eclipse.jdt.internal.core.builder.NameEnvironment.sourceLocations:[Lorg/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory;
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 7
StackMap locals: org.eclipse.jdt.internal.core.builder.ModuleInfoBuilder org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.internal.core.builder.NameEnvironment org.eclipse.jdt.core.IModuleDescription org.eclipse.jdt.core.IPackageFragmentRoot org.eclipse.core.resources.IResource top int int org.eclipse.jdt.internal.core.builder.ClasspathMultiDirectory[]
StackMap stack:
3: aload 9
iload 7
aaload
astore 6
start local 6 4: aload 6
getfield org.eclipse.jdt.internal.core.builder.ClasspathMultiDirectory.sourceFolder:Lorg/eclipse/core/resources/IContainer;
aload 5
invokeinterface org.eclipse.core.resources.IContainer.equals:(Ljava/lang/Object;)Z
ifeq 6
5: aload 6
areturn
end local 6 6: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
7: iload 7
iload 8
if_icmplt 3
8: new org.eclipse.jdt.core.JavaModelException
dup
new org.eclipse.jdt.internal.core.JavaModelStatus
dup
sipush 1006
aload 3
invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;)V
invokespecial org.eclipse.jdt.core.JavaModelException.<init>:(Lorg/eclipse/jdt/core/IJavaModelStatus;)V
athrow
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/eclipse/jdt/internal/core/builder/ModuleInfoBuilder;
0 9 1 javaProject Lorg/eclipse/jdt/core/IJavaProject;
0 9 2 nameEnvironment Lorg/eclipse/jdt/internal/core/builder/NameEnvironment;
0 9 3 module Lorg/eclipse/jdt/core/IModuleDescription;
1 9 4 root Lorg/eclipse/jdt/core/IPackageFragmentRoot;
2 9 5 rootResource Lorg/eclipse/core/resources/IResource;
4 6 6 sourceLocation Lorg/eclipse/jdt/internal/core/builder/ClasspathMultiDirectory;
Exceptions:
throws org.eclipse.jdt.core.JavaModelException
MethodParameters:
Name Flags
javaProject
nameEnvironment
module
private static void lambda$0(java.lang.String, org.eclipse.jdt.internal.compiler.env.IUpdatableModule);
descriptor: (Ljava/lang/String;Lorg/eclipse/jdt/internal/compiler/env/IUpdatableModule;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
aload 0
invokevirtual java.lang.String.toCharArray:()[C
invokeinterface org.eclipse.jdt.internal.compiler.env.IUpdatableModule.setMainClassName:([C)V
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 m Lorg/eclipse/jdt/internal/compiler/env/IUpdatableModule;
private static void lambda$1(org.eclipse.jdt.internal.compiler.util.SimpleSetOfCharArray, org.eclipse.jdt.internal.compiler.env.IUpdatableModule);
descriptor: (Lorg/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray;Lorg/eclipse/jdt/internal/compiler/env/IUpdatableModule;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
aload 0
invokeinterface org.eclipse.jdt.internal.compiler.env.IUpdatableModule.setPackageNames:(Lorg/eclipse/jdt/internal/compiler/util/SimpleSetOfCharArray;)V
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 m Lorg/eclipse/jdt/internal/compiler/env/IUpdatableModule;
}
SourceFile: "ModuleInfoBuilder.java"
NestMembers:
org.eclipse.jdt.internal.core.builder.ModuleInfoBuilder$BytecodeCollector
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final UpdateKind = org.eclipse.jdt.internal.compiler.env.IUpdatableModule$UpdateKind of org.eclipse.jdt.internal.compiler.env.IUpdatableModule
BytecodeCollector = org.eclipse.jdt.internal.core.builder.ModuleInfoBuilder$BytecodeCollector of org.eclipse.jdt.internal.core.builder.ModuleInfoBuilder