From 25e1417dac0b06ccd477d73587548c4dd1683f2d Mon Sep 17 00:00:00 2001 From: Marius Gerbershagen Date: Fri, 1 Jun 2018 21:56:40 +0200 Subject: [PATCH] doc: add dictionary for extensions to ANSI streams --- src/doc/new-doc/standards/streams.txi | 30 +++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/src/doc/new-doc/standards/streams.txi b/src/doc/new-doc/standards/streams.txi index 5ff0ed398..8f6e36b45 100644 --- a/src/doc/new-doc/standards/streams.txi +++ b/src/doc/new-doc/standards/streams.txi @@ -3,6 +3,7 @@ @menu * Streams - ANSI Streams:: +* Streams - Dictionary:: * Streams - C Reference:: @end menu @@ -104,6 +105,35 @@ and the table of known symbols is shown below. Note how some symbols (@code{:cr} @end multitable @c @end float +@node Streams - Dictionary +@subsection Dictionary +@lspindex open +@lspindex si:set-buffering-mode + +@defun open filename &key (direction :input) (element-type character) if-exists if-does-not-exist (external-format :default) (cstream t) +Open a file stream +@subsubheading Synopsis +@table @var +@item cstream +A generalized boolean; If true, internally use a C @code{FILE*} stream, else a POSIX file descriptor +@end table +@subsubheading Description +All keyword arguments except @var{cstream} behave as specified by the ANSI standard @bibcite{ANSI}. +@end defun + +@defun si:set-buffering-mode stream mode +Control the buffering mode of a stream +@subsubheading Synopsis +@table @var +@item stream +an ANSI stream +@item mode +one of @code{nil}, @code{:none}, @code{:line}, @code{:line-buffered}, @code{:full} or @code{:full-buffered} +@end table +@subsubheading Description +If @var{mode} is @code{nil} or @code{:none}, @var{stream} will not be buffered, if it is @code{:line} or @code{:line-buffered} resp. @code{:full} or @code{:full-buffered}, @var{stream} will be line resp. fully buffered. Streams created with the @code{:cstream} argument to @code{open} set to @code{nil} will never be buffered. +@end defun + @node Streams - C Reference @subsection C Reference