summaryrefslogtreecommitdiff
path: root/libguile/strports.h
diff options
context:
space:
mode:
authorGary Houston <ghouston@arglist.com>1999-07-13 11:06:18 +0000
committerGary Houston <ghouston@arglist.com>1999-07-13 11:06:18 +0000
commit3fe6190f46da0ac53fc7f4af860789cb33bd642e (patch)
treecaeec2bbc514de0fb3a07b723f9448da5735fe35 /libguile/strports.h
parent4dc7f07fde307969583d8ce92f83960ac00b476d (diff)
downloadguile-3fe6190f46da0ac53fc7f4af860789cb33bd642e.tar.gz
1999-07-13 Gary Houston <ghouston@easynet.co.uk>
* strports.c (scm_strprint_obj): simplify. start with initial buffer size of 0. (st_seek): don't allow string to be extended if seeking past the end of a read-only port. 1999-07-12 Gary Houston <ghouston@easynet.co.uk> * strports.c (st_seek): change the resize checks. * ports.c (scm_ftruncate): throw error if offset works out negative. * strports.c (st_flush): increase string size in blocks of SCM_WRITE_BLOCK instead of 1. set read_end to read_pos if it's greater and reset read_buf_size. (scm_mkstrport): set rw_randow if only writing, since read_buf needs to be maintained for output ports too (it holds the written part of the string, while write_buf may have unwritten buffer chars.) (st_truncate): rewritten. (top of file): added a few notes. 1999-07-06 Gary Houston <ghouston@easynet.co.uk> * strports.c (st_grow_port): set pt->read_pos. set pt->read_buf_size one less than pt->write_buf_size if there's an unwritten char at the end of the string. similarly for pt->read_end. (st_resize_port): renamed from st_grow_port. (st_seek): simplify by assuming that pt->write_pos == pt->read_pos. seek from read_end instead of write_end for SEEK_END. (st_ftruncate): calculate current length using readbuf, not write buf. (scm_strport_to_string): use read_buf_size for length. (stfill_buffer): don't re-initialise the readbuf. 1999-07-05 Gary Houston <ghouston@easynet.co.uk> * strports.c (scm_strport_to_string): new procedure. (scm_call_with_output_string, scm_strprint_obj): use scm_strport_to_string. used SCM_INUM0 instead of SCM_MAKINUM (0) in a few places.
Diffstat (limited to 'libguile/strports.h')
-rw-r--r--libguile/strports.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/libguile/strports.h b/libguile/strports.h
index 0310c6245..dfc94034b 100644
--- a/libguile/strports.h
+++ b/libguile/strports.h
@@ -51,6 +51,7 @@ extern scm_ptobfuns scm_stptob;
extern SCM scm_mkstrport SCM_P ((SCM pos, SCM str, long modes, const char * caller));
+extern SCM scm_strport_to_string (SCM port);
extern SCM scm_call_with_output_string SCM_P ((SCM proc));
extern SCM scm_strprint_obj SCM_P ((SCM obj));
extern SCM scm_call_with_input_string SCM_P ((SCM str, SCM proc));