module System.AtomicWrite.Writer.ByteString.Binary (atomicWriteFile, atomicWriteFileWithMode) where
import System.AtomicWrite.Internal (atomicWriteFileMaybeModeBinary)
import System.Posix.Types (FileMode)
import Data.ByteString (ByteString, hPutStr)
atomicWriteFile ::
FilePath
-> ByteString
-> IO ()
atomicWriteFile :: FilePath -> ByteString -> IO ()
atomicWriteFile = Maybe FileMode -> FilePath -> ByteString -> IO ()
atomicWriteFileMaybeMode Maybe FileMode
forall a. Maybe a
Nothing
atomicWriteFileWithMode ::
FileMode
-> FilePath
-> ByteString
-> IO ()
atomicWriteFileWithMode :: FileMode -> FilePath -> ByteString -> IO ()
atomicWriteFileWithMode FileMode
mode =
Maybe FileMode -> FilePath -> ByteString -> IO ()
atomicWriteFileMaybeMode (Maybe FileMode -> FilePath -> ByteString -> IO ())
-> Maybe FileMode -> FilePath -> ByteString -> IO ()
forall a b. (a -> b) -> a -> b
$ FileMode -> Maybe FileMode
forall a. a -> Maybe a
Just FileMode
mode
atomicWriteFileMaybeMode ::
Maybe FileMode
-> FilePath
-> ByteString
-> IO ()
atomicWriteFileMaybeMode :: Maybe FileMode -> FilePath -> ByteString -> IO ()
atomicWriteFileMaybeMode Maybe FileMode
mmode FilePath
path = Maybe FileMode
-> FilePath
-> (Handle -> ByteString -> IO ())
-> ByteString
-> IO ()
forall a.
Maybe FileMode -> FilePath -> (Handle -> a -> IO ()) -> a -> IO ()
atomicWriteFileMaybeModeBinary Maybe FileMode
mmode FilePath
path Handle -> ByteString -> IO ()
hPutStr