massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / core-js / modules / esnext.set.join.js
index d7bba501cbe9d4de53f915dc07463c2a5adc2e8e..c996a1dbe009cdd9e28054418ae7c05083c4edd8 100644 (file)
@@ -1,19 +1,24 @@
 'use strict';
-var $ = require('../internals/export');
 var IS_PURE = require('../internals/is-pure');
+var $ = require('../internals/export');
+var uncurryThis = require('../internals/function-uncurry-this');
 var anObject = require('../internals/an-object');
+var toString = require('../internals/to-string');
 var getSetIterator = require('../internals/get-set-iterator');
 var iterate = require('../internals/iterate');
 
+var arrayJoin = uncurryThis([].join);
+var push = [].push;
+
 // `Set.prototype.join` method
 // https://github.com/tc39/proposal-collection-methods
 $({ target: 'Set', proto: true, real: true, forced: IS_PURE }, {
   join: function join(separator) {
     var set = anObject(this);
     var iterator = getSetIterator(set);
-    var sep = separator === undefined ? ',' : String(separator);
+    var sep = separator === undefined ? ',' : toString(separator);
     var result = [];
-    iterate(iterator, result.push, { that: result, IS_ITERATOR: true });
-    return result.join(sep);
+    iterate(iterator, push, { that: result, IS_ITERATOR: true });
+    return arrayJoin(result, sep);
   }
 });