io.h 646 B

12345678910111213141516171819202122232425262728293031
  1. /*
  2. * on Mac OS X, err is something else,
  3. * and assigning to it causes a bus error.
  4. * what a crappy linker.
  5. */
  6. #define err rc_err
  7. #define EOF (-1)
  8. #define NBUF 512
  9. struct io{
  10. int fd;
  11. char *bufp, *ebuf, *strp, buf[NBUF];
  12. };
  13. io *err;
  14. io *openfd(int), *openstr(void), *opencore(char *, int);
  15. int emptybuf(io*);
  16. void pchr(io*, int);
  17. int rchr(io*);
  18. void closeio(io*);
  19. void flush(io*);
  20. int fullbuf(io*, int);
  21. void pdec(io*, int);
  22. void poct(io*, unsigned);
  23. void pptr(io*, void*);
  24. void pquo(io*, char*);
  25. void pwrd(io*, char*);
  26. void pstr(io*, char*);
  27. void pcmd(io*, tree*);
  28. void pval(io*, word*);
  29. void pfnc(io*, thread*);
  30. void pfmt(io*, char*, ...);