1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
| 'use strict';
| var getBuiltIn = require('../internals/get-built-in');
|
| var createSetLike = function (size) {
| return {
| size: size,
| has: function () {
| return false;
| },
| keys: function () {
| return {
| next: function () {
| return { done: true };
| }
| };
| }
| };
| };
|
| module.exports = function (name) {
| var Set = getBuiltIn('Set');
| try {
| new Set()[name](createSetLike(0));
| try {
| // late spec change, early WebKit ~ Safari 17.0 beta implementation does not pass it
| // https://github.com/tc39/proposal-set-methods/pull/88
| new Set()[name](createSetLike(-1));
| return false;
| } catch (error2) {
| return true;
| }
| } catch (error) {
| return false;
| }
| };
|
|