diff options
Diffstat (limited to 'packages/code/hubris/src/Hubris/Collections/LRUCache.hs')
| -rw-r--r-- | packages/code/hubris/src/Hubris/Collections/LRUCache.hs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/packages/code/hubris/src/Hubris/Collections/LRUCache.hs b/packages/code/hubris/src/Hubris/Collections/LRUCache.hs new file mode 100644 index 0000000..995512d --- /dev/null +++ b/packages/code/hubris/src/Hubris/Collections/LRUCache.hs @@ -0,0 +1,16 @@ +module Hubris.Collections.LRUCache + ( empty + , insert + ) where + +import qualified Data.Map as M +import Data.Monoid (Sum (..)) + +type LRUCache a = M.Map a (Sum Int) + +empty :: LRUCache a +empty = M.empty + +insert :: a -> LRUCache a -> LRUCache a +insert = M.alter (fmap $ const 0) + where |
