diff options
Diffstat (limited to 'node_modules/core-js/modules/esnext.set.intersection.js')
| -rw-r--r-- | node_modules/core-js/modules/esnext.set.intersection.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/node_modules/core-js/modules/esnext.set.intersection.js b/node_modules/core-js/modules/esnext.set.intersection.js new file mode 100644 index 0000000..2d59f0d --- /dev/null +++ b/node_modules/core-js/modules/esnext.set.intersection.js @@ -0,0 +1,23 @@ +'use strict'; +var $ = require('../internals/export'); +var IS_PURE = require('../internals/is-pure'); +var getBuiltIn = require('../internals/get-built-in'); +var anObject = require('../internals/an-object'); +var aFunction = require('../internals/a-function'); +var speciesConstructor = require('../internals/species-constructor'); +var iterate = require('../internals/iterate'); + +// `Set.prototype.intersection` method +// https://github.com/tc39/proposal-set-methods +$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { + intersection: function intersection(iterable) { + var set = anObject(this); + var newSet = new (speciesConstructor(set, getBuiltIn('Set')))(); + var hasCheck = aFunction(set.has); + var adder = aFunction(newSet.add); + iterate(iterable, function (value) { + if (hasCheck.call(set, value)) adder.call(newSet, value); + }); + return newSet; + } +}); |
