System.XDG.Internal
getDataHome :: XDGEnv (Path Abs Dir) Source #
getConfigHome :: XDGEnv (Path Abs Dir) Source #
getStateHome :: XDGEnv (Path Abs Dir) Source #
getCacheHome :: XDGEnv (Path Abs Dir) Source #
getRuntimeDir :: XDGEnv (Path Abs Dir) Source #
getDataDirs :: XDGEnv [Path Abs Dir] Source #
readDataFile :: FilePath -> '[Env, Error XDGError, ReadFile a] >@> a Source #
readData :: Monoid b => (a -> b) -> FilePath -> XDGReader a b Source #
getConfigDirs :: XDGEnv [Path Abs Dir] Source #
readConfigFile :: FilePath -> '[Env, Error XDGError, ReadFile a] >@> a Source #
readConfig :: Monoid b => (a -> b) -> FilePath -> XDGReader a b Source #
readStateFile :: FilePath -> XDGReader a a Source #
readCacheFile :: FilePath -> XDGReader a a Source #
readRuntimeFile :: FilePath -> XDGReader a a Source #
type XDGEnv a = '[Env, Error XDGError] >@> a Source #
type XDGReader a b = '[Env, Error XDGError, ReadFile a] >@> b Source #
requireEnv :: String -> XDGEnv String Source #
requireAbsDir :: FilePath -> Error XDGError -@> Path Abs Dir Source #
requireRelFile :: FilePath -> Error XDGError -@> Path Rel File Source #
getEnvHome :: String -> Path Rel Dir -> XDGEnv (Path Abs Dir) Source #
getEnvDirs :: XDGEnv (Path Abs Dir) -> String -> [String] -> XDGEnv [Path Abs Dir] Source #
readFileFromDir :: XDGEnv (Path Abs Dir) -> FilePath -> XDGReader a a Source #
readFileFromDirs :: XDGEnv [Path Abs Dir] -> FilePath -> XDGReader a a Source #
appendEnvFiles :: Monoid b => XDGEnv [Path Abs Dir] -> (a -> b) -> FilePath -> XDGReader a b Source #
maybeRead :: XDGReader a a -> XDGReader a (Maybe a) Source #
runXDGIO :: XDGReader ByteString a -> IO a Source #