import Effectful
import Effectful.Cache
import Prelude hiding (lookup)
main :: IO ()
main = runEff . runCache Nothing $ do
insert "key" (42 :: Int)
v <- lookup @String @Int "key"
liftIO $ print vrunCache creates a fresh store; runCacheWith wraps an existing
Data.Cache.Cache so it can be shared with non-effectful code.
See effectful-data-cache-opentelemetry for OpenTelemetry instrumentation.
See effectful-data-cache-memcache for a memcached backend.
Requires just, stack, fourmolu 0.21.0.0 and hlint.
just build # build and test; memcache tests need: docker run -d -p 11211:11211 memcached:1.6
just fmt # format with fourmolu
just lint # lint with hlint
just docs # build Haddock tarballsReleasing needs HACKAGE_KEY set:
just candidate [pkgs...] # upload Hackage candidates
just release [pkgs...] # publish to Hackage