Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Annotation of /sml/trunk/src/cml/src/IO/cml-text-io-sig.sml
ViewVC logotype

Annotation of /sml/trunk/src/cml/src/IO/cml-text-io-sig.sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3 - (view) (download)
Original Path: sml/branches/SMLNJ/src/cml/src/IO/cml-text-io-sig.sml

1 : monnier 2 (* cml-text-io-sig.sml
2 :     *
3 :     * COPYRIGHT (c) 1996 AT&T Research.
4 :     * COPYRIGHT (c) 1991 John H. Reppy.
5 :     *
6 :     * This extends the SMLBL TEXT_IO interface with event-valued operations.
7 :     *)
8 :    
9 :     signature CML_TEXT_IO =
10 :     sig
11 :     (* include TEXT_IO *)
12 :     type vector = string
13 :     type elem = char
14 :    
15 :     type instream
16 :     type outstream
17 :    
18 :     val input : instream -> vector
19 :     val input1 : instream -> elem option
20 :     val inputN : (instream * int) -> vector
21 :     val inputAll : instream -> vector
22 :     val canInput : (instream * int) -> int option
23 :     val lookahead : instream -> elem option
24 :     val closeIn : instream -> unit
25 :     val endOfStream : instream -> bool
26 :    
27 :     val output : (outstream * vector) -> unit
28 :     val output1 : (outstream * elem) -> unit
29 :     val flushOut : outstream -> unit
30 :     val closeOut : outstream -> unit
31 :    
32 :     structure StreamIO : CML_TEXT_STREAM_IO
33 :     where type reader = TextPrimIO.reader
34 :     where type writer = TextPrimIO.writer
35 :     where type pos = TextPrimIO.pos
36 :     where type vector = string
37 :     where type elem = char
38 :    
39 :     val getPosIn : instream -> StreamIO.in_pos
40 :     val setPosIn : (instream * StreamIO.in_pos) -> unit
41 :     val mkInstream : StreamIO.instream -> instream
42 :     val getInstream : instream -> StreamIO.instream
43 :     val setInstream : (instream * StreamIO.instream) -> unit
44 :    
45 :     val getPosOut : outstream -> StreamIO.out_pos
46 :     val setPosOut : (outstream * StreamIO.out_pos) -> unit
47 :     val mkOutstream : StreamIO.outstream -> outstream
48 :     val getOutstream : outstream -> StreamIO.outstream
49 :     val setOutstream : (outstream * StreamIO.outstream) -> unit
50 :    
51 :     val inputLine : instream -> string
52 :     val outputSubstr : (outstream * substring) -> unit
53 :    
54 :     val openIn : string -> instream
55 :     val openString : string -> instream
56 :     val openOut : string -> outstream
57 :     val openAppend : string -> outstream
58 :    
59 :     val stdIn : instream
60 :     val stdOut : outstream
61 :     val stdErr : outstream
62 :    
63 :     val input1Evt : instream -> elem option CML.event
64 :     val inputNEvt : (instream * int) -> vector CML.event
65 :     val inputEvt : instream -> vector CML.event
66 :     val inputAllEvt : instream -> vector CML.event
67 :    
68 :     val openChanIn : string CML.chan -> instream
69 :     val openChanOut : string CML.chan -> outstream
70 :    
71 :     val print : string -> unit
72 :    
73 :     end;

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0