| Allegro CL version 8.1 Unrevised from 8.0 to 8.1. Minimal update since 8.1 release. 8.0 version |
Arguments: (var buffer &key external-format) forms
Similar to with-output-to-string but with an octet buffer
(a vector that is a simple-array
with element
type (unsigned-byte 8)
or
(signed-byte 8)
) instead of a lisp string. The
external-format argument should be the name of an
external-format, or :default
will cause it to be
looked up in the locale. with-output-to-buffer is implemented using a
buffer-output-simple-stream
.
The buffer argument can either be an octet buffer
(described above) or nil
. If it is nil
, the stream acts like a counting bit-bucket: no
output is generated, and so no overflow can occur, but the
file-position of the stream can be queried at the end of the write.
This allows the following to be done:
cl-user(1): (with-output-to-buffer (stm nil) (write-string "hello" stm) (file-position stm)) 5 cl-user(2):
The macro with-underlying-simple-vector may be
useful in conjunction with this macro as it allows
any (unsigned-byte 8)
or
(signed-byte 8)
array (not just simple one or just
vectors) to be effectively used as the buffer.
See streams.htm for information on the simple-streams implementation in Allegro CL.
Copyright (c) 1998-2009, Franz Inc. Oakland, CA., USA. All rights reserved.
Documentation for Allegro CL version 8.1. This page was not revised from the 8.0 page.
Created 2009.7.29.
| Allegro CL version 8.1 Unrevised from 8.0 to 8.1. Minimal update since 8.1 release. 8.0 version |