RFR: 8294962: java.base jdk.internal.module package uses ASM to modify and write module-info.class [v3]
Adam Sotona
asotona at openjdk.org
Fri Mar 10 15:10:08 UTC 2023
On Fri, 10 Mar 2023 14:28:09 GMT, liach <duke at openjdk.org> wrote:
>> Adam Sotona has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 198 commits:
>>
>> - ModuleInfoWriter fixes
>> - ModuleInfoExtender comment fix
>> - Merge branch 'master' into JDK-8294962-internal-module
>> - Update src/java.base/share/classes/jdk/internal/module/ModuleInfoExtender.java
>>
>> Co-authored-by: Mandy Chung <mandy.chung at oracle.com>
>> - Merge branch 'master' into JDK-8294962-internal-module
>> - fixed jdk.internal.classfile.java.lang.constant package name
>> - Merge branch 'JDK-8294982' into JDK-8294962
>> - removed obsolete javadoc from implementation classes
>> - minor fix in CodeBuilder and added test cases to LDCTest
>> - EntryMap::nextPowerOfTwo delegates to Long:numberOfLeadingZeros
>> - ... and 188 more: https://git.openjdk.org/jdk/compare/e26cc526...9e366fbd
>
> src/java.base/share/classes/jdk/internal/module/ModuleInfoWriter.java line 88:
>
>> 86: ModuleAttribute.of(ModuleDesc.of(md.name()), mb -> {
>> 87: mb.moduleFlags(md.modifiers().stream()
>> 88: .map(mm -> MODULE_MODS_TO_FLAGS.getOrDefault(mm, 0))
>
> Should we use `mapToInt` instead of a plain `map`? Same for the other flags below.
yes, `mapToInt` seems to be better, thanks.
> src/java.base/share/classes/jdk/internal/module/ModuleInfoWriter.java line 124:
>
>> 122:
>> 123: // uses
>> 124: md.uses().stream().map(sn -> ClassDesc.of(sn)).forEach(mb::uses);
>
> map(ClassDesc::of).forEach(...
fixed, thanks.
> src/java.base/share/classes/jdk/internal/module/ModuleInfoWriter.java line 150:
>
>> 148:
>> 149: // write ModuleTarget attribute if there is a target platform
>> 150: if (target != null && target.targetPlatform().length() > 0) {
>
> `!target.targetPlatform().isEmpty()` is probably better than a length check.
fixed, thanks.
-------------
PR: https://git.openjdk.org/jdk/pull/11368
More information about the core-libs-dev
mailing list