/************************************************************************/
/* definition of Lstream object */
/************************************************************************/
/* definition of Lstream object */
size_t size; /* Number of additional bytes to be allocated with this
stream. Access this data using Lstream_data(). */
/* Read some data from the stream's end and store it into DATA, which
size_t size; /* Number of additional bytes to be allocated with this
stream. Access this data using Lstream_data(). */
/* Read some data from the stream's end and store it into DATA, which
data. (This is useful, e.g., of you're dealing with a
non-blocking file descriptor and are getting EWOULDBLOCK errors.)
This function can be NULL if the stream is input-only. */
data. (This is useful, e.g., of you're dealing with a
non-blocking file descriptor and are getting EWOULDBLOCK errors.)
This function can be NULL if the stream is input-only. */
/* Return non-zero if the last write operation on the stream resulted
in an attempt to block (EWOULDBLOCK). If this method does not
exists, the implementation returns 0 */
/* Return non-zero if the last write operation on the stream resulted
in an attempt to block (EWOULDBLOCK). If this method does not
exists, the implementation returns 0 */
Lstream_buffering buffering; /* type of buffering in use */
size_t buffering_size; /* number of bytes buffered */
Lstream_buffering buffering; /* type of buffering in use */
size_t buffering_size; /* number of bytes buffered */
void Lstream_reopen (Lstream *lstr);
void Lstream_set_buffering (Lstream *lstr, Lstream_buffering buffering,
int buffering_size);
void Lstream_reopen (Lstream *lstr);
void Lstream_set_buffering (Lstream *lstr, Lstream_buffering buffering,
int buffering_size);
int Lstream_fgetc (Lstream *lstr);
void Lstream_fungetc (Lstream *lstr, int c);
ssize_t Lstream_read (Lstream *lstr, void *data, size_t size);
int Lstream_fgetc (Lstream *lstr);
void Lstream_fungetc (Lstream *lstr, int c);
ssize_t Lstream_read (Lstream *lstr, void *data, size_t size);
int Lstream_rewind (Lstream *lstr);
int Lstream_seekable_p (Lstream *lstr);
int Lstream_close (Lstream *lstr);
int Lstream_rewind (Lstream *lstr);
int Lstream_seekable_p (Lstream *lstr);
int Lstream_close (Lstream *lstr);
Lstream_put_emchar (Lstream *stream, Emchar ch)
{
return CHAR_ASCII_P (ch) ?
Lstream_put_emchar (Lstream *stream, Emchar ch)
{
return CHAR_ASCII_P (ch) ?
-Lisp_Object make_fixed_buffer_input_stream (CONST unsigned char *buf,
- size_t size);
-Lisp_Object make_fixed_buffer_output_stream (unsigned char *buf,
- size_t size);
-CONST unsigned char *fixed_buffer_input_stream_ptr (Lstream *stream);
+Lisp_Object make_fixed_buffer_input_stream (const void *buf, size_t size);
+Lisp_Object make_fixed_buffer_output_stream (void *buf, size_t size);
+const unsigned char *fixed_buffer_input_stream_ptr (Lstream *stream);
unsigned char *fixed_buffer_output_stream_ptr (Lstream *stream);
Lisp_Object make_resizing_buffer_output_stream (void);
unsigned char *resizing_buffer_stream_ptr (Lstream *stream);
unsigned char *fixed_buffer_output_stream_ptr (Lstream *stream);
Lisp_Object make_resizing_buffer_output_stream (void);
unsigned char *resizing_buffer_stream_ptr (Lstream *stream);