da26c77143c07406fef7eb2cb915223ef731a149
[ghc-hetmet.git] / ghc / lib / std / cbits / PrelIOUtils.h
1 /* 
2  * (c) The GRASP/AQUA Project, Glasgow University, 1994-
3  *
4  * IO / Handle support.
5  */
6 #ifndef __PRELIOUTILS_H__
7 #define __PRELIOUTILS_H__
8
9 /* PrelIOUtils.c */
10 extern HsBool prel_supportsTextMode();
11 extern HsInt  prel_bufsiz();
12 extern HsInt prel_seek_cur();
13 extern HsInt prel_seek_set();
14 extern HsInt prel_seek_end();
15
16 extern HsInt prel_o_binary();
17
18 extern HsInt prel_setmode(HsInt fd, HsBool isBin);
19
20 extern HsInt prel_PrelHandle_write(HsInt fd, HsBool isSock, HsAddr ptr, HsInt off, int sz);
21 extern HsInt prel_PrelHandle_read(HsInt fd, HsBool isSock, HsAddr ptr, HsInt off, int sz);
22
23 extern void* prel_PrelIO_memcpy(char *dst, HsInt dst_off, const char *src, size_t sz);
24
25 /* writeError.c */
26 extern void writeErrString__(HsAddr msg_hdr, HsAddr msg, HsInt len);
27
28 extern int s_isreg_PrelPosix_wrap(int);
29 extern int s_isdir_PrelPosix_wrap(int);
30 extern int s_isfifo_PrelPosix_wrap(int);
31 extern int s_isblk_PrelPosix_wrap(int);
32 extern int s_ischr_PrelPosix_wrap(int);
33 #ifndef mingw32_TARGET_OS
34 extern int s_issock_PrelPosix_wrap(int);
35 extern void sigemptyset_PrelPosix_wrap(sigset_t *set);
36 #endif
37
38
39 #endif /* __PRELIOUTILS_H__ */
40