RFR: 8323058: Revisit j.l.classfile.CodeBuilder API surface [v6]

Adam Sotona asotona at openjdk.org
Mon Apr 15 14:18:58 UTC 2024


> `java.lang.classfile.CodeBuilder` contains more than 230 API methods.
> Existing ClassFile API use cases proved the concept one big CodeBuilder is comfortable. However there are some redundancies, glitches in the naming conventions, some frequently used methods are hard to find and some methods have low practical use.
> 
> This patch revisits the `CodeBuilder` API methods and introduces some changes.
> 
> For more details, please, visit the [CSR ](https://bugs.openjdk.org/browse/JDK-8323067)
> 
> Please review.
> 
> Thank you,
> Adam

Adam Sotona has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 14 commits:

 - Merge branch 'master' into JDK-8323058-CodeBuilder
   
   # Conflicts:
   #	src/java.base/share/classes/java/lang/runtime/SwitchBootstraps.java
   #	test/jdk/jdk/classfile/helpers/RebuildingTransformation.java
 - added @since 23 tags for new CodeBuilder methods
 - fixed ClassFile API use in new tests
 - Merge branch 'master' into JDK-8323058-CodeBuilder
 - removed CodeBuilder::newObject methods
 - Merge branch 'master' into JDK-8323058-CodeBuilder
   
   # Conflicts:
   #	src/java.base/share/classes/java/lang/runtime/SwitchBootstraps.java
   #	src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/SystemModulesPlugin.java
 - extended CodeBuilder::conversion functionality
 - removed CodeBuilder::newPrimitiveArray, newReferenceArray, newMultidimensionalArray and operator methods
 - fixed tests
 - fixed jdk/classfile tests
 - ... and 4 more: https://git.openjdk.org/jdk/compare/273df628...62d4f9f4

-------------

Changes: https://git.openjdk.org/jdk/pull/17282/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=17282&range=05
  Stats: 931 lines in 52 files changed: 56 ins; 207 del; 668 mod
  Patch: https://git.openjdk.org/jdk/pull/17282.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/17282/head:pull/17282

PR: https://git.openjdk.org/jdk/pull/17282


More information about the core-libs-dev mailing list