-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Atomically write to a file -- -- Atomically write to a file on POSIX-compliant systems while preserving -- permissions. -- -- On most Unix systems, mv is an atomic operation. This makes it -- simple to write to a file atomically just by using the mv operation. -- However, this will destroy the permissions on the original file. This -- library does the following to preserve permissions while atomically -- writing to a file: -- -- -- -- This way, when the file is mv'ed into place, the permissions -- will be the ones held by the original file. -- -- This library is based on similar implementations found in common -- libraries in Ruby and Python: -- -- -- -- To use `atomic-write`, import the module corresponding to the type you -- wish to write atomically, e.g., to write a (strict) ByteString -- atomically: -- --
--   import System.AtomicWrite.Writer.ByteString
--   
-- -- Then you can use the atomicWrite function that accepts a -- FilePath and a ByteString, e.g.: -- --
--   atomicWrite myFilePath myByteString
--   
@package atomic-write @version 0.2.0.5 module System.AtomicWrite.Writer.ByteStringBuilder -- | Creates a file atomically on POSIX-compliant systems while preserving -- permissions. atomicWriteFile :: FilePath -> Builder -> IO () module System.AtomicWrite.Writer.LazyByteString -- | Creates a file atomically on POSIX-compliant systems while preserving -- permissions. atomicWriteFile :: FilePath -> ByteString -> IO () module System.AtomicWrite.Writer.String -- | Creates a file atomically on POSIX-compliant systems while preserving -- permissions. atomicWriteFile :: FilePath -> String -> IO () -- | A general version of atomicWriteFile atomicWithFile :: FilePath -> (Handle -> IO ()) -> IO () module System.AtomicWrite.Writer.Text -- | Creates a file atomically on POSIX-compliant systems while preserving -- permissions. atomicWriteFile :: FilePath -> Text -> IO () module System.AtomicWrite.Writer.ByteString -- | Creates a file atomically on POSIX-compliant systems while preserving -- permissions. atomicWriteFile :: FilePath -> ByteString -> IO ()