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/branches/SMLNJ/src/compiler/PervEnv/Posix/posix-tty.sig
ViewVC logotype

Annotation of /sml/branches/SMLNJ/src/compiler/PervEnv/Posix/posix-tty.sig

Parent Directory Parent Directory | Revision Log Revision Log


Revision 93 - (view) (download) (as text)

1 : monnier 93 (* posix-tty.sig
2 : monnier 16 *
3 :     * COPYRIGHT (c) 1995 AT&T Bell Laboratories.
4 :     *
5 :     * Signature for POSIX 1003.1 operations on terminal devices
6 :     *
7 :     *)
8 :    
9 :     signature POSIX_TTY =
10 :     sig
11 :    
12 :     eqtype pid (* process ID *)
13 :     eqtype file_desc (* file descriptor *)
14 :    
15 :     structure I :
16 :     sig
17 :     include POSIX_FLAGS
18 :    
19 :     val brkint : flags
20 :     val icrnl : flags
21 :     val ignbrk : flags
22 :     val igncr : flags
23 :     val ignpar : flags
24 :     val inlcr : flags
25 :     val inpck : flags
26 :     val istrip : flags
27 :     val ixoff : flags
28 :     val ixon : flags
29 :     val parmrk : flags
30 :     end
31 :    
32 :     structure O :
33 :     sig
34 :     include POSIX_FLAGS
35 :    
36 :     val opost : flags
37 :     end
38 :    
39 :     structure C :
40 :     sig
41 :     include POSIX_FLAGS
42 :    
43 :     val clocal : flags
44 :     val cread : flags
45 :     val csize : flags
46 :     val cs5 : flags
47 :     val cs6 : flags
48 :     val cs7 : flags
49 :     val cs8 : flags
50 :     val cstopb : flags
51 :     val hupcl : flags
52 :     val parenb : flags
53 :     val parodd : flags
54 :     end
55 :    
56 :     structure L :
57 :     sig
58 :     include POSIX_FLAGS
59 :    
60 :     val echo : flags
61 :     val echoe : flags
62 :     val echok : flags
63 :     val echonl : flags
64 :     val icanon : flags
65 :     val iexten : flags
66 :     val isig : flags
67 :     val noflsh : flags
68 :     val tostop : flags
69 :     end
70 :    
71 :     structure V :
72 :     sig
73 :     val eof : int
74 :     val eol : int
75 :     val erase : int
76 :     val intr : int
77 :     val kill : int
78 :     val min : int
79 :     val quit : int
80 :     val susp : int
81 :     val time : int
82 :     val start : int
83 :     val stop : int
84 :    
85 :     val nccs : int
86 :    
87 :     type cc
88 :    
89 :     val cc : (int * char) list -> cc
90 :     val update : (cc * (int * char) list) -> cc
91 :     val sub : (cc * int) -> char
92 :     end
93 :    
94 :     eqtype speed
95 :     val compareSpeed : speed * speed -> General.order
96 :     val speedToWord : speed -> SysWord.word
97 :     val wordToSpeed : SysWord.word -> speed
98 :     val b0 : speed
99 :     val b50 : speed
100 :     val b75 : speed
101 :     val b110 : speed
102 :     val b134 : speed
103 :     val b150 : speed
104 :     val b200 : speed
105 :     val b300 : speed
106 :     val b600 : speed
107 :     val b1200 : speed
108 :     val b1800 : speed
109 :     val b2400 : speed
110 :     val b4800 : speed
111 :     val b9600 : speed
112 :     val b19200 : speed
113 :     val b38400 : speed
114 :    
115 :     type termios
116 :    
117 :     val termios : { iflag : I.flags,
118 :     oflag : O.flags,
119 :     cflag : C.flags,
120 :     lflag : L.flags,
121 :     cc : V.cc,
122 :     ispeed : speed,
123 :     ospeed : speed } -> termios
124 :    
125 :     val fieldsOf : termios -> { iflag : I.flags,
126 :     oflag : O.flags,
127 :     cflag : C.flags,
128 :     lflag : L.flags,
129 :     cc : V.cc,
130 :     ispeed : speed,
131 :     ospeed : speed }
132 :    
133 :     val getiflag : termios -> I.flags
134 :     val getoflag : termios -> O.flags
135 :     val getcflag : termios -> C.flags
136 :     val getlflag : termios -> L.flags
137 :     val getcc : termios -> V.cc
138 :    
139 :     val getospeed : termios -> speed
140 :     val setospeed : (termios * speed) -> termios
141 :     val getispeed : termios -> speed
142 :     val setispeed : (termios * speed) -> termios
143 :    
144 :     structure TC :
145 :     sig
146 :     eqtype set_action
147 :    
148 :     val sanow : set_action
149 :     val sadrain : set_action
150 :     val saflush : set_action
151 :    
152 :     eqtype flow_action
153 :    
154 :     val ooff : flow_action
155 :     val oon : flow_action
156 :     val ioff : flow_action
157 :     val ion : flow_action
158 :    
159 :     eqtype queue_sel
160 :    
161 :     val iflush : queue_sel
162 :     val oflush : queue_sel
163 :     val ioflush : queue_sel
164 :     end
165 :    
166 :     val getattr : file_desc -> termios
167 :     val setattr : file_desc * TC.set_action * termios -> unit
168 :    
169 :     val sendbreak : file_desc * int -> unit
170 :     val drain : file_desc -> unit
171 :     val flush : file_desc * TC.queue_sel -> unit
172 :     val flow : file_desc * TC.flow_action -> unit
173 :    
174 :     val getpgrp : file_desc -> pid
175 :     val setpgrp : file_desc * pid -> unit
176 :    
177 :     end (* signature POSIX_TTY *)
178 :    
179 :     (*
180 : monnier 93 * $Log: posix-tty.sig,v $
181 :     * Revision 1.1.1.1 1998/04/08 18:39:57 george
182 :     * Version 110.5
183 : monnier 16 *
184 :     *)

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