https://github.com/nodef/map-cached
Fully Cached interface for a Promised Map.
https://github.com/nodef/map-cached
Last synced: about 1 month ago
JSON representation
Fully Cached interface for a Promised Map.
- Host: GitHub
- URL: https://github.com/nodef/map-cached
- Owner: nodef
- License: mit
- Created: 2017-10-16T19:45:38.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-04-24T00:22:01.000Z (about 8 years ago)
- Last Synced: 2025-01-26T09:15:52.678Z (over 1 year ago)
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/map-cached
- Size: 8.79 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# map-cached
[](https://nodei.co/npm/map-cached/)
Fully Cached interface for a Promised Map.
```javascript
var MapCached = require('map-cached');
// MapCached(, );
// source: a promised map, like MapPg (map-pg)
// set-cache: size of set cache, flushed when full or manually
```
```javascript
var MapPromised = require('map-promised');
var MapCached = require('map-cached');
var mapp = new MapPromised(new Map());
var mapc = new MapCached(mapp);
mapp.setup().then(() => {
mapp.set('a', 1);
}).then(() => {
return mapc.setup();
}).then(() => {
mapc.set('b', 2);
mapc.size; // 2
mapc.get('b'); // 2
mapc.get('a'); // 1
mapc.delete('b');
mapc.size; // 1
mapc.set('c', 3);
mapc.set('d', 4);
mapc.size; // 3
mapc.flush().then(() => {
return mapp.size;
}).then((ans) => ans); // 3
// ...
});
```
