expiring-cache-map-0.0.5.4: General purpose simple caching.

Copyright(c) 2014 Edward L. Blake
LicenseBSD-style
MaintainerEdward L. Blake <edwardlblake@gmail.com>
Stabilityexperimental
Portabilityportable
Safe HaskellSafe-Inferred
LanguageHaskell98

Caching.ExpiringCacheMap.Internal.Types

Contents

Description

Types used by internal functions and as the opaque types exported by other modules, assume these type definitions to change from version to version.

Synopsis

Cache internals

newtype ECM a b s m k v Source

The type that encapsulates a cache map.

Constructors

ECM (b (CacheState s m k v), Maybe s -> k -> a (TimeUnits, (Maybe s, v)), a TimeUnits, ECMMapSize, ECMIncr, ECMULength, ECMULength, ECMEnterState a b s m k v, ECMReadState a b s m k v) 

newtype CacheState s m k v Source

The cache state.

Constructors

CacheState (Maybe s, m k (TimeUnits, TimeUnits, v), ECMMapSize, ([(k, ECMIncr)], ECMULength), ECMIncr) 

type ECMNewState a b s m k v = CacheState s m k v -> a (b (CacheState s m k v)) Source

type ECMEnterState a b s m k v = b (CacheState s m k v) -> (CacheState s m k v -> a (CacheState s m k v, v)) -> a v Source

type ECMReadState a b s m k v = b (CacheState s m k v) -> a (CacheState s m k v) Source