12 val canInput: instream * int -> int option
13 val closeIn: instream -> unit
14 val closeOut: outstream -> unit
15 val endOfStream: instream -> bool
16 val filePosIn: instream -> pos
17 val filePosOut: out_pos -> pos
18 val flushOut: outstream -> unit
19 val getBufferMode: outstream -> IO.buffer_mode
20 val getPosOut: outstream -> out_pos
21 val getReader: instream -> reader * vector
22 val getWriter: outstream -> writer * IO.buffer_mode
23 val input1: instream -> (elem * instream) option
24 val input: instream -> vector * instream
25 val inputAll: instream -> vector * instream
26 val inputN: instream * int -> vector * instream
27 val mkInstream: reader * vector -> instream
28 val mkOutstream: writer * IO.buffer_mode -> outstream
29 val output1: outstream * elem -> unit
30 val output: outstream * vector -> unit
31 val setBufferMode: outstream * IO.buffer_mode -> unit
32 val setPosOut: out_pos -> outstream
35 signature STREAM_IO_EXTRA =
45 val equalsInstream: t * instream -> bool
46 val make: instream -> t
49 val equalsIn: instream * instream -> bool
50 val equalsOut: outstream * outstream -> bool
51 val input1': instream -> elem option * instream
52 val inputLine: instream -> (vector * instream) option
53 val instreamReader: instream -> reader
54 val mkInstream': {bufferContents: (bool * vector) option,
56 reader: reader} -> instream
57 val mkOutstream': {bufferMode: IO.buffer_mode,
59 writer: writer} -> outstream
60 val outputSlice: outstream * vector_slice -> unit
61 val outstreamWriter: outstream -> writer
64 signature STREAM_IO_EXTRA_FILE =
66 include STREAM_IO_EXTRA
68 val inFd: instream -> Posix.IO.file_desc
69 val mkInstream'': {bufferContents: (bool * vector) option,
72 reader: reader} -> instream
73 val outFd: outstream -> Posix.IO.file_desc
74 val mkOutstream'': {bufferMode: IO.buffer_mode,
77 writer: writer} -> outstream