Name Description Size
browser.js 0
constructor.js --- esid: sec-finalization-registry-constructor description: > The FinalizationRegistry constructor is the %FinalizationRegistry% intrinsic object and the initial value of the FinalizationRegistry property of the global object. features: [FinalizationRegistry] --- 653
gc-has-one-chance-to-call-cleanupCallback-for-object.js --- esid: sec-finalization-registry-target description: > cleanupCallback has only one optional chance to be called for a GC that cleans up a registered Object target. info: | FinalizationRegistry.prototype.cleanupSome ( [ _callback_ ] ) 3. If _callback_ is present and IsCallable(_callback_) is *false*, throw a TypeError* exception. 4. Perform ? CleanupFinalizationRegistry(_finalizationRegistry_, _callback_). 5. Return *undefined*. Execution At any time, if a set of objects and/or symbols _S_ is not live, an ECMAScript implementation may perform the following steps atomically: 1. For each element _value_ of _S_, do ... b. For each FinalizationRegistry _fg_ such that _fg_.[[Cells]] contains a Record _cell_ such that _cell_.[[WeakRefTarget]] is _value_, i. Set _cell_.[[WeakRefTarget]] to ~empty~. ii. Optionally, perform HostEnqueueFinalizationRegistryCleanupJob(_fg_). features: [FinalizationRegistry.prototype.cleanupSome, FinalizationRegistry, async-functions, host-gc-required] flags: [async, non-deterministic] includes: [async-gc.js, compareArray.js] --- 3495
instance-extensible.js --- esid: sec-finalization-registry-target description: Instances of FinalizationRegistry are extensible info: | FinalizationRegistry ( cleanupCallback ) ... 3. Let finalizationRegistry be ? OrdinaryCreateFromConstructor(NewTarget, "%FinalizationRegistryPrototype%", « [[Realm]], [[CleanupCallback]], [[Cells]], [[IsFinalizationRegistryCleanupJobActive]] »). ... 9. Return finalizationRegistry. OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] ) ... 2. Let proto be ? GetPrototypeFromConstructor(constructor, intrinsicDefaultProto). 3. Return ObjectCreate(proto, internalSlotsList). ObjectCreate ( proto [ , internalSlotsList ] ) 4. Set obj.[[Prototype]] to proto. 5. Set obj.[[Extensible]] to true. 6. Return obj. features: [FinalizationRegistry] --- 1239
is-a-constructor.js --- esid: sec-ecmascript-standard-built-in-objects description: > The FinalizationRegistry constructor implements [[Construct]] info: | IsConstructor ( argument ) The abstract operation IsConstructor takes argument argument (an ECMAScript language value). It determines if argument is a function object with a [[Construct]] internal method. It performs the following steps when called: If Type(argument) is not Object, return false. If argument has a [[Construct]] internal method, return true. Return false. includes: [isConstructor.js] features: [Reflect.construct, FinalizationRegistry, arrow-function] --- 1062
length.js --- esid: sec-finalization-registry-target description: FinalizationRegistry.length property descriptor info: | FinalizationRegistry ( cleanupCallback ) 17 ECMAScript Standard Built-in Objects Every built-in function object, including constructors, has a length property whose value is an integer. Unless otherwise specified, this value is equal to the largest number of named arguments shown in the subclause headings for the function description. Optional parameters (which are indicated with brackets: [ ]) or rest parameters (which are shown using the form «...name») are not included in the default argument count. Unless otherwise specified, the length property of a built-in function object has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }. includes: [propertyHelper.js] features: [FinalizationRegistry] --- 1287
name.js --- esid: sec-finalization-registry-target description: FinalizationRegistry.name property descriptor info: | FinalizationRegistry ( value ) 17 ECMAScript Standard Built-in Objects Every built-in function object, including constructors, that is not identified as an anonymous function has a name property whose value is a String. Unless otherwise specified, this value is the name that is given to the function in this specification. For functions that are specified as properties of objects, the name value is the property name string used to access the function. [...] Unless otherwise specified, the name property of a built-in function object, if it exists, has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }. includes: [propertyHelper.js] features: [FinalizationRegistry] --- 1266
newtarget-prototype-is-not-object.js --- esid: sec-finalization-registry-target description: > [[Prototype]] defaults to %FinalizationRegistryPrototype% if NewTarget.prototype is not an object. info: | FinalizationRegistry ( cleanupCallback ) ... 3. Let finalizationRegistry be ? OrdinaryCreateFromConstructor(NewTarget, "%FinalizationRegistryPrototype%", « [[Realm]], [[CleanupCallback]], [[Cells]], [[IsFinalizationRegistryCleanupJobActive]] »). ... 9. Return finalizationRegistry. OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] ) ... 2. Let proto be ? GetPrototypeFromConstructor(constructor, intrinsicDefaultProto). 3. Return ObjectCreate(proto, internalSlotsList). GetPrototypeFromConstructor ( constructor, intrinsicDefaultProto ) 3. Let proto be ? Get(constructor, 'prototype'). 4. If Type(proto) is not Object, then a. Let realm be ? GetFunctionRealm(constructor). b. Set proto to realm's intrinsic object named intrinsicDefaultProto. 5. Return proto. features: [FinalizationRegistry, Reflect.construct, Symbol] --- 2860
prop-desc.js --- esid: sec-finalization-registry-constructor description: > Property descriptor of FinalizationRegistry info: | 17 ECMAScript Standard Built-in Objects: Every other data property described in clauses 18 through 26 and in Annex B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: true } unless otherwise specified. includes: [propertyHelper.js] features: [FinalizationRegistry] --- 816
proto-from-ctor-realm.js --- esid: sec-finalization-registry-target description: Default [[Prototype]] value derived from realm of the newTarget info: | FinalizationRegistry ( cleanupCallback ) ... 3. Let finalizationRegistry be ? OrdinaryCreateFromConstructor(NewTarget, "%FinalizationRegistryPrototype%", « [[Realm]], [[CleanupCallback]], [[Cells]], [[IsFinalizationRegistryCleanupJobActive]] »). ... 9. Return finalizationRegistry. OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] ) ... 2. Let proto be ? GetPrototypeFromConstructor(constructor, intrinsicDefaultProto). 3. Return ObjectCreate(proto, internalSlotsList). GetPrototypeFromConstructor ( constructor, intrinsicDefaultProto ) 3. Let proto be ? Get(constructor, 'prototype'). 4. If Type(proto) is not Object, then a. Let realm be ? GetFunctionRealm(constructor). b. Set proto to realm's intrinsic object named intrinsicDefaultProto. 5. Return proto. features: [FinalizationRegistry, cross-realm, Reflect, Symbol] --- 2914
proto.js --- esid: sec-properties-of-the-finalization-registry-constructor description: > The prototype of FinalizationRegistry is Object.prototype info: | The value of the [[Prototype]] internal slot of the FinalizationRegistry object is the intrinsic object %FunctionPrototype%. features: [FinalizationRegistry] --- 771
prototype
prototype-from-newtarget-abrupt.js --- esid: sec-finalization-registry-target description: > Return abrupt from getting the NewTarget prototype info: | FinalizationRegistry ( cleanupCallback ) ... 3. Let finalizationRegistry be ? OrdinaryCreateFromConstructor(NewTarget, "%FinalizationRegistryPrototype%", « [[Realm]], [[CleanupCallback]], [[Cells]], [[IsFinalizationRegistryCleanupJobActive]] »). ... 9. Return finalizationRegistry. OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] ) ... 2. Let proto be ? GetPrototypeFromConstructor(constructor, intrinsicDefaultProto). 3. Return ObjectCreate(proto, internalSlotsList). GetPrototypeFromConstructor ( constructor, intrinsicDefaultProto ) 3. Let proto be ? Get(constructor, 'prototype'). features: [FinalizationRegistry, Reflect.construct] --- 1434
prototype-from-newtarget-custom.js --- esid: sec-finalization-registry-target description: > The [[Prototype]] internal slot is computed from NewTarget. info: | FinalizationRegistry ( cleanupCallback ) ... 3. Let finalizationRegistry be ? OrdinaryCreateFromConstructor(NewTarget, "%FinalizationRegistryPrototype%", « [[Realm]], [[CleanupCallback]], [[Cells]], [[IsFinalizationRegistryCleanupJobActive]] »). ... 9. Return finalizationRegistry. OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] ) ... 2. Let proto be ? GetPrototypeFromConstructor(constructor, intrinsicDefaultProto). 3. Return ObjectCreate(proto, internalSlotsList). GetPrototypeFromConstructor ( constructor, intrinsicDefaultProto ) 3. Let proto be ? Get(constructor, 'prototype'). 4. If Type(proto) is not Object, then a. Let realm be ? GetFunctionRealm(constructor). b. Set proto to realm's intrinsic object named intrinsicDefaultProto. 5. Return proto. features: [FinalizationRegistry, Reflect.construct] --- 1908
prototype-from-newtarget.js --- esid: sec-finalization-registry-target description: > The [[Prototype]] internal slot is computed from NewTarget. info: | FinalizationRegistry ( cleanupCallback ) ... 3. Let finalizationRegistry be ? OrdinaryCreateFromConstructor(NewTarget, "%FinalizationRegistryPrototype%", « [[Realm]], [[CleanupCallback]], [[Cells]], [[IsFinalizationRegistryCleanupJobActive]] »). ... 9. Return finalizationRegistry. OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] ) ... 2. Let proto be ? GetPrototypeFromConstructor(constructor, intrinsicDefaultProto). 3. Return ObjectCreate(proto, internalSlotsList). GetPrototypeFromConstructor ( constructor, intrinsicDefaultProto ) 3. Let proto be ? Get(constructor, 'prototype'). 4. If Type(proto) is not Object, then a. Let realm be ? GetFunctionRealm(constructor). b. Set proto to realm's intrinsic object named intrinsicDefaultProto. 5. Return proto. features: [FinalizationRegistry] --- 1448
returns-new-object-from-constructor.js --- esid: sec-finalization-registry-target description: > Returns a new ordinary object from the FinalizationRegistry constructor info: | FinalizationRegistry ( cleanupCallback ) ... 3. Let finalizationRegistry be ? OrdinaryCreateFromConstructor(NewTarget, "%FinalizationRegistryPrototype%", « [[Realm]], [[CleanupCallback]], [[Cells]], [[IsFinalizationRegistryCleanupJobActive]] »). ... 9. Return finalizationRegistry. OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] ) ... 2. Let proto be ? GetPrototypeFromConstructor(constructor, intrinsicDefaultProto). 3. Return ObjectCreate(proto, internalSlotsList). features: [FinalizationRegistry, for-of] --- 1774
shell.js --- description: > Collection of functions used to capture references cleanup from garbage collectors features: [FinalizationRegistry.prototype.cleanupSome, FinalizationRegistry, Symbol, async-functions] flags: [non-deterministic] defines: [asyncGC, asyncGCDeref, resolveAsyncGC] --- 2098
target-not-callable-throws.js --- esid: sec-finalization-registry-target description: > Throws a TypeError if target is not callable info: | FinalizationRegistry ( cleanupCallback ) 1. If NewTarget is undefined, throw a TypeError exception. 2. If IsCallable(cleanupCallback) is false, throw a TypeError exception. ... features: [FinalizationRegistry, WeakRef] --- 1947
undefined-newtarget-throws.js --- esid: sec-finalization-registry-target description: > Throws a TypeError if NewTarget is undefined. info: | FinalizationRegistry ( cleanupCallback ) 1. If NewTarget is undefined, throw a TypeError exception. 2. If IsCallable(cleanupCallback) is false, throw a TypeError exception. ... features: [FinalizationRegistry] --- 872
unnaffected-by-poisoned-cleanupCallback.js --- esid: sec-finalization-registry-target description: > Normal completion even if the cleanupCallback fn is poisoned info: | FinalizationRegistry ( cleanupCallback ) ... 3. Let finalizationRegistry be ? OrdinaryCreateFromConstructor(NewTarget, "%FinalizationRegistryPrototype%", « [[Realm]], [[CleanupCallback]], [[Cells]], [[IsFinalizationRegistryCleanupJobActive]] »). ... 9. Return finalizationRegistry. features: [FinalizationRegistry] --- 1564