diff options
Diffstat (limited to 'src/server/Cache.hs')
| -rw-r--r-- | src/server/Cache.hs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/server/Cache.hs b/src/server/Cache.hs index bde07745a..c845bb013 100644 --- a/src/server/Cache.hs +++ b/src/server/Cache.hs @@ -1,4 +1,4 @@ -module Cache (Cache,newCache,flushCache,readCache,readCache') where +module Cache (Cache,newCache,flushCache,listCache,readCache,readCache') where import Control.Concurrent.MVar import Data.Map (Map) @@ -22,6 +22,9 @@ flushCache :: Cache a -> IO () flushCache c = do modifyMVar_ (cacheObjects c) (const (return Map.empty)) performGC +listCache :: Cache a -> IO [FilePath] +listCache = fmap Map.keys . readMVar . cacheObjects + readCache :: Cache a -> FilePath -> IO a readCache c file = snd `fmap` readCache' c file |
