pessimism
A fast and compact HAMT-based KV-Cache with optimistic entries
pessimism
is a fast and compact KV-Cache primarily built for @urql/exchange-graphcache
.
It's a functional and immutable HAMT structure, which increases structural sharing, while
keeping memory usage compact. It supports optimistic entries, which can be invalidated in a single go.
Usage
This library works with both TypeScript and BuckleScript (Reason/OCaml).
yarn add pessimism# or npm install --save pessimism
The basic methods support making a map and setting, getting, and removing entries:
; let map = Map;Map; // "value" map = Map;Map; // undefined
Optimistic entries can be set using setOptimistic
and cleared using clearOptimistic
:
; let map = Map;// Set an optimistic entry with the ID 1map = Map; Map; // "temp" which is the optimistic value // Clear all optimistic entries with ID 1map = Map;Map; // "value" which was the original value