source: imaps-frontend/node_modules/core-js/modules/esnext.weak-map.get-or-insert-computed.js

main
Last change on this file was 79a0317, checked in by stefan toskovski <stefantoska84@…>, 2 weeks ago

F4 Finalna Verzija

  • Property mode set to 100644
File size: 760 bytes
Line 
1'use strict';
2var $ = require('../internals/export');
3var aCallable = require('../internals/a-callable');
4var aWeakMap = require('../internals/a-weak-map');
5var WeakMapHelpers = require('../internals/weak-map-helpers');
6
7var get = WeakMapHelpers.get;
8var has = WeakMapHelpers.has;
9var set = WeakMapHelpers.set;
10
11// `WeakMap.prototype.getOrInsertComputed` method
12// https://github.com/tc39/proposal-upsert
13$({ target: 'WeakMap', proto: true, real: true, forced: true }, {
14 getOrInsertComputed: function getOrInsertComputed(key, callbackfn) {
15 aWeakMap(this);
16 aCallable(callbackfn);
17 if (has(this, key)) return get(this, key);
18 set(this, key); // key validation
19 var value = callbackfn(key);
20 set(this, key, value);
21 return value;
22 }
23});
Note: See TracBrowser for help on using the repository browser.