ToC DocOverview CGDoc RelNotes Index PermutedIndex
Allegro CL
Home Previous Up Next Table of Contents Index
  21 Streams   21.1 Stream Concepts   21.1.1 Introduction to Streams   21.1.1.1 Abstract Classifications of Streams

21.1.1.1.1 Input, Output, and Bidirectional Streams

A stream, whether a character stream or a binary stream, can be an input stream (source of data), an output stream (sink for data), both, or (e.g., when ":direction :probe" is given to open) neither.

The next figure shows operators relating to input streams.

Operators relating to Input Streams.
clear-input read-byte read-from-string
listen read-char read-line
peek-char read-char-no-hang read-preserving-whitespace
read read-delimited-list unread-char

The next figure shows operators relating to output streams.

Operators relating to Output Streams.
clear-output prin1 write
finish-output prin1-to-string write-byte
force-output princ write-char
format princ-to-string write-line
fresh-line print write-string
pprint terpri write-to-string

A stream that is both an input stream and an output stream is called a bidirectional stream. See the functions input-stream-p and output-stream-p.

Any of the operators listed in Figure 21.1.1.1.1 Input, Output, and Bidirectional Streams or Figure 21.1.1.1.1 Input, Output, and Bidirectional Streams can be used with bidirectional streams. In addition, the next figure shows a list of operators that relate specificaly to bidirectional streams.

Operators relating to Bidirectional Streams.
y-or-n-p yes-or-no-p

Home Previous Up Next Table of Contents Index
© Franz Inc. All Rights Reserved - File last updated 2022-07-25