github-pages-deploy-action/node_modules/@sinonjs/commons/lib/class-name.js
2020-01-27 23:58:23 -05:00

20 lines
752 B
JavaScript

"use strict";
var functionName = require("./function-name");
module.exports = function className(value) {
return (
(value.constructor && value.constructor.name) ||
// The next branch is for IE11 support only:
// Because the name property is not set on the prototype
// of the Function object, we finally try to grab the
// name from its definition. This will never be reached
// in node, so we are not able to test this properly.
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/name
(typeof value.constructor === "function" &&
/* istanbul ignore next */
functionName(value.constructor)) ||
null
);
};