Class JSFinalizationRegistry
java.lang.Object
com.oracle.truffle.js.runtime.builtins.JSClass
com.oracle.truffle.js.runtime.builtins.JSNonProxy
com.oracle.truffle.js.runtime.builtins.JSFinalizationRegistry
- All Implemented Interfaces:
JSConstructorFactory, JSConstructorFactory.Default, PrototypeSupplier
public final class JSFinalizationRegistry
extends JSNonProxy
implements JSConstructorFactory.Default, PrototypeSupplier
-
Nested Class Summary
Nested classes/interfaces inherited from interface JSConstructorFactory
JSConstructorFactory.Default, JSConstructorFactory.WithFunctions, JSConstructorFactory.WithFunctionsAndSpeciesNested classes/interfaces inherited from interface JSConstructorFactory.Default
JSConstructorFactory.Default.WithSpecies -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final com.oracle.truffle.api.strings.TruffleStringstatic final JSFinalizationRegistrystatic final com.oracle.truffle.api.strings.TruffleStringFields inherited from class JSNonProxy
GET_SYMBOL_SPECIES_NAME -
Method Summary
Modifier and TypeMethodDescriptionstatic voidappendToCells(JSFinalizationRegistryObject finalizationRegistry, Object target, Object holdings, Object unregisterToken) static voidcleanupFinalizationRegistry(JSFinalizationRegistryObject finalizationRegistry, Object callbackArg) static JSFinalizationRegistryObjectcreate(JSContext context, JSRealm realm, JSDynamicObject proto, JobCallback cleanupCallback) static JSConstructorcreateConstructor(JSRealm realm) createPrototype(JSRealm realm, JSFunctionObject ctor) com.oracle.truffle.api.strings.TruffleStringgetIntrinsicDefaultProto(JSRealm realm) Allows invokevirtual of this method instead of invokeinterface.static voidhostCleanupFinalizationRegistry(JSFinalizationRegistryObject finalizationRegistry) 4.1.3 Execution and 4.1.4.1 HostCleanupFinalizationRegistry.static booleancom.oracle.truffle.api.object.ShapemakeInitialShape(JSContext context, JSDynamicObject prototype) static FinalizationRecordremoveCellEmptyTarget(JSFinalizationRegistryObject finalizationRegistry) static booleanremoveFromCells(JSFinalizationRegistryObject finalizationRegistry, Object unregisterToken) Methods inherited from class JSNonProxy
checkProtoCycle, createSymbolSpeciesGetterFunction, defineOwnProperty, delete, delete, deletePropertyDefault, getHelper, getHelper, getMethodHelper, getOwnHelper, getOwnHelper, getOwnProperty, getOwnPropertyKeys, getPrototypeOf, hasOnlyShapeProperties, hasOwnProperty, hasOwnProperty, hasProperty, hasProperty, invokeAccessorPropertySetter, isExtensible, ordinaryGetOwnProperty, ordinaryGetOwnPropertyIntl, ordinaryIsExtensible, ordinaryOwnPropertyKeys, ordinaryOwnPropertyKeys, ordinaryOwnPropertyKeysSlow, ordinaryPreventExtensions, ordinarySet, ordinarySetIndex, ordinarySetWithReceiver, performOrdinarySetWithOwnDescriptor, preventExtensions, putConstructorSpeciesGetter, set, set, setIntegrityLevelFast, setPropertySlow, setPrototypeOf, testIntegrityLevelFast, usesOrdinaryGetOwnProperty, usesOrdinaryIsExtensibleMethods inherited from class JSClass
filterOwnPropertyKeys, get, get, isInstance, isInstance, isInstance, isInstance, ownPropertyKeys, toStringMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface JSConstructorFactory
createConstructorObject, fillConstructorMethods inherited from interface JSConstructorFactory.Default
createConstructorAndPrototype
-
Field Details
-
INSTANCE
-
CLASS_NAME
public static final com.oracle.truffle.api.strings.TruffleString CLASS_NAME -
PROTOTYPE_NAME
public static final com.oracle.truffle.api.strings.TruffleString PROTOTYPE_NAME
-
-
Method Details
-
create
public static JSFinalizationRegistryObject create(JSContext context, JSRealm realm, JSDynamicObject proto, JobCallback cleanupCallback) -
createPrototype
- Specified by:
createPrototypein interfaceJSConstructorFactory
-
makeInitialShape
public com.oracle.truffle.api.object.Shape makeInitialShape(JSContext context, JSDynamicObject prototype) - Overrides:
makeInitialShapein classJSClass
-
createConstructor
-
getClassName
public com.oracle.truffle.api.strings.TruffleString getClassName()- Specified by:
getClassNamein interfaceJSConstructorFactory
-
isJSFinalizationRegistry
-
getIntrinsicDefaultProto
Description copied from class:JSClassAllows invokevirtual of this method instead of invokeinterface. Classes overriding this method should implementPrototypeSupplier.- Specified by:
getIntrinsicDefaultProtoin interfacePrototypeSupplier- Overrides:
getIntrinsicDefaultProtoin classJSClass- See Also:
-
appendToCells
public static void appendToCells(JSFinalizationRegistryObject finalizationRegistry, Object target, Object holdings, Object unregisterToken) -
removeFromCells
public static boolean removeFromCells(JSFinalizationRegistryObject finalizationRegistry, Object unregisterToken) -
cleanupFinalizationRegistry
public static void cleanupFinalizationRegistry(JSFinalizationRegistryObject finalizationRegistry, Object callbackArg) -
removeCellEmptyTarget
public static FinalizationRecord removeCellEmptyTarget(JSFinalizationRegistryObject finalizationRegistry) -
hostCleanupFinalizationRegistry
public static void hostCleanupFinalizationRegistry(JSFinalizationRegistryObject finalizationRegistry) 4.1.3 Execution and 4.1.4.1 HostCleanupFinalizationRegistry.
-