summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/cacache/node_modules/lru-cache/node_modules/pseudomap/pseudomap.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/node_modules/cacache/node_modules/lru-cache/node_modules/pseudomap/pseudomap.js')
-rw-r--r--deps/npm/node_modules/cacache/node_modules/lru-cache/node_modules/pseudomap/pseudomap.js113
1 files changed, 0 insertions, 113 deletions
diff --git a/deps/npm/node_modules/cacache/node_modules/lru-cache/node_modules/pseudomap/pseudomap.js b/deps/npm/node_modules/cacache/node_modules/lru-cache/node_modules/pseudomap/pseudomap.js
deleted file mode 100644
index 25a21d829e..0000000000
--- a/deps/npm/node_modules/cacache/node_modules/lru-cache/node_modules/pseudomap/pseudomap.js
+++ /dev/null
@@ -1,113 +0,0 @@
-var hasOwnProperty = Object.prototype.hasOwnProperty
-
-module.exports = PseudoMap
-
-function PseudoMap (set) {
- if (!(this instanceof PseudoMap)) // whyyyyyyy
- throw new TypeError("Constructor PseudoMap requires 'new'")
-
- this.clear()
-
- if (set) {
- if ((set instanceof PseudoMap) ||
- (typeof Map === 'function' && set instanceof Map))
- set.forEach(function (value, key) {
- this.set(key, value)
- }, this)
- else if (Array.isArray(set))
- set.forEach(function (kv) {
- this.set(kv[0], kv[1])
- }, this)
- else
- throw new TypeError('invalid argument')
- }
-}
-
-PseudoMap.prototype.forEach = function (fn, thisp) {
- thisp = thisp || this
- Object.keys(this._data).forEach(function (k) {
- if (k !== 'size')
- fn.call(thisp, this._data[k].value, this._data[k].key)
- }, this)
-}
-
-PseudoMap.prototype.has = function (k) {
- return !!find(this._data, k)
-}
-
-PseudoMap.prototype.get = function (k) {
- var res = find(this._data, k)
- return res && res.value
-}
-
-PseudoMap.prototype.set = function (k, v) {
- set(this._data, k, v)
-}
-
-PseudoMap.prototype.delete = function (k) {
- var res = find(this._data, k)
- if (res) {
- delete this._data[res._index]
- this._data.size--
- }
-}
-
-PseudoMap.prototype.clear = function () {
- var data = Object.create(null)
- data.size = 0
-
- Object.defineProperty(this, '_data', {
- value: data,
- enumerable: false,
- configurable: true,
- writable: false
- })
-}
-
-Object.defineProperty(PseudoMap.prototype, 'size', {
- get: function () {
- return this._data.size
- },
- set: function (n) {},
- enumerable: true,
- configurable: true
-})
-
-PseudoMap.prototype.values =
-PseudoMap.prototype.keys =
-PseudoMap.prototype.entries = function () {
- throw new Error('iterators are not implemented in this version')
-}
-
-// Either identical, or both NaN
-function same (a, b) {
- return a === b || a !== a && b !== b
-}
-
-function Entry (k, v, i) {
- this.key = k
- this.value = v
- this._index = i
-}
-
-function find (data, k) {
- for (var i = 0, s = '_' + k, key = s;
- hasOwnProperty.call(data, key);
- key = s + i++) {
- if (same(data[key].key, k))
- return data[key]
- }
-}
-
-function set (data, k, v) {
- for (var i = 0, s = '_' + k, key = s;
- hasOwnProperty.call(data, key);
- key = s + i++) {
- if (same(data[key].key, k)) {
- data[key].value = v
- return
- }
- }
- data.size++
- data[key] = new Entry(k, v, key)
-}