Import Upstream version 20180207
[hcoop/debian/mlton.git] / basis-library / libs / basis-1997 / io / bin-io.sig
1 signature BIN_IO_1997 =
2 sig
3 structure StreamIO: BIN_STREAM_IO_1997
4
5 type vector = StreamIO.vector
6 type elem = StreamIO.elem
7 type instream
8
9 val canInput: instream * int -> int option
10 val closeIn: instream -> unit
11 val endOfStream: instream -> bool
12 val getInstream: instream -> StreamIO.instream
13 val input1: instream -> elem option
14 val input: instream -> vector
15 val inputAll: instream -> vector
16 val inputN: instream * int -> vector
17 val lookahead: instream -> elem option
18 val mkInstream: StreamIO.instream -> instream
19 val openIn: string -> instream
20 (*
21 val scanStream:
22 ((Char.char, StreamIO.instream) StringCvt.reader
23 -> ('a, StreamIO.instream) StringCvt.reader)
24 -> instream -> 'a option
25 *)
26 val setInstream: (instream * StreamIO.instream) -> unit
27 (*
28 val getPosIn: instream -> StreamIO.in_pos
29 val setPosIn: (instream * StreamIO.in_pos) -> unit
30 *)
31
32 type outstream
33 val closeOut: outstream -> unit
34 val flushOut: outstream -> unit
35 val getOutstream: outstream -> StreamIO.outstream
36 val getPosOut: outstream -> StreamIO.out_pos
37 val mkOutstream: StreamIO.outstream -> outstream
38 val openAppend: string -> outstream
39 val openOut: string -> outstream
40 val output1: outstream * elem -> unit
41 val output: outstream * vector -> unit
42 val setOutstream: outstream * StreamIO.outstream -> unit
43 (*
44 val setPosOut: outstream * StreamIO.out_pos -> unit
45 *)
46 end