@@ -1,46 +0,0 @@
1−{-# OPTIONS_GHC -Wall #-}
2−module Elm.PerUserCache
3− ( getPackageRoot
4− , getReplRoot
5− , getElmHome
6− )
7− where
8−
9−import qualified System.Directory as Dir
10−import qualified System.Environment as Env
11−import System.FilePath ((</>))
12−
13−import qualified Elm.Version as V
14−
15−
16−
17−-- ROOTS
18−
19−
20−getPackageRoot :: IO FilePath
21−getPackageRoot =
22− getRoot "package"
23−
24−
25−getReplRoot :: IO FilePath
26−getReplRoot =
27− getRoot "repl"
28−
29−
30−getRoot :: FilePath -> IO FilePath
31−getRoot projectName =
32− do home <- getElmHome
33− let root = home </> version </> projectName
34− Dir.createDirectoryIfMissing True root
35− return root
36−
37−
38−version :: FilePath
39−version =
40− V.toChars V.compiler
41−
42−
43−getElmHome :: IO FilePath
44−getElmHome =
45− do maybeHome <- Env.lookupEnv "ELM_HOME"
46− maybe (Dir.getAppUserDataDirectory "elm") return maybeHome