diff options
author | Florian Dold <florian.dold@gmail.com> | 2017-05-27 17:36:13 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2017-05-27 17:36:13 +0200 |
commit | 5f466137ad6ac596600e3ff53c9b786815398445 (patch) | |
tree | f914c221874f0b16bf3def7ac01d59d1a99a3b0b /node_modules/core-js/modules/$.collection-weak.js | |
parent | c9f5ac8e763eda19aa0564179300cfff76785435 (diff) |
node_modules, clean up package.json
Diffstat (limited to 'node_modules/core-js/modules/$.collection-weak.js')
-rw-r--r-- | node_modules/core-js/modules/$.collection-weak.js | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/node_modules/core-js/modules/$.collection-weak.js b/node_modules/core-js/modules/$.collection-weak.js deleted file mode 100644 index 384fb39dc..000000000 --- a/node_modules/core-js/modules/$.collection-weak.js +++ /dev/null @@ -1,86 +0,0 @@ -'use strict'; -var hide = require('./$.hide') - , redefineAll = require('./$.redefine-all') - , anObject = require('./$.an-object') - , isObject = require('./$.is-object') - , strictNew = require('./$.strict-new') - , forOf = require('./$.for-of') - , createArrayMethod = require('./$.array-methods') - , $has = require('./$.has') - , WEAK = require('./$.uid')('weak') - , isExtensible = Object.isExtensible || isObject - , arrayFind = createArrayMethod(5) - , arrayFindIndex = createArrayMethod(6) - , id = 0; - -// fallback for frozen keys -var frozenStore = function(that){ - return that._l || (that._l = new FrozenStore); -}; -var FrozenStore = function(){ - this.a = []; -}; -var findFrozen = function(store, key){ - return arrayFind(store.a, function(it){ - return it[0] === key; - }); -}; -FrozenStore.prototype = { - get: function(key){ - var entry = findFrozen(this, key); - if(entry)return entry[1]; - }, - has: function(key){ - return !!findFrozen(this, key); - }, - set: function(key, value){ - var entry = findFrozen(this, key); - if(entry)entry[1] = value; - else this.a.push([key, value]); - }, - 'delete': function(key){ - var index = arrayFindIndex(this.a, function(it){ - return it[0] === key; - }); - if(~index)this.a.splice(index, 1); - return !!~index; - } -}; - -module.exports = { - getConstructor: function(wrapper, NAME, IS_MAP, ADDER){ - var C = wrapper(function(that, iterable){ - strictNew(that, C, NAME); - that._i = id++; // collection id - that._l = undefined; // leak store for frozen objects - if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that); - }); - redefineAll(C.prototype, { - // 23.3.3.2 WeakMap.prototype.delete(key) - // 23.4.3.3 WeakSet.prototype.delete(value) - 'delete': function(key){ - if(!isObject(key))return false; - if(!isExtensible(key))return frozenStore(this)['delete'](key); - return $has(key, WEAK) && $has(key[WEAK], this._i) && delete key[WEAK][this._i]; - }, - // 23.3.3.4 WeakMap.prototype.has(key) - // 23.4.3.4 WeakSet.prototype.has(value) - has: function has(key){ - if(!isObject(key))return false; - if(!isExtensible(key))return frozenStore(this).has(key); - return $has(key, WEAK) && $has(key[WEAK], this._i); - } - }); - return C; - }, - def: function(that, key, value){ - if(!isExtensible(anObject(key))){ - frozenStore(that).set(key, value); - } else { - $has(key, WEAK) || hide(key, WEAK, {}); - key[WEAK][that._i] = value; - } return that; - }, - frozenStore: frozenStore, - WEAK: WEAK -};
\ No newline at end of file |