Sha256: a2981395b1a8d1ce561cde15f6d9da1055672139aea7a7b7a343b1620cd4d3b5
Contents?: true
Size: 1 KB
Versions: 10
Compression:
Stored size: 1 KB
Contents
/**@constructor*/ function Hash() { this.reset(); } Hash.prototype.reset = function() { this.elements = {}; } Hash.prototype.put = function() { for (var i = 0, l = arguments.length; i < l; i++) { this.elements[arguments[i]] = arguments[++i]; } } Hash.prototype.has = function(key) { return this.elements.hasOwnProperty(key); } Hash.prototype.get = function(key) { return (this.has(key)) ? this.elements[key] : undefined; } Hash.prototype.drop = function(key) { if (this.has(key)) { delete this.elements[key]; } } Hash.prototype.rename = function(oldKey, newKey) { if (oldKey != newKey && this.has(oldKey)) { this.elements[newKey] = this.elements[oldKey]; delete this.elements[oldKey]; } } Hash.prototype.keys = function() { var keys = []; for (var key in this.elements) if (this.has(key)) keys.push(key); return keys; } Hash.prototype.values = function() { var values = []; for (var key in this.elements) if (this.has(key)) values.push(this.get(key)); return values; }
Version data entries
10 entries across 10 versions & 1 rubygems