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]
--- |
411 |
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 |