Sha256: 7d9e575e03df8ba5c1e6198ec7caf0a43dab80727f9f37201d24b4a4eccbe534

Contents?: true

Size: 543 Bytes

Versions: 46

Compression:

Stored size: 543 Bytes

Contents

"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;
};

Version data entries

46 entries across 46 versions & 3 rubygems

Version Path
govuk_publishing_components-18.0.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.21.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.20.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.19.1 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.19.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.18.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.17.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.16.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.15.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.14.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.13.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.12.2 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.12.1 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.12.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.11.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.10.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.9.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.8.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.7.0 node_modules/es5-ext/function/#/copy.js
govuk_publishing_components-17.6.1 node_modules/es5-ext/function/#/copy.js