Top Constructors Methods
java.lang.invoke

pack-priv final Class LambdaProxyClassArchive

extends Object
Class Inheritance
Imports
jdk.internal.loader.BuiltinClassLoader, jdk.internal.misc.CDS

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
private static native void
addToArchive(Class<?> caller, String interfaceMethodName, MethodType factoryType, MethodType interfaceMethodType, MemberName implementationMember, MethodType dynamicMethodType, Class<?> lambdaProxyClass)

pack-priv static Class<?>
find(Class<?> caller, String interfaceMethodName, MethodType factoryType, MethodType interfaceMethodType, MethodHandle implementation, MethodType dynamicMethodType, boolean isSerializable, Class<?>[] altInterfaces, MethodType[] altMethods)

Lookup a lambda proxy class from the CDS archive using the first six arguments as the key.

private static native Class<?>
findFromArchive(Class<?> caller, String interfaceMethodName, MethodType factoryType, MethodType interfaceMethodType, MemberName implementationMember, MethodType dynamicMethodType)

pack-priv static boolean
loadedByBuiltinLoader(Class<?> cls)

Check if the class is loaded by a built-in class loader.

pack-priv static boolean
register(Class<?> caller, String interfaceMethodName, MethodType factoryType, MethodType interfaceMethodType, MethodHandle implementation, MethodType dynamicMethodType, boolean isSerializable, Class<?>[] altInterfaces, MethodType[] altMethods, Class<?> lambdaProxyClass)

Registers the lambdaProxyClass into CDS archive.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

LambdaProxyClassArchiveback to summary
pack-priv LambdaProxyClassArchive()

Method Detail

addToArchiveback to summary
private static native void addToArchive(Class<?> caller, String interfaceMethodName, MethodType factoryType, MethodType interfaceMethodType, MemberName implementationMember, MethodType dynamicMethodType, Class<?> lambdaProxyClass)
findback to summary
pack-priv static Class<?> find(Class<?> caller, String interfaceMethodName, MethodType factoryType, MethodType interfaceMethodType, MethodHandle implementation, MethodType dynamicMethodType, boolean isSerializable, Class<?>[] altInterfaces, MethodType[] altMethods)

Lookup a lambda proxy class from the CDS archive using the first six arguments as the key. CDS only archives lambda proxy class if it's not serializable and no marker interfaces and no additional bridges, and if it is loaded by a built-in class loader.

findFromArchiveback to summary
private static native Class<?> findFromArchive(Class<?> caller, String interfaceMethodName, MethodType factoryType, MethodType interfaceMethodType, MemberName implementationMember, MethodType dynamicMethodType)
loadedByBuiltinLoaderback to summary
pack-priv static boolean loadedByBuiltinLoader(Class<?> cls)

Check if the class is loaded by a built-in class loader.

registerback to summary
pack-priv static boolean register(Class<?> caller, String interfaceMethodName, MethodType factoryType, MethodType interfaceMethodType, MethodHandle implementation, MethodType dynamicMethodType, boolean isSerializable, Class<?>[] altInterfaces, MethodType[] altMethods, Class<?> lambdaProxyClass)

Registers the lambdaProxyClass into CDS archive. The VM will store the lambdaProxyClass into a hash table using the first six arguments as the key. CDS only archives lambda proxy class if it's not serializable and no marker interfaces and no additional bridges, and if it is loaded by a built-in class loader.