8
0

cloneSet.js 405 B

1234567891011121314151617
  1. import addSetEntry from './addSetEntry';
  2. import arrayReduce from './arrayReduce';
  3. import setToArray from './setToArray';
  4. /**
  5. * Creates a clone of `set`.
  6. *
  7. * @private
  8. * @param {Object} set The set to clone.
  9. * @returns {Object} Returns the cloned set.
  10. */
  11. function cloneSet(set) {
  12. var Ctor = set.constructor;
  13. return arrayReduce(setToArray(set), addSetEntry, new Ctor);
  14. }
  15. export default cloneSet;