RFR: 8311084: Add typeSymbol() API for applicable constant pool entries
Brian Goetz
briangoetz at openjdk.org
Thu Jun 29 13:28:58 UTC 2023
On Thu, 29 Jun 2023 13:23:51 GMT, Brian Goetz <briangoetz at openjdk.org> wrote:
>> 5 Constant Pool entries, namely ConstantDynamicEntry, InvokeDynamicEntry, FieldRefEntry, MethodRefEntry, and InterfaceMethodRefEntry should have a typeSymbol() API to return the nominal/symbolic descriptor (ClassDesc or MethodTypeDesc).
>>
>> This API is not added to NameAndTypeEntry itself, for a NameAndTypeEntry only knows if its type should be a field or method type from the other entries that refer to it.
>>
>> This is one of the issues discussed in this mailing list thread: https://mail.openjdk.org/pipermail/classfile-api-dev/2023-June/000381.html
>
> src/java.base/share/classes/jdk/internal/classfile/constantpool/InvokeDynamicEntry.java line 46:
>
>> 44: default MethodTypeDesc typeSymbol() {
>> 45: return Util.methodTypeSymbol(nameAndType());
>> 46: }
>
> Similar comment as with CondyEntry -- reduce usage of Util::methodTypeSymbol in this class
(Would like to do the same in various ::count methods, but unfortunately MemberRefEntry is too general; would have to rejigger the various XxxRefEntry types.)
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14706#discussion_r1246619062
More information about the core-libs-dev
mailing list