module Tonalude.Prelude.IO
( withLazyFile
, readFileBinary
, writeFileBinary
, readFileUtf8
, writeFileUtf8
, hPutBuilder
) where
import RIO hiding
( withLazyFile
, readFileBinary
, writeFileBinary
, readFileUtf8
, writeFileUtf8
, hPutBuilder
)
import qualified RIO
import qualified Data.ByteString as B ()
import qualified Data.ByteString.Lazy as BL
withLazyFile :: FilePath -> (BL.ByteString -> RIO env a) -> RIO env a
withLazyFile :: forall env a. FilePath -> (ByteString -> RIO env a) -> RIO env a
withLazyFile = forall (m :: * -> *) a.
MonadUnliftIO m =>
FilePath -> (ByteString -> m a) -> m a
RIO.withLazyFile
writeFileUtf8 :: FilePath -> Text -> RIO env ()
writeFileUtf8 :: forall env. FilePath -> Text -> RIO env ()
writeFileUtf8 = forall (m :: * -> *). MonadIO m => FilePath -> Text -> m ()
RIO.writeFileUtf8
hPutBuilder :: Handle -> Builder -> RIO env ()
hPutBuilder :: forall env. Handle -> Builder -> RIO env ()
hPutBuilder = forall (m :: * -> *). MonadIO m => Handle -> Builder -> m ()
RIO.hPutBuilder
readFileBinary :: FilePath -> RIO env ByteString
readFileBinary :: forall env. FilePath -> RIO env ByteString
readFileBinary = forall (m :: * -> *). MonadIO m => FilePath -> m ByteString
RIO.readFileBinary
writeFileBinary :: FilePath -> ByteString -> RIO env ()
writeFileBinary :: forall env. FilePath -> ByteString -> RIO env ()
writeFileBinary = forall (m :: * -> *). MonadIO m => FilePath -> ByteString -> m ()
RIO.writeFileBinary
readFileUtf8 :: FilePath -> RIO env Text
readFileUtf8 :: forall env. FilePath -> RIO env Text
readFileUtf8 = forall (m :: * -> *). MonadIO m => FilePath -> m Text
RIO.readFileUtf8