first
This commit is contained in:
20
node_modules/core-js/internals/to-set-like.js
generated
vendored
Normal file
20
node_modules/core-js/internals/to-set-like.js
generated
vendored
Normal file
@ -0,0 +1,20 @@
|
||||
'use strict';
|
||||
var getBuiltIn = require('../internals/get-built-in');
|
||||
var isCallable = require('../internals/is-callable');
|
||||
var isIterable = require('../internals/is-iterable');
|
||||
var isObject = require('../internals/is-object');
|
||||
|
||||
var Set = getBuiltIn('Set');
|
||||
|
||||
var isSetLike = function (it) {
|
||||
return isObject(it)
|
||||
&& typeof it.size == 'number'
|
||||
&& isCallable(it.has)
|
||||
&& isCallable(it.keys);
|
||||
};
|
||||
|
||||
// fallback old -> new set methods proposal arguments
|
||||
module.exports = function (it) {
|
||||
if (isSetLike(it)) return it;
|
||||
return isIterable(it) ? new Set(it) : it;
|
||||
};
|
Reference in New Issue
Block a user