/**

* Removes `key` and its value from the hash.
*
* @private
* @name delete
* @memberOf Hash
* @param {Object} hash The hash to modify.
* @param {string} key The key of the value to remove.
* @returns {boolean} Returns `true` if the entry was removed, else `false`.
*/

function hashDelete(key) {

var result = this.has(key) && delete this.__data__[key];
this.size -= result ? 1 : 0;
return result;

}

module.exports = hashDelete;