Sha256: e1aba1cb8b651173d3adc757a5f577c46ddf64d78e734c6028eb38990b56a571
Contents?: true
Size: 767 Bytes
Versions: 115
Compression:
Stored size: 767 Bytes
Contents
'use strict'; var toStr = Object.prototype.toString; var hasSymbols = require('has-symbols')(); if (hasSymbols) { var symToStr = Symbol.prototype.toString; var symStringRegex = /^Symbol\(.*\)$/; var isSymbolObject = function isRealSymbolObject(value) { if (typeof value.valueOf() !== 'symbol') { return false; } return symStringRegex.test(symToStr.call(value)); }; module.exports = function isSymbol(value) { if (typeof value === 'symbol') { return true; } if (toStr.call(value) !== '[object Symbol]') { return false; } try { return isSymbolObject(value); } catch (e) { return false; } }; } else { module.exports = function isSymbol(value) { // this environment does not support Symbols. return false && value; }; }
Version data entries
115 entries across 114 versions & 14 rubygems