summaryrefslogtreecommitdiff
path: root/compiler/GHC/Unit/Finder/Types.hs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/GHC/Unit/Finder/Types.hs')
-rw-r--r--compiler/GHC/Unit/Finder/Types.hs7
1 files changed, 6 insertions, 1 deletions
diff --git a/compiler/GHC/Unit/Finder/Types.hs b/compiler/GHC/Unit/Finder/Types.hs
index 06f4ea8aae..c48b7d9789 100644
--- a/compiler/GHC/Unit/Finder/Types.hs
+++ b/compiler/GHC/Unit/Finder/Types.hs
@@ -9,6 +9,8 @@ where
import GHC.Prelude
import GHC.Unit
import GHC.Unit.State
+import qualified Data.Map as M
+import GHC.Fingerprint
import Data.IORef
@@ -18,7 +20,10 @@ import Data.IORef
-- contents of this cache.
--
type FinderCacheState = InstalledModuleEnv InstalledFindResult
-newtype FinderCache = FinderCache (IORef FinderCacheState)
+type FileCacheState = M.Map FilePath Fingerprint
+data FinderCache = FinderCache { fcModuleCache :: (IORef FinderCacheState)
+ , fcFileCache :: (IORef FileCacheState)
+ }
data InstalledFindResult
= InstalledFound ModLocation InstalledModule