{"_id":"multimap","_rev":"1720916","name":"multimap","description":"multi-map which allow multiple values for the same key","dist-tags":{"latest":"1.1.0"},"maintainers":[{"name":"korynunn","email":"knunn187@gmail.com"}],"time":{"modified":"2021-11-29T01:30:28.000Z","created":"2014-07-16T07:56:59.108Z","1.1.0":"2019-11-12T02:59:42.031Z","1.0.2":"2016-03-10T23:50:51.962Z","1.0.1":"2015-09-23T02:07:45.490Z","1.0.0":"2015-09-18T06:15:39.061Z","0.1.1":"2014-12-19T04:06:28.420Z","0.1.0":"2014-08-27T06:17:06.615Z","0.0.2":"2014-07-16T09:57:00.661Z","0.0.1":"2014-07-16T07:56:59.108Z"},"users":{"jaggedsoft":true,"springuper":true},"author":{"name":"villa.gao","email":"jky239@gmail.com"},"repository":{"type":"git","url":"git://github.com/villadora/multi-map.git"},"versions":{"1.1.0":{"name":"multimap","version":"1.1.0","description":"multi-map which allow multiple values for the same key","main":"index.js","scripts":{"lint":"jshint *.js test/*.js","test":"npm run lint; node test/index.js;node test/es6map.js"},"repository":{"type":"git","url":"git://github.com/villadora/multi-map.git"},"bugs":{"url":"https://github.com/villadora/multi-map/issues"},"keywords":["keys","map","multiple"],"dependencies":{},"devDependencies":{"chai":"~1.7.2","es6-shim":"^0.13.0","jshint":"~2.1.9"},"author":{"name":"villa.gao","email":"jky239@gmail.com"},"license":"MIT","gitHead":"30f8a78536e3f57a711394e2841849206f24d988","homepage":"https://github.com/villadora/multi-map#readme","_id":"multimap@1.1.0","_nodeVersion":"12.12.0","_npmVersion":"6.11.3","dist":{"shasum":"5263febc085a1791c33b59bb3afc6a76a2a10ca8","size":4069,"noattachment":false,"key":"/multimap/-/multimap-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/multimap/download/multimap-1.1.0.tgz"},"maintainers":[{"name":"korynunn","email":"knunn187@gmail.com"}],"_npmUser":{"name":"korynunn","email":"knunn187@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/multimap_1.1.0_1573527581815_0.42102531850276037"},"_hasShrinkwrap":false,"publish_time":1573527582031,"_cnpm_publish_time":1573527582031},"1.0.2":{"name":"multimap","version":"1.0.2","description":"multi-map which allow multiple values for the same key","main":"index.js","scripts":{"lint":"jshint *.js test/*.js","test":"npm run lint; node test/index.js;node test/es6map.js"},"repository":{"type":"git","url":"git://github.com/villadora/multi-map.git"},"bugs":{"url":"https://github.com/villadora/multi-map/issues"},"keywords":["keys","map","multiple"],"dependencies":{},"devDependencies":{"chai":"~1.7.2","es6-shim":"^0.13.0","jshint":"~2.1.9"},"author":{"name":"villa.gao","email":"jky239@gmail.com"},"license":"MIT","gitHead":"9fe12001b197fc4ed25e1b836e76eb4c88f1368f","homepage":"https://github.com/villadora/multi-map#readme","_id":"multimap@1.0.2","_shasum":"6aa76fc3233905ba948bbe4c74dc2c3a0356eb36","_from":".","_npmVersion":"3.5.3","_nodeVersion":"5.3.0","_npmUser":{"name":"korynunn","email":"knunn187@gmail.com"},"dist":{"shasum":"6aa76fc3233905ba948bbe4c74dc2c3a0356eb36","size":4100,"noattachment":false,"key":"/multimap/-/multimap-1.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/multimap/download/multimap-1.0.2.tgz"},"maintainers":[{"name":"korynunn","email":"knunn187@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/multimap-1.0.2.tgz_1457653851539_0.21096828300505877"},"directories":{},"publish_time":1457653851962,"_cnpm_publish_time":1457653851962,"_hasShrinkwrap":false},"1.0.1":{"name":"multimap","version":"1.0.1","description":"multi-map which allow multiple values for the same key","main":"index.js","scripts":{"lint":"jshint *.js test/*.js","test":"npm run lint; node test/index.js;node test/es6map.js"},"repository":{"type":"git","url":"git://github.com/villadora/multi-map.git"},"bugs":{"url":"https://github.com/villadora/multi-map/issues"},"keywords":["keys","map","multiple"],"dependencies":{},"devDependencies":{"chai":"~1.7.2","es6-shim":"^0.13.0","jshint":"~2.1.9"},"author":{"name":"villa.gao","email":"jky239@gmail.com"},"license":"MIT","gitHead":"2976c4cfb2db987952070538eca0d63ee16bb7ba","homepage":"https://github.com/villadora/multi-map#readme","_id":"multimap@1.0.1","_shasum":"ff671441fd95f254ed75466a2f3121c04ed2cf5f","_from":".","_npmVersion":"2.12.1","_nodeVersion":"2.3.4","_npmUser":{"name":"korynunn","email":"knunn187@gmail.com"},"dist":{"shasum":"ff671441fd95f254ed75466a2f3121c04ed2cf5f","size":4057,"noattachment":false,"key":"/multimap/-/multimap-1.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/multimap/download/multimap-1.0.1.tgz"},"maintainers":[{"name":"korynunn","email":"knunn187@gmail.com"}],"directories":{},"publish_time":1442974065490,"_cnpm_publish_time":1442974065490,"_hasShrinkwrap":false},"1.0.0":{"name":"multimap","version":"1.0.0","description":"multi-map which allow multiple values for the same key","main":"index.js","scripts":{"lint":"jshint *.js test/*.js","test":"npm run lint; node test/index.js;node test/es6map.js"},"repository":{"type":"git","url":"git://github.com/villadora/multi-map.git"},"bugs":{"url":"https://github.com/villadora/multi-map/issues"},"keywords":["keys","map","multiple"],"dependencies":{},"devDependencies":{"chai":"~1.7.2","es6-shim":"^0.13.0","jshint":"~2.1.9"},"author":{"name":"villa.gao","email":"jky239@gmail.com"},"license":"MIT","gitHead":"c7ce7efabc09eb663cc8164dac0b8395c263ec8e","homepage":"https://github.com/villadora/multi-map#readme","_id":"multimap@1.0.0","_shasum":"bd6608d82d8a04bd6f659b7bd8b5f0af15604f05","_from":".","_npmVersion":"2.12.1","_nodeVersion":"2.3.4","_npmUser":{"name":"korynunn","email":"knunn187@gmail.com"},"dist":{"shasum":"bd6608d82d8a04bd6f659b7bd8b5f0af15604f05","size":4169,"noattachment":false,"key":"/multimap/-/multimap-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/multimap/download/multimap-1.0.0.tgz"},"maintainers":[{"name":"korynunn","email":"knunn187@gmail.com"}],"directories":{},"publish_time":1442556939061,"_cnpm_publish_time":1442556939061,"_hasShrinkwrap":false},"0.1.1":{"name":"multimap","version":"0.1.1","description":"multi-map which allow multiple values for the same key","main":"index.js","scripts":{"lint":"jshint *.js test/*.js","test":"npm run lint; node test/index.js;node test/es6map.js"},"repository":{"type":"git","url":"git://github.com/villadora/multi-map.git"},"bugs":{"url":"https://github.com/villadora/multi-map/issues"},"keywords":["keys","map","multiple"],"dependencies":{},"devDependencies":{"chai":"~1.7.2","es6-shim":"^0.13.0","jshint":"~2.1.9"},"author":{"name":"villa.gao","email":"jky239@gmail.com"},"license":"MIT","homepage":"https://github.com/villadora/multi-map","_id":"multimap@0.1.1","_shasum":"518e9e21520afbe56ae33c0c2353e99d53e3d5fc","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"villadora","email":"jky239@gmail.com"},"maintainers":[{"name":"korynunn","email":"knunn187@gmail.com"}],"dist":{"shasum":"518e9e21520afbe56ae33c0c2353e99d53e3d5fc","size":3886,"noattachment":false,"key":"/multimap/-/multimap-0.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/multimap/download/multimap-0.1.1.tgz"},"directories":{},"publish_time":1418961988420,"_cnpm_publish_time":1418961988420,"_hasShrinkwrap":false},"0.1.0":{"name":"multimap","version":"0.1.0","description":"multi-map which allow multi values for the same key","main":"index.js","scripts":{"lint":"jshint *.js test/*.js","test":"npm run lint; node test/index.js;node test/es6map.js"},"repository":{"type":"git","url":"git://github.com/villadora/multimap.git"},"bugs":{"url":"https://github.com/villadora/multimap/issues"},"keywords":["keys","map","multiple"],"dependencies":{},"devDependencies":{"chai":"~1.7.2","es6-shim":"^0.13.0","jshint":"~2.1.9"},"author":{"name":"villa.gao","email":"jky239@gmail.com"},"license":"MIT","homepage":"https://github.com/villadora/multimap","_id":"multimap@0.1.0","_shasum":"fec47e62a26db2698508a88b3acad12476aab2e3","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"villadora","email":"jky239@gmail.com"},"maintainers":[{"name":"korynunn","email":"knunn187@gmail.com"}],"dist":{"shasum":"fec47e62a26db2698508a88b3acad12476aab2e3","size":3571,"noattachment":false,"key":"/multimap/-/multimap-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/multimap/download/multimap-0.1.0.tgz"},"directories":{},"publish_time":1409120226615,"_cnpm_publish_time":1409120226615,"_hasShrinkwrap":false},"0.0.2":{"name":"multimap","version":"0.0.2","description":"multi-map which allow multi values for the same key","main":"index.js","scripts":{"lint":"jshint *.js test/*.js","test":"npm run lint; node test/index.js;node test/es6map.js"},"repository":{"type":"git","url":"git://github.com/villadora/multimap.git"},"bugs":{"url":"https://github.com/villadora/multimap/issues"},"keywords":["keys","map","multiple"],"dependencies":{},"devDependencies":{"chai":"~1.7.2","es6-shim":"^0.13.0","jshint":"~2.1.9"},"author":{"name":"villa.gao","email":"jky239@gmail.com"},"license":"MIT","homepage":"https://github.com/villadora/multimap","_id":"multimap@0.0.2","_shasum":"8e5e29fc88a97f70e54699d9daaa2df95aec72b5","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"villadora","email":"jky239@gmail.com"},"maintainers":[{"name":"korynunn","email":"knunn187@gmail.com"}],"dist":{"shasum":"8e5e29fc88a97f70e54699d9daaa2df95aec72b5","size":3288,"noattachment":false,"key":"/multimap/-/multimap-0.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/multimap/download/multimap-0.0.2.tgz"},"directories":{},"publish_time":1405504620661,"_cnpm_publish_time":1405504620661,"_hasShrinkwrap":false},"0.0.1":{"name":"multimap","version":"0.0.1","description":"multi-map which allow multi values for the same key","main":"index.js","scripts":{"lint":"jshint *.js test/*.js","test":"npm run lint; node test/index.js"},"repository":{"type":"git","url":"git://github.com/villadora/multimap.git"},"bugs":{"url":"https://github.com/villadora/multimap/issues"},"keywords":["keys","map","multiple"],"dependencies":{},"devDependencies":{"jshint":"~2.1.9","chai":"~1.7.2"},"author":{"name":"villa.gao","email":"jky239@gmail.com"},"license":"MIT","homepage":"https://github.com/villadora/multimap","_id":"multimap@0.0.1","_shasum":"d1aa9eeac1e4dba72831a0cfa3525f006dcbb800","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"villadora","email":"jky239@gmail.com"},"maintainers":[{"name":"korynunn","email":"knunn187@gmail.com"}],"dist":{"shasum":"d1aa9eeac1e4dba72831a0cfa3525f006dcbb800","size":3043,"noattachment":false,"key":"/multimap/-/multimap-0.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/multimap/download/multimap-0.0.1.tgz"},"directories":{},"publish_time":1405497419108,"_cnpm_publish_time":1405497419108,"_hasShrinkwrap":false}},"readme":"# Multimap - Map which Allow Multiple Values for the same Key\n\n[![NPM version](https://badge.fury.io/js/multimap.svg)](http://badge.fury.io/js/multimap)\n[![Build Status](https://travis-ci.org/villadora/multi-map.png?branch=master)](https://travis-ci.org/villadora/multi-map)\n\n## Install\n\n```bash\nnpm install multimap --save\n```\n\n## Usage\n\n\nIf you'd like to use native version when it exists and fallback to polyfill if it doesn't, but without implementing `Map` on global scope, do:\n\n```javascript\nvar Multimap = require('multimap');\nvar m = new Multimap();\n```\n\nIf the global es6 `Map` exists or `Multimap.Map` is set, `Multimap` will use the `Map` as inner store, that means Object can be used as key.\n\n```javascript\nvar Multimap = require('multimap');\n\n// if harmony is on\n/* nothing need to do */\n// or if you are using es6-shim\nMultimap.Map = ShimMap;\n\nvar m = new Multimap();\nvar key = {};\nm.set(key, 'one');\n\n```\n\nOtherwise, an object will be used, all the keys will be transformed into string.\n\n\n### In Modern Browser\n\nJust download the `index.js` as `Multimap.js`.\n\n```\n<script src=Multimap.js\"></script>\n<script>\nvar map = new Multimap([['a', 1], ['b', 2], ['c', 3]]);\nmap = map.set('b', 20);\nmap.get('b'); // [2, 20]\n</script>\n```\n\nOr use as an AMD loader:\n\n```\nrequire(['./Multimap.js'], function (Multimap) {\n  var map = new Multimap([['a', 1], ['b', 2], ['c', 3]]);\n  map = map.set('b', 20);\n  map.get('b'); // [2, 20]\n});\n```\n\n* Browsers should support `Object.defineProperty` and `Array.prototype.forEach`.\n\n\n## API\n\nFollowing shows how to use `Multimap`:\n\n```javascript\nvar Multimap = require('multimap');\n\nvar map = new Multimap([['a', 'one'], ['b', 1], ['a', 'two'], ['b', 2]]);\n\nmap.size;                 // 4\nmap.count;                // 2\n\nmap.get('a');             // ['one', 'two']\nmap.get('b');             // [1, 2]\n\nmap.has('a');             // true\nmap.has('foo');           // false\n\nmap.has('a', 'one');      // true\nmap.has('b', 3);          // false\n\nmap.set('a', 'three');\nmap.size;                 // 5\nmap.count;                // 2\nmap.get('a');             // ['one', 'two', 'three']\n\nmap.set('b', 3, 4);\nmap.size;                 // 7\nmap.count;                // 2\n\nmap.delete('a', 'three'); // true\nmap.delete('x');          // false\nmap.delete('a', 'four');  // false\nmap.delete('b');          // true\n\nmap.size;                 // 2\nmap.count;                // 1\n\nmap.set('b', 1, 2);\nmap.size;                 // 4\nmap.count;                // 2\n\n\nmap.forEach(function (value, key) {\n  // iterates { 'one', 'a' }, { 'two', 'a' }, { 1, b }, { 2, 'b' }\n});\n\nmap.forEachEntry(function (entry, key) {\n  // iterates {['one', 'two'], 'a' }, {[1, 2], 'b' }\n});\n\n\nvar keys = map.keys();      // iterator with ['a', 'b']\nkeys.next().value;          // 'a'\nvar values = map.values();  // iterator ['one', 'two', 1, 2]\n\nmap.clear();                // undefined\nmap.size;                   // 0\nmap.count;                  // 0\n```\n\n\n\n\n## License\n\n(The MIT License)\n\nCopyright (c) 2013, Villa.Gao <jky239@gmail.com>;\nAll rights reserved.\n","_attachments":{},"homepage":"https://github.com/villadora/multi-map#readme","bugs":{"url":"https://github.com/villadora/multi-map/issues"},"license":"MIT"}