|
ANSI Common Lisp 21 Streams 21.2 Dictionary of Streams
21.2.33 with-open-stream |
Macro |
- Syntax:
-
with-open-stream
(var stream)
{declaration}*
{form}*
{result}*
- Arguments and Values:
-
var - a variable name.
stream - a form; evaluated to produce a stream.
declaration - a declare expression; not evaluated.
forms - an implicit progn.
results - the values returned by the forms.
- Description:
-
with-open-stream performs a series of operations on
stream, returns a value, and then closes the stream.
Var is bound to the value of stream,
and then forms are executed
as an implicit progn.
stream
is automatically closed on exit from with-open-stream,
no matter whether the exit is normal or abnormal.
The stream has dynamic extent;
its extent ends when the form is exited.
The consequences are undefined if an attempt is made to assign the
variable var with the forms.
- Examples:
-
(with-open-stream (s (make-string-input-stream "1 2 3 4"))
(+ (read s) (read s) (read s))) 6
- Side Effects:
-
The stream is closed (upon exit).
- See Also:
-
close
- Allegro CL Implementation Details:
-
None.
|