Initial Save
This commit is contained in:
30
node_modules/es-array-method-boxes-properly/index.js
generated
vendored
Normal file
30
node_modules/es-array-method-boxes-properly/index.js
generated
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
module.exports = function properlyBoxed(method) {
|
||||
// Check node 0.6.21 bug where third parameter is not boxed
|
||||
var properlyBoxesNonStrict = true;
|
||||
var properlyBoxesStrict = true;
|
||||
var threwException = false;
|
||||
if (typeof method === 'function') {
|
||||
try {
|
||||
// eslint-disable-next-line max-params
|
||||
method.call('f', function (_, __, O) {
|
||||
if (typeof O !== 'object') {
|
||||
properlyBoxesNonStrict = false;
|
||||
}
|
||||
});
|
||||
|
||||
method.call(
|
||||
[null],
|
||||
function () {
|
||||
'use strict';
|
||||
|
||||
properlyBoxesStrict = typeof this === 'string'; // eslint-disable-line no-invalid-this
|
||||
},
|
||||
'x'
|
||||
);
|
||||
} catch (e) {
|
||||
threwException = true;
|
||||
}
|
||||
return !threwException && properlyBoxesNonStrict && properlyBoxesStrict;
|
||||
}
|
||||
return false;
|
||||
};
|
||||
Reference in New Issue
Block a user