{"_id":"resource-counter","_rev":"32-12bc36ea75f0730205d075f1a41f92e6","name":"resource-counter","dist-tags":{"latest":"1.2.4"},"versions":{"0.0.1":{"name":"resource-counter","version":"0.0.1","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@0.0.1","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polycademy.com"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"5e68432a025ec60d79cb5b7ae53464e4aef87bab","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-0.0.1.tgz","integrity":"sha512-N67LIGlsHjix91XVZ/y/7guUR0T/uigpOctdfUsGmLh01w7s3t5Vk8ohhAz7HxrqJjyIzGmDR7TcvXhDjFs9vw==","signatures":[{"sig":"MEUCICCQCDMCI3vIv5mqOCkSw38ixVL4yFXvtWbL0aTZtKKaAiEAsJEmI14oHr2xhCv+8yz3YUnqXLDIWI19pjVzVSJa1Ok=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/Counter.js","_from":".","module":"lib/Counter.js","_shasum":"5e68432a025ec60d79cb5b7ae53464e4aef87bab","engines":{"node":">=4.0.0"},"gitHead":"21addf0f002141a3f079dfd57f4f8c6326f37161","scripts":{"doc":"jsdoc ./lib --destination ./doc --recurse","test":"ava -v","build":"npm test && npm run doc && npm run rollup","rollup":"rollup --config"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polycademy.com"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"3.10.10","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"6.9.5","dependencies":{"bitset.js":"^4.0.1"},"devDependencies":{"ava":"^0.19.1","jsdoc":"^3.4.3","rollup":"^0.43.0","babel-cli":"^6.24.1","babel-register":"^6.24.1","babel-preset-env":"^1.5.2","rollup-plugin-babel":"^2.7.1","rollup-plugin-commonjs":"^8.0.2","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-external-helpers":"^6.22.0"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter-0.0.1.tgz_1498120882308_0.9985990533605218","host":"s3://npm-registry-packages"}},"0.1.0":{"name":"resource-counter","version":"0.1.0","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@0.1.0","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polycademy.com"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"066feab3bbdbadc135e32b199f0e008f2d716d9d","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-0.1.0.tgz","integrity":"sha512-UI8vk3JDfvduekyYtFtqr3mXRFWg/fFNwjFih3Fc+wpkjcF0YKqtD++JVq4dKV+RsCLO1W5rd+2mCzrx5No7Hw==","signatures":[{"sig":"MEQCIDBDB1+7k8q7mz1XyVnUb7d1o9+QcBCppb/kN4t386KiAiAnrUu0WqOpJSbXLYDIq2c4MoR+S/NiO7veO9ZRo00LDA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/Counter.js","_from":".","module":"lib/Counter.js","_shasum":"066feab3bbdbadc135e32b199f0e008f2d716d9d","browser":"dist/Counter-browser.js","engines":{"node":">=6.11.1"},"gitHead":"a5c034e969b70446b834a155cc43a4bf5bb6f1b8","scripts":{"doc":"jsdoc ./lib --destination ./doc --recurse","test":"ava -v","build":"npm test && npm run doc && npm run rollup","rollup":"rollup --config"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polycademy.com"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"3.10.10","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"6.11.1","dependencies":{"bitset.js":"^4.0.1"},"devDependencies":{"ava":"^0.19.1","jsdoc":"^3.4.3","rollup":"^0.43.0","babel-cli":"^6.24.1","babel-register":"^6.24.1","babel-preset-env":"^1.5.2","rollup-plugin-babel":"^2.7.1","rollup-plugin-commonjs":"^8.0.2","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-external-helpers":"^6.22.0"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter-0.1.0.tgz_1503998939355_0.6714057659264654","host":"s3://npm-registry-packages"}},"0.2.0":{"name":"resource-counter","version":"0.2.0","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@0.2.0","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polycademy.com"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"8b98e33ee6c27dde26cf50dd276e300c9e01577e","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-0.2.0.tgz","integrity":"sha512-GsXuEbpkAr4u9hsGzL+kbe0cGT0zJZ3p6QH06coQG+BLTnqgKTKGUZtAb3nvzlQ6iKGYf4TkM2wP9N0lMeowAg==","signatures":[{"sig":"MEYCIQCMdgaNHrmQWdSD178aeEQkb1JyDDjI/SN5SLMvnGy9BwIhAJVKYw0idFL2P993LfjiiXQH16KCL7xX7PwwYtWjaiJx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/Counter.cjs.js","_from":".","module":"dist/Counter.es.js","_shasum":"8b98e33ee6c27dde26cf50dd276e300c9e01577e","browser":"dist/Counter-browser.js","engines":{"node":">=6.11.1"},"gitHead":"7b61642a98d9b8da9dc157917c42e13967f6b216","scripts":{"doc":"jsdoc ./lib --destination ./doc --recurse","test":"ava -v","build":"npm test && npm run doc && npm run rollup","rollup":"rollup --config"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polycademy.com"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"3.10.10","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"6.11.1","dependencies":{"bitset.js":"^4.0.1"},"devDependencies":{"ava":"^0.19.1","jsdoc":"^3.4.3","rollup":"^0.43.0","babel-cli":"^6.24.1","babel-register":"^6.24.1","babel-preset-env":"^1.5.2","rollup-plugin-babel":"^2.7.1","rollup-plugin-commonjs":"^8.0.2","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-external-helpers":"^6.22.0"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter-0.2.0.tgz_1504001217971_0.449644808890298","host":"s3://npm-registry-packages"}},"0.3.0":{"name":"resource-counter","version":"0.3.0","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@0.3.0","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polycademy.com"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"26902a7b6c994a20b0a67fa88ffdc32e24ba4f58","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-0.3.0.tgz","integrity":"sha512-rRxztYAicGkjd8un54vb6zqhHrhXrrSBNp6n9oLmneD769DYlIdVUKFKxoJvO95XZBjcOZaJ0wnVS1xlM3m3Dg==","signatures":[{"sig":"MEUCICFysOx9/8TNt3TueNC2h8GtyS2gCjKo9mBiCR3tCgJ/AiEAm6QeQkHRoaKKaPQ5aFEyVT7rsfUuqgCnpYi7XvLkJic=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/Counter.cjs.js","_from":".","module":"dist/Counter.es.js","_shasum":"26902a7b6c994a20b0a67fa88ffdc32e24ba4f58","browser":"dist/Counter-browser.js","engines":{"node":">=6.11.1"},"gitHead":"a2529a7a3d491ca0837605a01aa01bc5dfa3c7a3","scripts":{"doc":"jsdoc ./lib --destination ./doc --recurse","test":"ava -v","build":"npm test && npm run doc && npm run rollup","rollup":"rollup --config"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"3.10.10","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"6.11.1","dependencies":{"bitset.js":"^4.0.1"},"devDependencies":{"ava":"^0.19.1","jsdoc":"^3.4.3","rollup":"^0.43.0","babel-cli":"^6.24.1","babel-register":"^6.24.1","babel-preset-env":"^1.5.2","rollup-plugin-babel":"^2.7.1","rollup-plugin-commonjs":"^8.0.2","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-external-helpers":"^6.22.0"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter-0.3.0.tgz_1506849101589_0.700840195408091","host":"s3://npm-registry-packages"}},"0.3.1":{"name":"resource-counter","version":"0.3.1","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@0.3.1","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"6c7032e5a7a3ee54ea45c1fb24f7dea495d7dadd","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-0.3.1.tgz","integrity":"sha512-0igvwcywDMMKNk8U8ovIV2twfMIZz3SxGOgvcHO+5U1/zIflbDTEvJcslDSwwl3xj/AXbBa1oJn/+cvuUNoMYA==","signatures":[{"sig":"MEUCIHsAtGTdKI3ogHGMSRtBl5Uy9Hb/isylmnYEso0CTHcLAiEA1+FDFZnlet/gq4UK5zHbhUZXmBYucaC+aB6w35RcsK0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/Counter.cjs.js","module":"dist/Counter.es.js","browser":"dist/Counter-browser.js","engines":{"node":">=6.11.1"},"gitHead":"d2f151b3f74f4a308d087ed60ee91c197de148cd","scripts":{"doc":"jsdoc ./lib --destination ./doc --recurse","test":"ava -v","build":"npm test && npm run doc && npm run rollup","rollup":"rollup --config"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"5.4.2","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"8.7.0","dependencies":{"bitset.js":"^4.0.1"},"devDependencies":{"ava":"^0.19.1","jsdoc":"^3.4.3","rollup":"^0.43.0","babel-cli":"^6.24.1","babel-register":"^6.24.1","babel-preset-env":"^1.5.2","rollup-plugin-babel":"^2.7.1","rollup-plugin-commonjs":"^8.0.2","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-external-helpers":"^6.22.0"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter-0.3.1.tgz_1510297226185_0.02865989343263209","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"resource-counter","version":"1.0.0","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@1.0.0","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"475367c7f6f6b786db34b60bdd42f64a1b3a859f","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-1.0.0.tgz","integrity":"sha512-l+hJ6hHN9sMTRPSVEEU9OI+DgzktnNM7LyPrR/WwIbxPSMBD6WwtpTMcoWpuBaYmFKo19y0R2Kq8GCjE+pA50Q==","signatures":[{"sig":"MEUCIQDCGB6fHEv4o3hwJJSuaTs0iZ0QW1TfTJ5oGtDSuDiY7QIgb4wAVg1Hp+jARpHs5DexXzXn+JcvtI2Vq74bPE1HmkQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/Counter.cjs.js","_from":".","module":"dist/Counter.es.js","_shasum":"475367c7f6f6b786db34b60bdd42f64a1b3a859f","browser":"dist/Counter-browser.js","engines":{"node":">=6.11.1"},"gitHead":"5a58d9304c7f70f1c7783b664897256312f572d3","scripts":{"doc":"jsdoc ./lib --destination ./doc --recurse","test":"ava -v","build":"npm test && npm run doc && npm run rollup","rollup":"rollup --config"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"3.10.10","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"6.12.2","dependencies":{"bitset.js":"^4.0.1"},"devDependencies":{"ava":"^0.19.1","jsdoc":"^3.4.3","rollup":"^0.43.0","babel-cli":"^6.24.1","babel-register":"^6.24.1","babel-preset-env":"^1.5.2","rollup-plugin-babel":"^2.7.1","rollup-plugin-commonjs":"^8.0.2","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-external-helpers":"^6.22.0"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter-1.0.0.tgz_1516876641516_0.8999518365599215","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"resource-counter","version":"1.1.0","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@1.1.0","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"69f164c91a22921ebde0e5edb0e5c79179b7d48b","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-1.1.0.tgz","integrity":"sha512-1M67XcnV7JApmwm8rKf6wJ7nSe0Igjc+T+q5h9Sezs4AlY4v1JROf0px8iHWciICHljH03+ZF4xhcLYLi6ZCQw==","signatures":[{"sig":"MEQCIBwPqn1qeFi9Pas6u9t50FWMpAwhEsKvXDi6c5JqZHR5AiBtdMDwcxbaRm/QImo5UkMlKaGNDacrOvzfdOMXvx2mMw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/Counter.cjs.js","_from":".","module":"dist/Counter.es.js","_shasum":"69f164c91a22921ebde0e5edb0e5c79179b7d48b","browser":"dist/Counter-browser.js","engines":{"node":">=6.11.1"},"gitHead":"121df17e0f4eabac9fc84b0db8e7d3f2f7a8678d","scripts":{"doc":"jsdoc ./lib --destination ./doc --recurse","test":"ava -v","build":"npm test && npm run doc && npm run rollup","rollup":"rollup --config"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"3.10.10","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"6.12.2","dependencies":{"bitset.js":"^4.0.1"},"devDependencies":{"ava":"^0.19.1","jsdoc":"^3.4.3","rollup":"^0.43.0","babel-cli":"^6.24.1","babel-register":"^6.24.1","babel-preset-env":"^1.5.2","rollup-plugin-babel":"^2.7.1","rollup-plugin-commonjs":"^8.0.2","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-external-helpers":"^6.22.0"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter-1.1.0.tgz_1516878716423_0.6690095281228423","host":"s3://npm-registry-packages"}},"1.1.1":{"name":"resource-counter","version":"1.1.1","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@1.1.1","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"e98d3a2fdae28440e0bcc100fcb58424da83ec47","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-1.1.1.tgz","integrity":"sha512-x6X5FkQGD7gEm8PCLf+rhnCADhM/u7sTapH1R6q1DosRPJazEIxJ7/g05ZQiqZeSwVf4bPhIzUp01ucNEnoY/Q==","signatures":[{"sig":"MEQCIDIcCUEj0KGra1UuCVCk0+ljG6KEeSc9BTv89pgt2BsdAiADaPDIE1+Y3goMmdqBH1GKRFWOd+KV9Vsq7BnT3t5Dow==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/Counter.cjs.js","_from":".","module":"dist/Counter.es.js","_shasum":"e98d3a2fdae28440e0bcc100fcb58424da83ec47","browser":"dist/Counter-browser.js","engines":{"node":">=6.11.1"},"gitHead":"d4d07093453bbe6a7735e2952a8a1c0a7a21bf61","scripts":{"doc":"jsdoc ./lib --destination ./doc --recurse","test":"ava -v","build":"npm test && npm run doc && npm run rollup","rollup":"rollup --config"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"3.10.10","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"6.12.2","dependencies":{"bitset.js":"^4.0.1"},"devDependencies":{"ava":"^0.19.1","jsdoc":"^3.4.3","rollup":"^0.43.0","babel-cli":"^6.24.1","babel-register":"^6.24.1","babel-preset-env":"^1.5.2","rollup-plugin-babel":"^2.7.1","rollup-plugin-commonjs":"^8.0.2","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-external-helpers":"^6.22.0"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter-1.1.1.tgz_1516879013672_0.6320816869847476","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"resource-counter","version":"1.2.0","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@1.2.0","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"fb4c160d9de599a9077913e4a7d0415c63b629d5","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-1.2.0.tgz","integrity":"sha512-jyyIcetd2WqS98PjjGrlskn5UYGaurl9bGm1abAcc5EdID8Y3GVbfAPDO+xAssPYBnZrNPNgDut8HQw1oqMTWQ==","signatures":[{"sig":"MEYCIQD1HpGN4x3aT+FFdyt4hWpz5f1QPyCBdAApR1YabFKsfgIhAOF3cb4sTcP07eB1BL2f4GX4Ck3tPm+9WNUlTeFPLVww","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/Counter.cjs.js","module":"dist/Counter.es.js","browser":"dist/Counter-browser.js","engines":{"node":">=6.11.1"},"gitHead":"7db281c5616896d58e9364a70fa188e9ff6cd8d1","scripts":{"doc":"documentation build ./lib/** -f html -o ./doc","test":"ava -v","build":"npm test && npm run doc && npm run rollup && npm run dos2unix","rollup":"rollup --config","dos2unix":"dos2unix dist/*"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"5.4.2","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"8.7.0","dependencies":{"bitset.js":"^4.0.1","babel-runtime":"^6.26.0"},"devDependencies":{"ava":"^0.19.1","rollup":"^0.51.5","babel-cli":"^6.26.0","documentation":"^5.3.3","babel-register":"^6.26.0","babel-preset-env":"^1.6.1","babel-preset-flow":"^6.23.0","rollup-plugin-babel":"^3.0.2","rollup-plugin-commonjs":"^8.2.6","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-transform-runtime":"^6.23.0","babel-plugin-transform-class-properties":"^6.24.1"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter-1.2.0.tgz_1517374893911_0.36072376230731606","host":"s3://npm-registry-packages"}},"1.2.1":{"name":"resource-counter","version":"1.2.1","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@1.2.1","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"44c47a005f7d2b44033b519b1f456ef1ab3d079f","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-1.2.1.tgz","integrity":"sha512-fmpA2mQavTvlXSRqQw1FxJwwSY7r85nidOrgMmEhERax0IBU3RhwXU94nADTWs6RnvbNL73D71CzkaV1elLEiQ==","signatures":[{"sig":"MEUCIQCb+l8aukjj/6PeoOyUb3poh9+m9qZjfsnNAU/HQ4MLPgIge3hrYNhmWDg66Q9QgJt1oNQEg7A+1HcGWux5rQs9+bU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/Counter.cjs.js","module":"dist/Counter.es.js","browser":"dist/Counter-browser.js","engines":{"node":">=6.4.0"},"gitHead":"95083a70e4c303e2501f5c0162ec9320bf543ec5","scripts":{"doc":"documentation build ./lib/** -f html -o ./doc","test":"ava -v","build":"npm test && npm run doc && npm run rollup && npm run dos2unix","rollup":"rollup --config","dos2unix":"dos2unix dist/*"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"5.4.2","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"8.7.0","dependencies":{"bitset.js":"^4.0.1","babel-runtime":"^6.26.0"},"devDependencies":{"ava":"^0.19.1","rollup":"^0.51.5","babel-cli":"^6.26.0","documentation":"^5.3.3","babel-register":"^6.26.0","babel-preset-env":"^1.6.1","babel-preset-flow":"^6.23.0","rollup-plugin-babel":"^3.0.2","rollup-plugin-commonjs":"^8.2.6","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-transform-runtime":"^6.23.0","babel-plugin-transform-class-properties":"^6.24.1"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter-1.2.1.tgz_1517374987130_0.7209223131649196","host":"s3://npm-registry-packages"}},"1.2.2":{"name":"resource-counter","version":"1.2.2","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@1.2.2","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"7a050784a829a28d733129909bd492fe0b1a99c7","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-1.2.2.tgz","integrity":"sha512-9PJyT5BOBlcJcKVoWuEie4LUfrnx8+yZdQ3bWqF0kqX3wLzi9ApMEBrQ84YbKo+MLtDyjgK1yyV/o26Z9Y8Kpg==","signatures":[{"sig":"MEUCIBo7+wQwGdNhkJA7gqxpK8yvrDnWoE3Sck9Rgj66VFguAiEAnr3IzgE3Xk53KVJhZKOvI0+HFEs75dtv9VSgZljQWfw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/index.node.cjs.js","module":"dist/index.node.es.js","browser":"dist/index.browser.umd.js","engines":{"node":">=6.4.0"},"gitHead":"3457a688f3be15083e449fbe8c0b581b148a64b3","scripts":{"doc":"documentation build ./lib/** -f html -o ./doc","test":"ava -v","build":"npm test && npm run doc && npm run rollup && npm run dos2unix","rollup":"rollup --config","dos2unix":"dos2unix dist/*"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"5.4.2","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"8.7.0","dependencies":{"bitset.js":"^4.0.1","babel-runtime":"^6.26.0"},"devDependencies":{"ava":"^0.19.1","rollup":"^0.51.5","babel-cli":"^6.26.0","documentation":"^5.3.3","babel-register":"^6.26.0","babel-preset-env":"^1.6.1","babel-preset-flow":"^6.23.0","rollup-plugin-babel":"^3.0.2","rollup-plugin-commonjs":"^8.2.6","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-transform-runtime":"^6.23.0","babel-plugin-transform-class-properties":"^6.24.1"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter-1.2.2.tgz_1517375201041_0.07916136691346765","host":"s3://npm-registry-packages"}},"1.2.3":{"name":"resource-counter","version":"1.2.3","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@1.2.3","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"6d1e2a46098db6fa23602a630441590bc5f0cbbf","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-1.2.3.tgz","integrity":"sha512-JrMeTJPJSt/md24FxnB7s1Io2vq3CijsnBtJB93Y0XvlPg8GF1k3Pdm4VRGDLvrmLDEjZ/vjV8S0nMhJ2q2MIA==","signatures":[{"sig":"MEYCIQCr1fY4YLWzYBDg7hSXQ7qnhiEjJKZNEA2yX1qL2K+yxgIhAOwWUP1rLmBaPsji5L4IHYkr022Gjg/eAqbg9Ah5I3X6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/index.node.cjs.js","module":"dist/index.node.es.js","browser":"dist/index.browser.umd.js","engines":{"node":">=6.4.0"},"gitHead":"a39b39b9e52ad6e65fb1f3b7b600310b45dd044f","scripts":{"doc":"documentation build ./lib/** -f html -o ./doc","test":"ava -v","build":"npm test && npm run doc && npm run rollup && npm run dos2unix","rollup":"rollup --config","dos2unix":"dos2unix dist/*"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"5.4.2","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"8.7.0","dependencies":{"bitset.js":"^4.0.1","babel-runtime":"^6.26.0"},"devDependencies":{"ava":"^0.19.1","rollup":"^0.51.5","babel-cli":"^6.26.0","documentation":"^5.3.5","babel-register":"^6.26.0","babel-preset-env":"^1.6.1","babel-preset-flow":"^6.23.0","rollup-plugin-babel":"^3.0.2","rollup-plugin-commonjs":"^8.2.6","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-transform-runtime":"^6.23.0","babel-plugin-transform-class-properties":"^6.24.1"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter-1.2.3.tgz_1517552672446_0.1490166997537017","host":"s3://npm-registry-packages"}},"1.2.4":{"name":"resource-counter","version":"1.2.4","keywords":["counter","resource"],"author":{"name":"Roger Qiu"},"license":"Apache-2.0","_id":"resource-counter@1.2.4","maintainers":[{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"}],"homepage":"https://github.com/MatrixAI/js-resource-counter#readme","bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"ava":{"babel":"inherit","require":"babel-register"},"dist":{"shasum":"d38a07a0c18dd90a3658afeb92cc6ec818ae6eb3","tarball":"https://registry.npmjs.org/resource-counter/-/resource-counter-1.2.4.tgz","fileCount":12,"integrity":"sha512-DGJChvE5r4smqPE+xYNv9r1u/I9cCfRR5yfm7D6EQckdKqMyVpJ5z0s40yn0EM0puFxHg6mPORrQLQdEbJ/RnQ==","signatures":[{"sig":"MEYCIQDCSBdWl77PGJ4up/rJhTSRF1uWELowu4sKj709L0JxYQIhALp/0Ziev7MibL3ASBOvN9GKhe7P1KMDoRgAV8PdP9Bh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171972,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa+XYBCRA9TVsSAnZWagAAVjEQAKKLQmxdzx2+GaG4t2Xy\ngmwcgLjuleu0NpdwTeENiU2skfopNP/IwvqVbI5c0mx8zoMhuavLZpkhoXfb\nLEcuO0MqA8tTdLsX2WmFJDb7vTQ9W6OzbLxjzGPGeKaiPSDcAWdn8r8WxQPq\nl9h5SEexp4zfSni/EbAX9bSG8O4K1ZN/MGTb6C4IaDOUhd81sEfsX4mUST6/\neImzOQaGxzqd0MqaeXPfjhQimaSRyGhUTp7ldUzS9Lha6eW1tFNGwXNAUEbR\ns12LLVWYQjFBDD/ih1TLTzFOSou4G5zvIZJ8HqZLmBvPMGlVkaYKNCRy10Fb\nZEnBefbuuqTBZpXYu0cZ+v1sDfyc8pVSjNvSZWW3uqAGK3EKh7gDFenduuDZ\niVzPYl7vsgjMAXWwT+NVkyg3fCPEcL7rolDhB/2Bk/8zdxTH381+9I5EB2vL\n9GJ/yNBKiR0+DKagdqnqn4X+Dx7YyItrdotWZ0BkzJZYoHK4m6eShAP4ky61\ny7OZLd9jjARBi3dpDc3JrSra7QgNW7rkZZxQvs/pvBKRuyw1NsZGtBXWamvn\nLxdjs2uDS3wZ/NI6/MbP2ANincDCPcabw3+XSJ6Yy2K88TlyoD7HxKI6XxkB\n3e9xOHnF30HPc7ZAWpQpkLMFEc0+e1PjhXqWprUwbA5N2Rp5fqNTTYIlJWEH\nBiQ9\r\n=mVQU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.node.cjs.js","module":"dist/index.node.es.js","browser":"dist/index.browser.umd.js","engines":{"node":">=6.4.0"},"gitHead":"21282a2a458708c47f0ed31a36877fcbc3fe28cc","scripts":{"doc":"documentation build ./lib/** -f html -o ./doc","test":"ava -v","build":"npm test && npm run doc && npm run rollup && npm run dos2unix","rollup":"rollup --config","dos2unix":"dos2unix dist/*"},"_npmUser":{"name":"cmcdragonkai","email":"roger.qiu@polyhack.io"},"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"_npmVersion":"5.4.2","description":"Sequentially Allocatable and Deallocatable Resource Counter","directories":{},"_nodeVersion":"8.7.0","dependencies":{"bitset":"^5.0.3","babel-runtime":"^6.26.0"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^0.19.1","rollup":"^0.51.5","babel-cli":"^6.26.0","documentation":"^5.3.5","babel-register":"^6.26.0","babel-preset-env":"^1.6.1","babel-preset-flow":"^6.23.0","rollup-plugin-babel":"^3.0.2","rollup-plugin-commonjs":"^8.2.6","rollup-plugin-node-resolve":"^3.0.0","babel-plugin-transform-runtime":"^6.23.0","babel-plugin-transform-class-properties":"^6.24.1"},"_npmOperationalInternal":{"tmp":"tmp/resource-counter_1.2.4_1526298111044_0.14927617098310408","host":"s3://npm-registry-packages"}}},"time":{"created":"2017-06-22T08:41:22.521Z","modified":"2025-08-26T06:23:31.218Z","0.0.1":"2017-06-22T08:41:22.521Z","0.1.0":"2017-08-29T09:28:59.802Z","0.2.0":"2017-08-29T10:06:58.087Z","0.3.0":"2017-10-01T09:11:41.775Z","0.3.1":"2017-11-10T07:00:26.295Z","1.0.0":"2018-01-25T10:37:21.711Z","1.1.0":"2018-01-25T11:11:56.587Z","1.1.1":"2018-01-25T11:16:54.186Z","1.2.0":"2018-01-31T05:01:34.096Z","1.2.1":"2018-01-31T05:03:07.263Z","1.2.2":"2018-01-31T05:06:41.139Z","1.2.3":"2018-02-02T06:24:32.518Z","1.2.4":"2018-05-14T11:41:51.233Z"},"bugs":{"url":"https://github.com/MatrixAI/js-resource-counter/issues"},"author":{"name":"Roger Qiu"},"license":"Apache-2.0","homepage":"https://github.com/MatrixAI/js-resource-counter#readme","keywords":["counter","resource"],"repository":{"url":"git+https://github.com/MatrixAI/js-resource-counter.git","type":"git"},"description":"Sequentially Allocatable and Deallocatable Resource Counter","maintainers":[{"email":"roger.qiu@polyhack.io","name":"cmcdragonkai"},{"email":"enquiry@matrix.ai","name":"matrixai-bot"}],"readme":"# js-resource-counter\n\nSequentially Allocatable and Deallocatable Resource Counter written in JavaScript. It is useful for tracking resource usage such as inodes and file descriptors. The resource counter is backed by a new lazy recursive perfectly balanced dynamically growing and shrinking fully-persistent bitmap tree data structure. This allows logarithmic allocation and deallocation performance. It's memory usage is better than the alternative deallocated stack + counter method.\n\nBasic Usage\n------------\n\n```sh\nnpm install --save 'resource-counter';\n```\n\n```js\nimport Counter from 'resource-counter';\n\nlet c = new Counter;\nlet first = c.allocate(); // 1\nlet second = c.allocate(); // 2\nlet third = c.allocate(); // 3\nlet fourth = c.allocate(); // 4\nc.deallocate(second); // true\nc.deallocate(third); // true\nconsole.log(c.allocate() === second); // true\nconsole.log(c.allocate() === third); // true\nconsole.log(c.allocate() === (fourth + 1)); // true\n\n// you can also explicitly set a specific number\n// and all subsequent allocations are still sequential\n// explicitly allocating number returns a \"changed\" boolean\nc.allocate(100); // true\nc.allocate(100); // false\n\n// you can check whether a number was allocated or not\nc.check(100); // false\n```\n\nThere is also an alternate `CounterImmutable` that gives a fully-persistent counter using structure sharing by path-copying strategy.\n\n```js\nimport { CounterImmutable } from 'resource-counter';\n\n// c is being reassigned on every modification\n// however each intermediate c can be used\n// if you do use them, then you will now have diverging cs\nlet c = new CounterImmutable;\nlet first, second, third, fourth;\n[first, c] = c.allocate();\n[second, c] = c.allocate();\n[third, c] = c.allocate();\n[fourth, c] = c.allocate();\n[, c] = c.deallocate(second);\n[, c] = c.deallocate(third);\nlet first_, second_, fifth_;\n[first_, c] = c.allocate();\n[second_, c] = c.allocate();\n[fifth_, c] = c.allocate();\nconsole.log(first_ === second); // true\nconsole.log(second_ === third); // true\nconsole.log(fifth_ === (fourth + 1)); // true\n\n// you can also perform a transaction\nc = c.transaction((ct) => {\n  const number = ct.allocate();\n  ct.allocate();\n  ct.deallocate(number);\n  console.log(number); // 5\n});\n```\n\nThis can be useful if you need to combine `CounterImmutable` with other fully-persistent data structures to create composite data structures.\n\nDocumentation\n--------------\n\nDocumentation is located in the `doc` folder. You can also view the [rendered HTML](http://cdn.rawgit.com/MatrixAI/js-resource-counter/8a6734c/doc/index.html).\n\nPerformance behaviour is lazy memory allocation on counter allocation (for both balanced tree growth and explicit counter allocation). This laziness means intermediate tree nodes won't be allocated when explicitly allocating a counter that has intermediate values. For example allocating only 0 and 500, tree nodes won't be created eagerly in anticipation for counter values 1 to 499.\n\nBy default both `Counter` and `CounterImmutable` will lazily grow and shrink the tree as necessary. However shrinking adds extra performance overhead for the benefit of more tighter memory usage. If you expect to always use the same set of numbers for allocation and deallocation, it will be faster if you disable shrinking. You can do this by passing the `shrink` parameter as `false`. See the documentation for more.\n\nDevelopment\n------------\n\nTo build this package for release:\n\n```\nnpm run build\n```\n\nIt will run tests, generate documentation and output multiple targets. One for browsers and one for nodejs. See `rollup.config.js` to see the target specification.\n\nIf your bundler is aware of the module field in `package.json`, you'll get the ES6 module directly.\n\nOnce you've updated the package run this:\n\n```\nnpm version <update_type>\nnpm publish\n```\n","readmeFilename":"README.md"}