Name Description Size
adds-object-element.js --- esid: proposal-upsert description: > Adds a value with an Object key if key is not already in the map. info: | WeakMap.prototype.getOrInsert ( key, value ) ... 5. Let p be the Record {[[Key]]: key, [[Value]]: value}. 6. Append p to M.[[WeakMapData]]. ... features: [WeakMap] --- 919
adds-symbol-element.js --- esid: proposal-upsert description: > Adds a value with a Symbol key if key is not already in the map. info: | WeakMap.prototype.getOrInsert ( key, value ) ... 5. Let p be the Record {[[Key]]: key, [[Value]]: value}. 6. Append p to M.[[WeakMapData]]. ... features: [Symbol, WeakMap, symbols-as-weakmap-keys] --- 1262
does-not-have-weakmapdata-internal-slot-array.js --- esid: proposal-upsert description: > Throws TypeError if `this` doesn't have a [[WeakMapData]] internal slot. info: | WeakMap.prototype.getOrInsert ( key, value ) ... 1. Let M be the this value. 2. Perform ? RequireInternalSlot(M, [[WeakMapData]]). ... --- 796
does-not-have-weakmapdata-internal-slot-map.js --- esid: proposal-upsert description: > Throws TypeError if `this` doesn't have a [[WeakMapData]] internal slot. info: | WeakMap.prototype.getOrInsert ( key, value ) ... 1. Let M be the this value. 2. Perform ? RequireInternalSlot(M, [[WeakMapData]]). ... features: [Map] --- 825
does-not-have-weakmapdata-internal-slot-object.js --- esid: proposal-upsert description: > Throws TypeError if `this` doesn't have a [[WeakMapData]] internal slot. info: | WeakMap.prototype.getOrInsert ( key, value ) ... 1. Let M be the this value. 2. Perform ? RequireInternalSlot(M, [[WeakMapData]]). ... --- 795
does-not-have-weakmapdata-internal-slot-set.js --- esid: proposal-upsert description: > Throws TypeError if `this` doesn't have a [[WeakMapData]] internal slot. info: | WeakMap.prototype.getOrInsert ( key, value ) ... 1. Let M be the this value. 2. Perform ? RequireInternalSlot(M, [[WeakMapData]]). ... features: [Set] --- 825
does-not-have-weakmapdata-internal-slot-weakmap-prototype.js --- esid: proposal-upsert description: > Throws TypeError if `this` doesn't have a [[WeakMapData]] internal slot. info: | WeakMap.prototype.getOrInsert ( key, value ) ... 1. Let M be the this value. 2. Perform ? RequireInternalSlot(M, [[WeakMapData]]). ... --- 825
getOrInsert.js --- esid: proposal-upsert description: WeakMap.prototype.getOrInsert property descriptor info: | WeakMap.prototype.getOrInsert ( key, value ) 17 ECMAScript Standard Built-in Objects includes: [propertyHelper.js] --- 838
length.js --- esid: proposal-upsert description: WeakMap.prototype.getOrInsert.length descriptor info: | WeakMap.prototype.getOrInsert ( key, value ) 17 ECMAScript Standard Built-in Objects includes: [propertyHelper.js] --- 693
name.js --- esid: proposal-upsert description: WeakMap.prototype.getOrInsert.name descriptor info: | WeakMap.prototype.getOrInsert ( key, value ) 17 ECMAScript Standard Built-in Objects includes: [propertyHelper.js] --- 697
not-a-constructor.js --- esid: proposal-upsert description: > WeakMap.prototype.getOrInsert does not implement [[Construct]], is not new-able info: | ECMAScript Function Objects Built-in function objects that are not identified as constructors do not implement the [[Construct]] internal method unless otherwise specified in the description of a particular function. sec-evaluatenew ... 7. If IsConstructor(constructor) is false, throw a TypeError exception. ... includes: [isConstructor.js] features: [Reflect.construct, WeakMap, arrow-function] --- 1085
returns-value-if-key-is-not-present-object-key.js --- esid: proposal-upsert description: > Returns the value given as parameter when key is not present. info: | WeakMap.prototype.getOrInsert ( key, value ) ... 4. For each Record { [[Key]], [[Value]] } p of M.[[WeakMapData]], do a. If p.[[Key]] is not empty and SameValue(p.[[Key]], key) is true, return p.[[Value]]. 5. Let p be the Record { [[Key]]: key, [[Value]]: value }. 6. Append p to M.[[WeakMapData]]. 7. Return value. features: [WeakMap] --- 961
returns-value-if-key-is-not-present-symbol-key.js --- esid: proposal-upsert description: > Returns the value given as parameter when key is not present. info: | WeakMap.prototype.getOrInsert ( key, value ) ... 4. For each Record { [[Key]], [[Value]] } p of M.[[WeakMapData]], do a. If p.[[Key]] is not empty and SameValue(p.[[Key]], key) is true, return p.[[Value]]. 5. Let p be the Record { [[Key]]: key, [[Value]]: value }. 6. Append p to M.[[WeakMapData]]. 7. Return value. features: [Symbol, WeakMap, symbols-as-weakmap-keys] --- 1451
returns-value-if-key-is-present-object-key.js --- esid: proposal-upsert description: > Returns the value from the specified Object key info: | WeakMap.prototype.getOrInsert ( key, value) ... 4. For each Record { [[Key]], [[Value]] } p of M.[[WeakMapData]], do a. If p.[[Key]] is not empty and SameValue(p.[[Key]], key) is true, return p.[[Value]]. ... features: [WeakMap] --- 884
returns-value-if-key-is-present-symbol-key.js --- esid: proposal-upsert description: > Returns the value from the specified Symbol key info: | WeakMap.prototype.getOrInsert ( key, value) ... 4. For each Record { [[Key]], [[Value]] } p of M.[[WeakMapData]], do a. If p.[[Key]] is not empty and SameValue(p.[[Key]], key) is true, return p.[[Value]]. ... features: [Symbol, WeakMap, symbols-as-weakmap-keys] --- 1395
this-not-object-throw.js --- esid: proposal-upsert description: > Throws a TypeError if `this` is not an Object. info: | WeakMap.prototype.getOrInsert ( key , value ) 1. Let M be the this value 2. Perform ? RequireInternalSlot(M, [[WeakMapData]]) ... features: [Symbol] --- 1245
throw-if-key-cannot-be-held-weakly.js --- esid: proposal-upsert description: > Throws TypeError if key cannot be held weakly. info: | WeakMap.prototype.getOrInsert ( key, value ) ... 3. If CanBeHeldWeakly(key) is false, throw a TypeError exception. ... features: [Symbol, WeakMap] --- 1139