esnext.set.is-superset-of.js 764 B

12345678910111213141516171819
  1. 'use strict';
  2. var IS_PURE = require('../internals/is-pure');
  3. var $ = require('../internals/export');
  4. var call = require('../internals/function-call');
  5. var aCallable = require('../internals/a-callable');
  6. var anObject = require('../internals/an-object');
  7. var iterate = require('../internals/iterate');
  8. // `Set.prototype.isSupersetOf` method
  9. // https://tc39.github.io/proposal-set-methods/#Set.prototype.isSupersetOf
  10. $({ target: 'Set', proto: true, real: true, forced: IS_PURE }, {
  11. isSupersetOf: function isSupersetOf(iterable) {
  12. var set = anObject(this);
  13. var hasCheck = aCallable(set.has);
  14. return !iterate(iterable, function (value, stop) {
  15. if (call(hasCheck, set, value) === false) return stop();
  16. }, { INTERRUPTED: true }).stopped;
  17. }
  18. });