module System.AtomicWrite.Writer.ByteString (atomicWriteFile, atomicWriteFileWithMode) where
import System.AtomicWrite.Internal (atomicWriteFileMaybeModeText)
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 = Maybe FileMode -> FilePath -> ByteString -> IO ()
atomicWriteFileMaybeMode (Maybe FileMode -> FilePath -> ByteString -> IO ())
-> (FileMode -> Maybe FileMode)
-> FileMode
-> FilePath
-> ByteString
-> IO ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. FileMode -> Maybe FileMode
forall a. a -> Maybe a
Just
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 ()
atomicWriteFileMaybeModeText Maybe FileMode
mmode FilePath
path Handle -> ByteString -> IO ()
hPutStr