initial commit
This commit is contained in:
23
node_modules/es5-ext/function/#/copy.js
generated
vendored
Normal file
23
node_modules/es5-ext/function/#/copy.js
generated
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
"use strict";
|
||||
|
||||
var mixin = require("../../object/mixin")
|
||||
, validFunction = require("../valid-function")
|
||||
, re = /^\s*function\s*([\0-')-\uffff]+)*\s*\(([\0-(*-\uffff]*)\)\s*\{/;
|
||||
|
||||
module.exports = function () {
|
||||
var match = String(validFunction(this)).match(re), fn;
|
||||
|
||||
// eslint-disable-next-line no-new-func
|
||||
fn = new Function(
|
||||
"fn",
|
||||
"return function " +
|
||||
match[1].trim() +
|
||||
"(" +
|
||||
match[2] +
|
||||
") { return fn.apply(this, arguments); };"
|
||||
)(this);
|
||||
try {
|
||||
mixin(fn, this);
|
||||
} catch (ignore) {}
|
||||
return fn;
|
||||
};
|
||||
Reference in New Issue
Block a user