From d788a1bb808da73ef17aee0b773b7e3ea682426f Mon Sep 17 00:00:00 2001 From: Chen Liang Date: Tue, 21 Mar 2023 14:55:17 +0000 Subject: [PATCH] 8304180: Constant Descriptors for MethodHandles::classData and classDataAt Reviewed-by: jvernee, mchung --- .../java/lang/constant/ConstantDescs.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/java.base/share/classes/java/lang/constant/ConstantDescs.java b/src/java.base/share/classes/java/lang/constant/ConstantDescs.java index 3a000d1bd4a..08dbb031cdc 100644 --- a/src/java.base/share/classes/java/lang/constant/ConstantDescs.java +++ b/src/java.base/share/classes/java/lang/constant/ConstantDescs.java @@ -262,6 +262,22 @@ public final class ConstantDescs { /** {@link ClassDesc} representing the primitive type {@code void} */ public static final ClassDesc CD_void = ClassDesc.ofDescriptor("V"); + /** + * {@link MethodHandleDesc} representing {@link MethodHandles#classData(Lookup, String, Class)} MethodHandles.classData} + * @since 21 + */ + public static final DirectMethodHandleDesc BSM_CLASS_DATA + = ofConstantBootstrap(CD_MethodHandles, "classData", + CD_Object); + + /** + * {@link MethodHandleDesc} representing {@link MethodHandles#classDataAt(Lookup, String, Class, int)} MethodHandles.classDataAt} + * @since 21 + */ + public static final DirectMethodHandleDesc BSM_CLASS_DATA_AT + = ofConstantBootstrap(CD_MethodHandles, "classDataAt", + CD_Object, CD_int); + /** Nominal descriptor representing the constant {@code null} */ public static final ConstantDesc NULL = DynamicConstantDesc.ofNamed(ConstantDescs.BSM_NULL_CONSTANT,