diff options
Diffstat (limited to 'node_modules/core-js/modules/esnext.set.is-subset-of.js')
| -rw-r--r-- | node_modules/core-js/modules/esnext.set.is-subset-of.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/node_modules/core-js/modules/esnext.set.is-subset-of.js b/node_modules/core-js/modules/esnext.set.is-subset-of.js new file mode 100644 index 0000000..9ac513f --- /dev/null +++ b/node_modules/core-js/modules/esnext.set.is-subset-of.js @@ -0,0 +1,25 @@ +'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 getIterator = require('../internals/get-iterator'); +var iterate = require('../internals/iterate'); + +// `Set.prototype.isSubsetOf` method +// https://tc39.github.io/proposal-set-methods/#Set.prototype.isSubsetOf +$({ target: 'Set', proto: true, real: true, forced: IS_PURE }, { + isSubsetOf: function isSubsetOf(iterable) { + var iterator = getIterator(this); + var otherSet = anObject(iterable); + var hasCheck = otherSet.has; + if (typeof hasCheck != 'function') { + otherSet = new (getBuiltIn('Set'))(iterable); + hasCheck = aFunction(otherSet.has); + } + return !iterate(iterator, function (value, stop) { + if (hasCheck.call(otherSet, value) === false) return stop(); + }, { IS_ITERATOR: true, INTERRUPTED: true }).stopped; + } +}); |
