module IO ( Handle ,HandlePosn ,IOMode(ReadMode,WriteMode,AppendMode,ReadWriteMode) ,BufferMode(NoBuffering,LineBuffering,BlockBuffering) ,SeekMode(AbsoluteSeek,RelativeSeek,SeekFromEnd) ,stdin, stdout, stderr, hClose ,openFile, hFileSize, hIsEOF, isEOF ,hSetBuffering, hGetBuffering ,hFlush, hGetPosn, hSetPosn, hSeek ,hWaitForInput, hReady, hGetLine, hLookAhead ,hGetChar ,hGetContents, hPutChar, hPutStr, hPutStrLn, hPrint ,hIsOpen, hIsClosed, hIsReadable, hIsWritable, hIsSeekable ,isAlreadyExistsError, isDoesNotExistError ,isAlreadyInUseError, isFullError, isEOFError ,isIllegalOperation, isPermissionError, isUserError ,ioeGetErrorString, ioeGetHandle, ioeGetFileName ,try, bracket, bracket_ -- re-export PreludeIO things ,IO, FilePath, IOError, ioError, userError, catch, interact ,putChar, putStr, putStrLn, print, getChar, getLine, getContents ,readFile, writeFile, appendFile, readIO, readLn ,hGetFileName -- not standard Haskell'98 ,SocketType(..), openSocket -- not standard Haskell'98 ) where --import Ix import DHandle(Handle) import Eq_Handle import Show_Handle import PreludeBuiltin(stdin,stdout,stderr) import DHandlePosn import Eq_HandlePosn import Show_HandlePosn import IOMode import BufferMode import SeekMode import HClose import OpenFile import HFileSize import HIsEOF import IsEOF import HSetBuffering import HGetBuffering import HFlush import HGetPosn import HSetPosn import HSeek import HGetLine import HGetChar import HGetContents import HPutChar import HPutStr import HPutStrLn import HPrint import Try import Bracket import Bracket_ import IsIOErrors import IsEOFError import IsUserError import IoeGetErrorString import IoeGetHandle import IoeGetFileName import HGetFileName import OpenSocket import DSocket import NotDoneYet