Page 189 Table of Contents Index Page 191
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E





Chapter 22

Extended Stream Input

CLIM provides a stream-oriented input layer that is implemented on top of the sheet input
architecture. The basic CLIM input stream protocol is based on the character input stream
protocol proposal submitted to the ANSI Common Lisp committee by David Gray. This proposal
was not approved by the committee, but has been implemented by most Lisp vendors.

22.1 Basic Input Streams

CLIM provides an implementation of the basic input stream facilities (described in more detail in
Appendix C), either by directly using the underlying Lisp implementation, or by implementing
the facilities itself.

=> standard-input-stream [Class]
This class provides an implementation of the CLIM's basic input stream protocol based on
CLIM's input kernel. It defines a handle-event method for keystroke events and queues the
resulting characters in a per-stream input buffer. Members of this class are mutable.

=> stream-read-char stream [Generic Function]
Returns the next character available in the input stream stream, or :eof if the stream is at
end-of-file. If no character is available this function will wait until one becomes available.

=> stream-unread-char stream character [Generic Function]
Places the character character back into the input stream stream's input buffer. The next call
to read-char on stream will return the unread character. The character supplied must be the
most recent character read from the stream.

=> stream-read-char-no-hang stream [Generic Function]


Page 189 Table of Contents Index Page 191
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E