Files
react-native-devtools-frontend/node_modules/@sinonjs/samsam/lib/create-set.js
T
Tim van der Lippe 61fe685814 Update various test packages
- Update Sinon (breaking change does not affect us)
- Update Mocha
- Update Karma

R=jacktfranklin@chromium.org

Bug: none
Change-Id: Ieb50ba55ce7a9e01e32ee553a6741e6323fcaaab
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3158223
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2021-09-13 12:55:26 +00:00

35 lines
939 B
JavaScript

"use strict";
var typeOf = require("@sinonjs/commons").typeOf;
var forEach = require("@sinonjs/commons").prototypes.array.forEach;
/**
* This helper makes it convenient to create Set instances from a
* collection, an overcomes the shortcoming that IE11 doesn't support
* collection arguments
*
* @private
* @param {Array} array An array to create a set from
* @returns {Set} A set (unique) containing the members from array
*
* @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set
*/
function createSet(array) {
if (arguments.length > 0 && !Array.isArray(array)) {
throw new TypeError(
"createSet can be called with either no arguments or an Array"
);
}
var items = typeOf(array) === "array" ? array : [];
var set = new Set();
forEach(items, function (item) {
set.add(item);
});
return set;
}
module.exports = createSet;