File Explorer

/proc/self/root/var/runtime/node_modules/@aws-sdk/node_modules/mnemonist

This explorer reads the filesystem of the server it runs on, so /workspace/user isn't present here. Browsing and the terminal still work against this server's own disk from /.

default-weak-map.js2.3 KB · 109 lines
/** * Mnemonist DefaultWeakMap * ========================= * * JavaScript implementation of a default weak map that will return a constructed * value any time one tries to access an non-existing key. It is similar to * DefaultMap but uses ES6 WeakMap that only holds weak reference to keys. */ /** * DefaultWeakMap. * * @constructor */function DefaultWeakMap(factory) {  if (typeof factory !== 'function')    throw new Error('mnemonist/DefaultWeakMap.constructor: expecting a function.');   this.items = new WeakMap();  this.factory = factory;} /** * Method used to clear the structure. * * @return {undefined} */DefaultWeakMap.prototype.clear = function() {   // Properties  this.items = new WeakMap();}; /** * Method used to get the value set for given key. If the key does not exist, * the value will be created using the provided factory. * * @param  {any} key - Target key. * @return {any} */DefaultWeakMap.prototype.get = function(key) {  var value = this.items.get(key);   if (typeof value === 'undefined') {    value = this.factory(key);    this.items.set(key, value);  }   return value;}; /** * Method used to get the value set for given key. If the key does not exist, * a value won't be created. * * @param  {any} key - Target key. * @return {any} */DefaultWeakMap.prototype.peek = function(key) {  return this.items.get(key);}; /** * Method used to set a value for given key. * * @param  {any} key   - Target key. * @param  {any} value - Value. * @return {DefaultMap} */DefaultWeakMap.prototype.set = function(key, value) {  this.items.set(key, value);  return this;}; /** * Method used to test the existence of a key in the map. * * @param  {any} key   - Target key. * @return {boolean} */DefaultWeakMap.prototype.has = function(key) {  return this.items.has(key);}; /** * Method used to delete target key. * * @param  {any} key   - Target key. * @return {boolean} */DefaultWeakMap.prototype.delete = function(key) {  return this.items.delete(key);}; /** * Convenience known methods. */DefaultWeakMap.prototype.inspect = function() {  return this.items;}; if (typeof Symbol !== 'undefined')  DefaultWeakMap.prototype[Symbol.for('nodejs.util.inspect.custom')] = DefaultWeakMap.prototype.inspect; /** * Exporting. */module.exports = DefaultWeakMap;