Files
lodash/.internal/Hash.js
2017-01-10 00:45:05 -08:00

35 lines
825 B
JavaScript

import hashClear from './.internal/hashClear.js';
import hashDelete from './.internal/hashDelete.js';
import hashGet from './.internal/hashGet.js';
import hashHas from './.internal/hashHas.js';
import hashSet from './.internal/hashSet.js';
/**
* Creates a hash object.
*
* @private
* @constructor
* @param {Array} [entries] The key-value pairs to cache.
*/
class Hash {
constructor(entries) {
let index = -1;
const length = entries == null ? 0 : entries.length;
this.clear();
while (++index < length) {
const entry = entries[index];
this.set(entry[0], entry[1]);
}
}
}
// Add methods to `Hash`.
Hash.prototype.clear = hashClear;
Hash.prototype['delete'] = hashDelete;
Hash.prototype.get = hashGet;
Hash.prototype.has = hashHas;
Hash.prototype.set = hashSet;
export default Hash;