@@ -0,0 +1,39 @@
1+diff -ru orig/System/IO/Temp.hs new/System/IO/Temp.hs
2+--- orig/System/IO/Temp.hs 2014-05-11 15:04:23.887266736 +0300
3++++ new/System/IO/Temp.hs 2014-05-11 15:04:23.000000000 +0300
6+ -- Behaves exactly the same as 'withTempFile', except that the parent temporary directory
7+ -- will be that returned by 'getTemporaryDirectory'.
8+-withSystemTempFile :: (MonadIO m, MonadCatch m) =>
9++withSystemTempFile :: (MonadIO m, MonadMask m) =>
10+ String -- ^ File name template. See 'openTempFile'.
11+ -> (FilePath -> Handle -> m a) -- ^ Callback that can use the file
15+ -- Behaves exactly the same as 'withTempDirectory', except that the parent temporary directory
16+ -- will be that returned by 'getTemporaryDirectory'.
17+-withSystemTempDirectory :: (MonadIO m, MonadCatch m) =>
18++withSystemTempDirectory :: (MonadIO m, MonadMask m) =>
19+ String -- ^ Directory name template. See 'openTempFile'.
20+ -> (FilePath -> m a) -- ^ Callback that can use the directory
24+ -- The @tmpFlie@ will be file in the given directory, e.g.
26+-withTempFile :: (MonadIO m, MonadCatch m) =>
27++withTempFile :: (MonadIO m, MonadMask m) =>
28+ FilePath -- ^ Temp dir to create the file in
29+ -> String -- ^ File name template. See 'openTempFile'.
30+ -> (FilePath -> Handle -> m a) -- ^ Callback that can use the file
33+ -- The @tmpDir@ will be a new subdirectory of the given directory, e.g.
35+-withTempDirectory :: (MonadCatch m, MonadIO m) =>
36++withTempDirectory :: (MonadMask m, MonadIO m) =>
37+ FilePath -- ^ Temp directory to create the directory in
38+ -> String -- ^ Directory name template. See 'openTempFile'.
39+ -> (FilePath -> m a) -- ^ Callback that can use the directory