On Sat, 22 Apr 2023 18:40:45 GMT, Chen Liang <li...@openjdk.org> wrote:

>> Add a method `internalName` to `ClassDesc`, and unifies handling of string 
>> representation of a class constant in CONSTANT_Class_info via 
>> `ofInternalName` and `internalName` APIs, documented in `ClassDesc` itself. 
>> In particular, `ofInternalName` now accepts arrays.
>> 
>> The motivation of this API is that avoiding frequent String creations via 
>> caching (enabled by this new API, will be in a separate patch) would speed 
>> up Classfile API's [writing of simple class 
>> files](https://github.com/openjdk/jdk/blob/master/test/micro/org/openjdk/bench/jdk/classfile/Write.java)
>>  by 1/3. See 
>> https://mail.openjdk.org/pipermail/classfile-api-dev/2023-April/000296.html 
>> for more context.
>> 
>> This API is futureproof: for Valhalla's Q-types, it will return their string 
>> representation in CONSTANT_Class_info, which is most likely their full 
>> descriptor string.
>> 
>> Javadoc: 
>> https://cr.openjdk.org/~liach/8306697/java.base/java/lang/constant/ClassDesc.html
>
> Chen Liang has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Unify ofInternalName and internalName, document about CONSTANT_Class_info, 
> remove misleading JVMS 4.4.1 links

With the upcoming refactor to make parse/build instance methods, there 
is a logical place and lifetime for caches.

On 4/27/2023 2:37 PM, Mandy Chung wrote:
>
> I consulted with @briangoetz <https://github.com/briangoetz>. The 
> internal name should probably be cached in the ClassFile API 
> implementation.
>
> —
> Reply to this email directly, view it on GitHub 
> <https://github.com/openjdk/jdk/pull/13598#issuecomment-1526151053>, 
> or unsubscribe 
> <https://github.com/notifications/unsubscribe-auth/AABJ4RD2Q5PVEPGAYIHRKZLXDK4GRANCNFSM6AAAAAAXH4TPLU>.
> You are receiving this because you were mentioned.Message ID: 
> ***@***.***>
>

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

PR Comment: https://git.openjdk.org/jdk/pull/13598#issuecomment-1526164638

Reply via email to