UNPKG

foop

Version:

interfaces that describe their intentions.

39 lines (37 loc) 2.97 kB
var invoke = require('../fp/invoke') var objectToString = require('../native/objectToString') /** * The base implementation of `getTag` without fallbacks for buggy environments. * * @memberOf is * @since 3.0.0 * @alias getTag * @alias toStringTag * @alias toS * * @param {*} obj The value to `Object.prototype.toString.call(obj)`. * @return {string} Returns the `toStringTag`. * * @see https://github.com/lodash/lodash/blob/master/.internal/baseGetTag.js * @see https://github.com/jonschlinkert/kind-of * @see https://github.com/substack/js-traverse/blob/master/index.js#L285 * @see http://luxiyalu.com/object-prototype-tostring-call/ * * @TODO obj[Symbol.toStringTag] * @TODO run deopt check on this invoking see how many invocations... are needed to inline * * @example * * toS({}) * //=> '[object Object]' * * toS(function() {}) * //=> '[Object Function]' * * getTag([]) * //=> '[object Array]' * */ // module.exports = obj => objectToString.call(obj) module.exports = invoke(objectToString, 'call') //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9TLmpzIiwic291cmNlcyI6WyJ0b1MuanMiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgaW52b2tlID0gcmVxdWlyZSgnLi4vZnAvaW52b2tlJylcbmNvbnN0IG9iamVjdFRvU3RyaW5nID0gcmVxdWlyZSgnLi4vbmF0aXZlL29iamVjdFRvU3RyaW5nJylcblxuLyoqXG4gKiBUaGUgYmFzZSBpbXBsZW1lbnRhdGlvbiBvZiBgZ2V0VGFnYCB3aXRob3V0IGZhbGxiYWNrcyBmb3IgYnVnZ3kgZW52aXJvbm1lbnRzLlxuICpcbiAqIEBtZW1iZXJPZiBpc1xuICogQHNpbmNlIDMuMC4wXG4gKiBAYWxpYXMgZ2V0VGFnXG4gKiBAYWxpYXMgdG9TdHJpbmdUYWdcbiAqIEBhbGlhcyB0b1NcbiAqXG4gKiBAcGFyYW0geyp9IG9iaiBUaGUgdmFsdWUgdG8gYE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChvYmopYC5cbiAqIEByZXR1cm4ge3N0cmluZ30gUmV0dXJucyB0aGUgYHRvU3RyaW5nVGFnYC5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9sb2Rhc2gvbG9kYXNoL2Jsb2IvbWFzdGVyLy5pbnRlcm5hbC9iYXNlR2V0VGFnLmpzXG4gKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zY2hsaW5rZXJ0L2tpbmQtb2ZcbiAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3N1YnN0YWNrL2pzLXRyYXZlcnNlL2Jsb2IvbWFzdGVyL2luZGV4LmpzI0wyODVcbiAqIEBzZWUgaHR0cDovL2x1eGl5YWx1LmNvbS9vYmplY3QtcHJvdG90eXBlLXRvc3RyaW5nLWNhbGwvXG4gKlxuICogQFRPRE8gb2JqW1N5bWJvbC50b1N0cmluZ1RhZ11cbiAqIEBUT0RPIHJ1biBkZW9wdCBjaGVjayBvbiB0aGlzIGludm9raW5nIHNlZSBob3cgbWFueSBpbnZvY2F0aW9ucy4uLiBhcmUgbmVlZGVkIHRvIGlubGluZVxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogICAgdG9TKHt9KVxuICogICAgLy89PiAnW29iamVjdCBPYmplY3RdJ1xuICpcbiAqICAgIHRvUyhmdW5jdGlvbigpIHt9KVxuICogICAgLy89PiAnW09iamVjdCBGdW5jdGlvbl0nXG4gKlxuICogICAgZ2V0VGFnKFtdKVxuICogICAgLy89PiAnW29iamVjdCBBcnJheV0nXG4gKlxuICovXG4vLyBtb2R1bGUuZXhwb3J0cyA9IG9iaiA9PiBvYmplY3RUb1N0cmluZy5jYWxsKG9iailcbm1vZHVsZS5leHBvcnRzID0gaW52b2tlKG9iamVjdFRvU3RyaW5nLCAnY2FsbCcpXG4iXSwibmFtZXMiOlsiY29uc3QiXSwibWFwcGluZ3MiOiJBQUFBQSxHQUFLLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUM7QUFDdENBLEdBQUssQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDLDBCQUEwQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW1DMUQsTUFBTSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsY0FBYyxFQUFFLE1BQU0sQ0FBQzsifQ==