Name Description Size
bigint-number-same-value.js --- esid: sec-set.prototype.add description: > Observing the expected behavior of keys when a BigInt and Number have the same value. info: | Set.prototype.add ( value ) ... For each element e of entries, do If e is not empty and SameValueZero(e, value) is true, then Return S. If value is -0, set value to +0. Append value as the last element of entries. ... features: [BigInt] --- 1047
browser.js 0
constructor.js --- esid: sec-set-constructor description: > The Set constructor is the %Set% intrinsic object and the initial value of the Set property of the global object. --- 410
is-a-constructor.js --- esid: sec-ecmascript-standard-built-in-objects description: > The Set 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, Set] --- 831
length.js --- esid: sec-set-constructor description: > Properties of the Set Constructor Besides the length property (whose value is 0) includes: [propertyHelper.js] --- 444
name.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) 17 ECMAScript Standard Built-in Objects includes: [propertyHelper.js] --- 426
properties-of-the-set-prototype-object.js --- esid: sec-properties-of-the-set-prototype-object description: > The Set prototype object is the intrinsic object %SetPrototype%. The value of the [[Prototype]] internal slot of the Set prototype object is the intrinsic object %ObjectPrototype% (19.1.3). The Set prototype object is an ordinary object. It does not have a [[SetData]] internal slot. --- 692
proto-from-ctor-realm.js --- esid: sec-set-iterable description: Default [[Prototype]] value derived from realm of the newTarget info: | [...] 2. Let set be ? OrdinaryCreateFromConstructor(NewTarget, "%SetPrototype%", « [[SetData]] »). [...] 9.1.14 GetPrototypeFromConstructor [...] 3. Let proto be ? Get(constructor, "prototype"). 4. If Type(proto) is not Object, then a. Let realm be ? GetFunctionRealm(constructor). b. Let proto be realm's intrinsic object named intrinsicDefaultProto. [...] features: [cross-realm, Reflect] --- 924
prototype
prototype-of-set.js --- esid: sec-properties-of-the-set-constructor description: > The value of the [[Prototype]] internal slot of the Set constructor is the intrinsic object %FunctionPrototype% (19.2.3). --- 497
set-does-not-throw-when-add-is-not-callable.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) When the Set function is called with optional argument iterable the following steps are taken: ... 7. Else, a. Let adder be Get(set, "add"). b. ReturnIfAbrupt(adder). c. If IsCallable(adder) is false, throw a TypeError exception. d. Let iter be GetIterator(iterable). e. ReturnIfAbrupt(iter). ... 9. Repeat a. Let next be IteratorStep(iter). b. ReturnIfAbrupt(next). c. If next is false, return set. d. Let nextValue be IteratorValue(next). e. ReturnIfAbrupt(nextValue). f. Let status be Call(adder, set, «nextValue.[[value]]»). g. If status is an abrupt completion, return IteratorClose(iter, status). --- 1047
set-get-add-method-failure.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) When the Set function is called with optional argument iterable the following steps are taken: ... 6. If iterable is either undefined or null, let iter be undefined. 7. Else, a. Let adder be Get(set, "add"). b. ReturnIfAbrupt(adder). --- 692
set-iterable-calls-add.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) When the Set function is called with optional argument iterable the following steps are taken: ... 7. Else, a. Let adder be Get(set, "add"). b. ReturnIfAbrupt(adder). c. If IsCallable(adder) is false, throw a TypeError exception. d. Let iter be GetIterator(iterable). e. ReturnIfAbrupt(iter). ... 9. Repeat a. Let next be IteratorStep(iter). b. ReturnIfAbrupt(next). c. If next is false, return set. d. Let nextValue be IteratorValue(next). e. ReturnIfAbrupt(nextValue). f. Let status be Call(adder, set, «nextValue.[[value]]»). g. If status is an abrupt completion, return IteratorClose(iter, status). --- 1165
set-iterable-empty-does-not-call-add.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) When the Set function is called with optional argument iterable the following steps are taken: ... 7. Else, a. Let adder be Get(set, "add"). b. ReturnIfAbrupt(adder). c. If IsCallable(adder) is false, throw a TypeError exception. d. Let iter be GetIterator(iterable). e. ReturnIfAbrupt(iter). ... 9. Repeat a. Let next be IteratorStep(iter). b. ReturnIfAbrupt(next). c. If next is false, return set. d. Let nextValue be IteratorValue(next). e. ReturnIfAbrupt(nextValue). f. Let status be Call(adder, set, «nextValue.[[value]]»). g. If status is an abrupt completion, return IteratorClose(iter, status). --- 1163
set-iterable-throws-when-add-is-not-callable.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) When the Set function is called with optional argument iterable the following steps are taken: ... 7. Else, a. Let adder be Get(set, "add"). b. ReturnIfAbrupt(adder). c. If IsCallable(adder) is false, throw a TypeError exception. d. Let iter be GetIterator(iterable). e. ReturnIfAbrupt(iter). ... 9. Repeat a. Let next be IteratorStep(iter). b. ReturnIfAbrupt(next). c. If next is false, return set. d. Let nextValue be IteratorValue(next). e. ReturnIfAbrupt(nextValue). f. Let status be Call(adder, set, «nextValue.[[value]]»). g. If status is an abrupt completion, return IteratorClose(iter, status). --- 1028
set-iterable.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) When the Set function is called with optional argument iterable the following steps are taken: ... 7. Else, a. Let adder be Get(set, "add"). b. ReturnIfAbrupt(adder). c. If IsCallable(adder) is false, throw a TypeError exception. d. Let iter be GetIterator(iterable). e. ReturnIfAbrupt(iter). ... 9. Repeat a. Let next be IteratorStep(iter). b. ReturnIfAbrupt(next). c. If next is false, return set. d. Let nextValue be IteratorValue(next). e. ReturnIfAbrupt(nextValue). f. Let status be Call(adder, set, «nextValue.[[value]]»). g. If status is an abrupt completion, return IteratorClose(iter, status). --- 1026
set-iterator-close-after-add-failure.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) When the Set function is called with optional argument iterable the following steps are taken: ... 9. Repeat a. Let next be IteratorStep(iter). b. ReturnIfAbrupt(next). c. If next is false, return set. d. Let nextValue be IteratorValue(next). e. ReturnIfAbrupt(nextValue). f. Let status be Call(adder, set, «nextValue.[[value]]»). g. If status is an abrupt completion, return IteratorClose(iter, status). features: [Symbol.iterator] --- 1186
set-iterator-next-failure.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) When the Set function is called with optional argument iterable the following steps are taken: ... 9. Repeat a. Let next be IteratorStep(iter). b. ReturnIfAbrupt(next). features: [Symbol.iterator] --- 683
set-iterator-value-failure.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) When the Set function is called with optional argument iterable the following steps are taken: ... 9. Repeat ... d. Let nextValue be IteratorValue(next). e. ReturnIfAbrupt(nextValue). features: [Symbol.iterator] --- 799
set-newtarget.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) When the Set function is called with optional argument iterable the following steps are taken: ... 2. Let set be OrdinaryCreateFromConstructor(NewTarget, "%SetPrototype%", «‍[[SetData]]» ). ... --- 751
set-no-iterable.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) When the Set function is called with optional argument iterable the following steps are taken: ... 5. If iterable is not present, let iterable be undefined. 6. If iterable is either undefined or null, let iter be undefined. ... 8. If iter is undefined, return set. --- 789
set-undefined-newtarget.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) When the Set function is called with optional argument iterable the following steps are taken: 1. If NewTarget is undefined, throw a TypeError exception. ... --- 517
set.js --- esid: sec-set-constructor description: > Set ( [ iterable ] ) 17 ECMAScript Standard Built-in Objects includes: [propertyHelper.js] --- 409
shell.js --- description: | Test if a given function is a constructor function. defines: [isConstructor] features: [Reflect.construct] --- 596
Symbol.species
valid-values.js --- esid: sec-set.prototype.add description: Observing the expected behavior of valid values info: | Set.prototype.add ( value ) ... For each element e of entries, do If e is not empty and SameValueZero(e, value) is true, then Return S. If value is -0, set value to +0. Append value as the last element of entries. ... features: [BigInt, Symbol, TypedArray, WeakRef, exponentiation] --- 10257