import getTag from './.internal/getTag.js' import nodeTypes from './.internal/nodeTypes.js' import isObjectLike from './isObjectLike' /* Node.js helper references. */ const nodeIsSet = nodeTypes && nodeTypes.isSet /** * Checks if `value` is classified as a `Set` object. * * @since 4.3.0 * @category Lang * @param {*} value The value to check. * @returns {boolean} Returns `true` if `value` is a set, else `false`. * @example * * isSet(new Set) * // => true * * isSet(new WeakSet) * // => false */ const isSet = nodeIsSet ? (value) => nodeIsSet(value) : (value) => isObjectLike(value) && getTag(value) == '[object Set]' export default isSet