comparison src/lstream.h @ 263:727739f917cb r20-5b30

Import from CVS: tag r20-5b30
author cvs
date Mon, 13 Aug 2007 10:24:41 +0200
parents 262b8bb4a523
children c5d627a313b1
comparison
equal deleted inserted replaced
262:9d8607af9e13 263:727739f917cb
105 data will be squirrelled away until the writer can accept 105 data will be squirrelled away until the writer can accept
106 data. (This is useful, e.g., of you're dealing with a 106 data. (This is useful, e.g., of you're dealing with a
107 non-blocking file descriptor and are getting EWOULDBLOCK errors.) 107 non-blocking file descriptor and are getting EWOULDBLOCK errors.)
108 This function can be NULL if the stream is input-only. */ 108 This function can be NULL if the stream is input-only. */
109 int (*writer) (Lstream *stream, CONST unsigned char *data, int size); 109 int (*writer) (Lstream *stream, CONST unsigned char *data, int size);
110 /* Return non-zero if the last write operation on the stream resulted
111 in an attempt to block (EWOULDBLOCK). If this method does not
112 exists, the implementation returns 0 */
113 int (*was_blocked_p) (Lstream *stream);
110 /* Rewind the stream. If this is NULL, the stream is not seekable. */ 114 /* Rewind the stream. If this is NULL, the stream is not seekable. */
111 int (*rewinder) (Lstream *stream); 115 int (*rewinder) (Lstream *stream);
112 /* Indicate whether this stream is seekable -- i.e. it can be rewound. 116 /* Indicate whether this stream is seekable -- i.e. it can be rewound.
113 This method is ignored if the stream does not have a rewind 117 This method is ignored if the stream does not have a rewind
114 method. If this method is not present, the result is determined 118 method. If this method is not present, the result is determined
200 int Lstream_fputc (Lstream *lstr, int c); 204 int Lstream_fputc (Lstream *lstr, int c);
201 int Lstream_fgetc (Lstream *lstr); 205 int Lstream_fgetc (Lstream *lstr);
202 void Lstream_fungetc (Lstream *lstr, int c); 206 void Lstream_fungetc (Lstream *lstr, int c);
203 int Lstream_read (Lstream *lstr, void *data, int size); 207 int Lstream_read (Lstream *lstr, void *data, int size);
204 int Lstream_write (Lstream *lstr, CONST void *data, int size); 208 int Lstream_write (Lstream *lstr, CONST void *data, int size);
209 int Lstream_was_blocked_p (Lstream *lstr);
205 void Lstream_unread (Lstream *lstr, CONST void *data, int size); 210 void Lstream_unread (Lstream *lstr, CONST void *data, int size);
206 int Lstream_rewind (Lstream *lstr); 211 int Lstream_rewind (Lstream *lstr);
207 int Lstream_seekable_p (Lstream *lstr); 212 int Lstream_seekable_p (Lstream *lstr);
208 int Lstream_close (Lstream *lstr); 213 int Lstream_close (Lstream *lstr);
209 void Lstream_delete (Lstream *lstr); 214 void Lstream_delete (Lstream *lstr);
322 Lisp_Object make_filedesc_output_stream (int filedesc, int offset, int count, 327 Lisp_Object make_filedesc_output_stream (int filedesc, int offset, int count,
323 int flags); 328 int flags);
324 void filedesc_stream_set_pty_flushing (Lstream *stream, 329 void filedesc_stream_set_pty_flushing (Lstream *stream,
325 int pty_max_bytes, 330 int pty_max_bytes,
326 Bufbyte eof_char); 331 Bufbyte eof_char);
327 int filedesc_stream_was_blocked (Lstream *stream); 332 int filedesc_stream_fd (Lstream *stream);
328 Lisp_Object make_lisp_string_input_stream (Lisp_Object string, 333 Lisp_Object make_lisp_string_input_stream (Lisp_Object string,
329 Bytecount offset, 334 Bytecount offset,
330 Bytecount len); 335 Bytecount len);
331 Lisp_Object make_fixed_buffer_input_stream (CONST unsigned char *buf, 336 Lisp_Object make_fixed_buffer_input_stream (CONST unsigned char *buf,
332 int size); 337 int size);