module Agda.Utils.IO
( readBinaryFile'
, readTextFile
, module System.IO.UTF8
) where
import System.IO.UTF8
import qualified System.IO.UTF8 as UTF8
import qualified System.IO as IO
import qualified Data.ByteString.Lazy as BS
import Control.Applicative
import Agda.Utils.Unicode
readBinaryFile' :: FilePath -> IO (BS.ByteString, IO ())
readBinaryFile' file = do
h <- IO.openBinaryFile file IO.ReadMode
s <- BS.hGetContents h
return (s, IO.hClose h)
readTextFile :: FilePath -> IO String
readTextFile file = convertLineEndings <$> UTF8.readFile file