< prev index next >

src/java.base/share/classes/java/lang/constant/MethodTypeDescImpl.java

Print this page
rev 52749 : Bootstrap method consolidation
* clean up and simplify JDK support code for BSM invocation
* simplify JVM bootstrap handshake: use BootstrapCallInfo only
* remove unused JVM paths and data fields
* move bootstrap argument processing from MethodHandleNatives to ConstantPool
* remove ConstantGroup; merge argument access into BootstrapCallInfo
* adjust BSM argument access: remove copyArguments, add argumentRef API
* add metadata-free BSM modes, including symbolic arguments from CP

*** 28,39 **** import java.lang.invoke.MethodType; import java.util.Arrays; import java.util.List; import java.util.Optional; - import static java.lang.constant.ConstantDescs.BSM_INVOKE; - import static java.lang.constant.ConstantDescs.MHR_METHODTYPEDESC_FACTORY; import static java.util.Objects.requireNonNull; /** * A <a href="package-summary.html#nominal">nominal descriptor</a> for a * {@link MethodType}. A {@linkplain MethodTypeDescImpl} corresponds to a --- 28,37 ----
*** 140,150 **** return MethodType.fromMethodDescriptorString(descriptorString(), lookup.lookupClass().getClassLoader()); } @Override public Optional<? extends ConstantDesc<ConstantDesc<MethodType>>> describeConstable() { ! return Optional.of(DynamicConstantDesc.of(BSM_INVOKE, MHR_METHODTYPEDESC_FACTORY, descriptorString())); } @Override public boolean equals(Object o) { if (this == o) return true; --- 138,148 ---- return MethodType.fromMethodDescriptorString(descriptorString(), lookup.lookupClass().getClassLoader()); } @Override public Optional<? extends ConstantDesc<ConstantDesc<MethodType>>> describeConstable() { ! return Optional.of(DynamicConstantDesc.ofSymbolic(this)); } @Override public boolean equals(Object o) { if (this == o) return true;
< prev index next >