The fast-io Reference Manual
Table of Contents
The fast-io Reference Manual
This is the fast-io Reference Manual, version 1.0,
generated automatically by Declt version 3.0 "Montgomery Scott"
on Tue Dec 22 13:26:33 2020 GMT+0.
1 Introduction
fast-io
Now with
static-vectors
support!
(deftype octet '(unsigned-byte 8))
(deftype octet-vector '(simple-array octet (*)))
Fast-io is about improving performance to octet-vectors and octet
streams (though primarily the former, while wrapping the latter).
Imagine we're creating messages for the network. If we try and fill an
octet-vector with 50 bytes, 50000 times, here are the results (SBCL
1.0.57):
(See t/benchmarks.lisp
for the exact code used.)
It should be surprising that it takes a nontrivial effort to achieve
relatively decent performance to octet-vectors, but probably isn't.
However, fast-io provides a relatively straightforward interface for
reading and writing either a stream or a vector:
;;; Write a byte or sequence, optionally to a stream:
(with-fast-output (buffer [STREAM | :vector | :static])
(fast-write-byte BYTE buffer))
(with-fast-output (buffer [STREAM | :vector | :static])
(fast-write-sequence OCTET-VECTOR buffer [START [END]]))
;;; Read from a vector or stream:
(with-fast-input (buffer VECTOR [STREAM])
(fast-read-byte buffer))
(with-fast-input (buffer VECTOR [STREAM])
(let ((vec (make-octet-vector N)))
(fast-read-sequence vec buffer [START [END]])))
Multi-byte and Endianness
Fast-io provides a host of read and write functions for big- and little-endian reads. See the Dictionary below.
Static Vectors
You may now specify :static
instead of a stream to
WITH-OUTPUT-BUFFER
. This returns an octet-vector created with
static-vectors,
which means that passing the buffered data directly to a foreign
function is now that much more efficient:
(let ((data (with-fast-output (buffer :static)
(buffer-some-data buffer))))
(foreign-send (static-vectors:static-vector-pointer data))
(static-vectors:free-static-vector data))
Note that the restriction for manually freeing the result remains.
This avoids multiple inefficient (i.e., byte-by-byte) copies to
foreign memory.
Streams
Obviously, the above API isn't built around Lisp streams, or even
gray-streams. However, fast-io provides a small wrapper using
trivial-gray-streams
, and supports {WRITE,READ}-SEQUENCE
:
(let ((stream (make-instance 'fast-io:fast-output-stream)))
(write-sequence (fast-io:octets-from '(1 2 3 4)) stream))
Both fast-input-stream
and fast-output-stream
support backing a
stream, much like using the plain fast-io buffers. However, using the
gray-streams interface is a 3-4x as slow as using the buffers alone.
Simple benchmarks show the gray-streams interface writing 1M 50-byte
vectors in about 1.7s, whereas simply using buffers is about 0.8s.
Consing remains similar between the two.
Dictionary
Octets
Most functions operate on or require octet-vectors, i.e.,
(deftype octet () '(unsigned-byte 8))
(deftype octet-vector '(simple-array octet (*)))
Which is exactly what is defined and exported from fast-io
. Also:
make-octet-vector LEN
Make an octet-vector of length LEN
.
octets-from SEQUENCE
Make an octet-vector from the contents of SEQUENCE
.
Buffers
-
make-input-buffer &key VECTOR STREAM POS
Create an input buffer for use with input functions. :vector
specifies the vector to be read from. :stream
specifies the stream to read from. :pos
specifies the offset to start reading into VECTOR
.
-
make-output-buffer &key OUTPUT
Create an output buffer for use with output functions. :output
specifies an output stream. If :output :static
is specified, and static-vectors is supported, output will be to a static-vector.
-
finish-output-buffer BUFFER
Finish the output and return the complete octet-vector.
-
buffer-position BUFFER
Return the current read/write position for BUFFER
.
-
with-fast-input (BUFFER VECTOR &optional STREAM (OFFSET 0)) &body body
Create an input buffer called BUFFER
, optionally reading from VECTOR
, followed by reading from STREAM
. If OFFSET
is specified, start reading from this position in VECTOR
.
-
with-fast-output (BUFFER &optional OUTPUT) &body BODY
Create an output buffer named BUFFER
, optionally writing to the stream OUTPUT
. This will automatically FINISH-OUTPUT-BUFFER
on BUFFER
. Thus the with-fast-output
form evaluates to the completed octet-vector.
Reading and Writing
fast-read-byte INPUT-BUFFER &optional (EOF-ERROR-P t) EOF-VALUE
Read a byte from INPUT-BUFFER
. If EOF-ERROR-P
is t
, reading past the end-of-file will signal CL:END-OF-FILE
. Otherwise, it will return EOF-VALUE
instead.
fast-write-byte BYTE OUTPUT-BUFFER
Write a byte to OUTPUT-BUFFER
.
fast-read-sequence SEQUENCE INPUT-BUFFER &optional (START 0) END
Read from INPUT-BUFFER
into SEQUENCE
. Values will be written starting at position START
and, if END
is specified, ending at END
. Otherwise values will be written until the length of the sequence, or until the input is exhausted.
fast-write-sequence SEQUENCE OUTPUT-BUFFER &optional (START 0) END
Write SEQUENCE
to OUTPUT-BUFFER
, starting at position START
in SEQUENCE
. If END
is specified, values will be written until END
; otherwise, values will be written for the length of the sequence.
For multi-byte reads and writes requiring endianness, fast-io provides functions in the following forms:
write[u]{8,16,32,64,128}{-be,-le}
: E.g., (write32-be VALUE BUFFER)
will write the specified 32-bit value to the specified buffer with a big-endian layout. Likewise, (writeu16-le VALUE BUFFER)
will write an unsigned 16-bit value in little-endian layout.
read[u]{8,16,32,64,128}{-be,-le}
: Similarly, (read64-le BUFFER)
will read a 64-bit value from the buffer with little-endian layout.
2 Systems
The main system appears first, followed by any subsystem dependency.
2.1 fast-io
- Author
Ryan Pavlik
- License
MIT
- Description
Alternative I/O mechanism to a stream or vector
- Version
1.0
- Dependencies
- alexandria
- trivial-gray-streams
- static-vectors
- Source
fast-io.asd (file)
- Components
-
3 Files
Files are sorted by type and then listed depth-first from the systems
components trees.
3.1 Lisp
3.1.1 fast-io.asd
- Location
/home/quickref/quicklisp/dists/quicklisp/software/fast-io-20200925-git/fast-io.asd
- Systems
fast-io (system)
3.1.2 fast-io/package.lisp
- Parent
fast-io (system)
- Location
package.lisp
- Packages
fast-io
3.1.3 fast-io/types.lisp
- Dependency
package.lisp (file)
- Parent
fast-io (system)
- Location
types.lisp
- Exported Definitions
-
3.1.4 fast-io/io.lisp
- Dependency
types.lisp (file)
- Parent
fast-io (system)
- Location
io.lisp
- Exported Definitions
-
- Internal Definitions
-
3.1.5 fast-io/gray.lisp
- Dependency
io.lisp (file)
- Parent
fast-io (system)
- Location
gray.lisp
- Exported Definitions
-
4 Packages
Packages are listed by definition order.
4.1 fast-io
- Source
package.lisp (file)
- Use List
- trivial-gray-streams
- alexandria
- common-lisp
- Exported Definitions
-
- Internal Definitions
-
5 Definitions
Definitions are sorted by export status, category, package, and then by
lexicographic order.
5.1 Exported definitions
5.1.1 Special variables
- Special Variable: *default-output-buffer-size*
-
- Package
fast-io
- Source
io.lisp (file)
5.1.2 Macros
- Macro: with-fast-input (BUFFER VECTOR &optional STREAM OFFSET) &body BODY
-
- Package
fast-io
- Source
io.lisp (file)
- Macro: with-fast-output (BUFFER &optional OUTPUT) &body BODY
-
Create ‘BUFFER‘, optionally outputting to ‘OUTPUT‘.
- Package
fast-io
- Source
io.lisp (file)
5.1.3 Functions
- Function: buffer-position BUFFER
-
Return the number of bytes read (for an INPUT-BUFFER) or written
(for an OUTPUT-BUFFER)
- Package
fast-io
- Source
io.lisp (file)
- Writer
(setf buffer-position) (function)
- Function: (setf buffer-position) NEW-POS BUFFER
-
Set the buffer position for input-buffer
- Package
fast-io
- Source
io.lisp (file)
- Reader
buffer-position (function)
- Function: fast-read-byte INPUT-BUFFER &optional EOF-ERROR-P EOF-VALUE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: fast-read-sequence SEQUENCE INPUT-BUFFER &optional START END
-
- Package
fast-io
- Source
io.lisp (file)
- Function: fast-write-byte BYTE OUTPUT-BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: fast-write-sequence SEQUENCE OUTPUT-BUFFER &optional START END
-
- Package
fast-io
- Source
io.lisp (file)
- Function: finish-output-buffer OUTPUT-BUFFER
-
Finish an output buffer. If it is backed by a vector (static or otherwise)
it returns the final octet vector. If it is backed by a stream it ensures that
all data has been flushed to the stream.
- Package
fast-io
- Source
io.lisp (file)
- Function: finish-output-stream STREAM
-
- Package
fast-io
- Source
gray.lisp (file)
- Function: input-buffer-stream INSTANCE
-
- Function: (setf input-buffer-stream) VALUE INSTANCE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: input-buffer-vector INSTANCE
-
- Function: (setf input-buffer-vector) VALUE INSTANCE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: make-input-buffer &key (VECTOR VECTOR) (POS POS) (STREAM STREAM)
-
- Package
fast-io
- Source
io.lisp (file)
- Function: make-octet-vector LEN
-
- Package
fast-io
- Source
io.lisp (file)
- Function: make-output-buffer &key (VECTOR VECTOR) (FILL FILL) (LEN LEN) (QUEUE QUEUE) (LAST LAST) (OUTPUT OUTPUT)
-
- Package
fast-io
- Source
io.lisp (file)
- Function: octets-from SEQUENCE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read128-be BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read128-le BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read16-be BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read16-le BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read32-be BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read32-le BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read64-be BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read64-le BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read8 BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read8-be BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read8-le BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu128-be BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu128-le BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu16-be BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu16-le BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu32-be BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu32-le BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu64-be BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu64-le BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu8 BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu8-be BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu8-le BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write128-be VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write128-le VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write16-be VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write16-le VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write24-be VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write24-le VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write32-be VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write32-le VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write64-be VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write64-le VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write8 VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write8-be VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: write8-le VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu128-be VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu128-le VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu16-be VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu16-le VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu24-be VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu24-le VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu32-be VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu32-le VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu64-be VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu64-le VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu8 VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu8-be VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: writeu8-le VALUE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
5.1.4 Structures
- Structure: input-buffer ()
-
- Package
fast-io
- Source
io.lisp (file)
- Direct superclasses
structure-object (structure)
- Direct slots
- Slot: vector
-
- Type
(or null fast-io:octet-vector)
- Readers
input-buffer-vector (function)
- Writers
(setf input-buffer-vector) (function)
- Slot: pos
-
- Type
fast-io:index
- Initform
0
- Readers
input-buffer-pos (function)
- Writers
(setf input-buffer-pos) (function)
- Slot: stream
-
- Readers
input-buffer-stream (function)
- Writers
(setf input-buffer-stream) (function)
- Structure: output-buffer ()
-
- Package
fast-io
- Source
io.lisp (file)
- Direct superclasses
structure-object (structure)
- Direct slots
- Slot: vector
-
- Type
fast-io:octet-vector
- Initform
(fast-io:make-octet-vector fast-io:*default-output-buffer-size*)
- Readers
output-buffer-vector (function)
- Writers
(setf output-buffer-vector) (function)
- Slot: fill
-
- Type
fast-io:index
- Initform
0
- Readers
output-buffer-fill (function)
- Writers
(setf output-buffer-fill) (function)
- Slot: len
-
- Type
fast-io:index
- Initform
0
- Readers
output-buffer-len (function)
- Writers
(setf output-buffer-len) (function)
- Slot: queue
-
- Type
list
- Readers
output-buffer-queue (function)
- Writers
(setf output-buffer-queue) (function)
- Slot: last
-
- Type
list
- Readers
output-buffer-last (function)
- Writers
(setf output-buffer-last) (function)
- Slot: output
-
- Readers
output-buffer-output (function)
- Writers
(setf output-buffer-output) (function)
5.1.5 Classes
- Class: fast-input-stream ()
-
- Package
fast-io
- Source
gray.lisp (file)
- Direct superclasses
fundamental-input-stream (class)
- Direct methods
- stream-read-sequence (method)
- initialize-instance (method)
- Direct slots
- Slot: buffer
-
- Type
fast-io:input-buffer
- Class: fast-output-stream ()
-
- Package
fast-io
- Source
gray.lisp (file)
- Direct superclasses
fundamental-output-stream (class)
- Direct methods
- stream-write-sequence (method)
- stream-write-byte (method)
- initialize-instance (method)
- Direct slots
- Slot: buffer
-
- Type
fast-io:output-buffer
5.1.6 Types
- Type: index ()
-
- Package
fast-io
- Source
types.lisp (file)
- Type: octet ()
-
- Package
fast-io
- Source
types.lisp (file)
- Type: octet-vector ()
-
- Package
fast-io
- Source
types.lisp (file)
5.2 Internal definitions
5.2.1 Macros
- Macro: make-readers &rest BITLENS
-
- Package
fast-io
- Source
io.lisp (file)
- Macro: make-writers &rest BITLENS
-
- Package
fast-io
- Source
io.lisp (file)
- Macro: read-unsigned-be SIZE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Macro: read-unsigned-le SIZE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Macro: write-unsigned-be VALUE SIZE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Macro: write-unsigned-le VALUE SIZE BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
5.2.2 Functions
- Function: concat-buffer BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: copy-input-buffer INSTANCE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: copy-output-buffer INSTANCE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: extend BUFFER &optional MIN
-
- Package
fast-io
- Source
io.lisp (file)
- Function: flush OUTPUT-BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: input-buffer-p OBJECT
-
- Package
fast-io
- Source
io.lisp (file)
- Function: input-buffer-pos INSTANCE
-
- Function: (setf input-buffer-pos) VALUE INSTANCE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: output-buffer-fill INSTANCE
-
- Function: (setf output-buffer-fill) VALUE INSTANCE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: output-buffer-last INSTANCE
-
- Function: (setf output-buffer-last) VALUE INSTANCE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: output-buffer-len INSTANCE
-
- Function: (setf output-buffer-len) VALUE INSTANCE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: output-buffer-output INSTANCE
-
- Function: (setf output-buffer-output) VALUE INSTANCE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: output-buffer-p OBJECT
-
- Package
fast-io
- Source
io.lisp (file)
- Function: output-buffer-queue INSTANCE
-
- Function: (setf output-buffer-queue) VALUE INSTANCE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: output-buffer-vector INSTANCE
-
- Function: (setf output-buffer-vector) VALUE INSTANCE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read24-be BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: read24-le BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu24-be BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: readu24-le BUFFER
-
- Package
fast-io
- Source
io.lisp (file)
- Function: signed-to-unsigned VALUE SIZE
-
- Package
fast-io
- Source
io.lisp (file)
- Function: unsigned-to-signed VALUE SIZE
-
- Package
fast-io
- Source
io.lisp (file)
Appendix A Indexes
A.1 Concepts
| Index Entry | | Section |
|
F | | |
| fast-io.asd: | | The fast-io․asd file |
| fast-io/gray.lisp: | | The fast-io/gray․lisp file |
| fast-io/io.lisp: | | The fast-io/io․lisp file |
| fast-io/package.lisp: | | The fast-io/package․lisp file |
| fast-io/types.lisp: | | The fast-io/types․lisp file |
| File, Lisp, fast-io.asd: | | The fast-io․asd file |
| File, Lisp, fast-io/gray.lisp: | | The fast-io/gray․lisp file |
| File, Lisp, fast-io/io.lisp: | | The fast-io/io․lisp file |
| File, Lisp, fast-io/package.lisp: | | The fast-io/package․lisp file |
| File, Lisp, fast-io/types.lisp: | | The fast-io/types․lisp file |
|
L | | |
| Lisp File, fast-io.asd: | | The fast-io․asd file |
| Lisp File, fast-io/gray.lisp: | | The fast-io/gray․lisp file |
| Lisp File, fast-io/io.lisp: | | The fast-io/io․lisp file |
| Lisp File, fast-io/package.lisp: | | The fast-io/package․lisp file |
| Lisp File, fast-io/types.lisp: | | The fast-io/types․lisp file |
|
A.2 Functions
| Index Entry | | Section |
|
( | | |
| (setf buffer-position) : | | Exported functions |
| (setf input-buffer-pos) : | | Internal functions |
| (setf input-buffer-stream) : | | Exported functions |
| (setf input-buffer-vector) : | | Exported functions |
| (setf output-buffer-fill) : | | Internal functions |
| (setf output-buffer-last) : | | Internal functions |
| (setf output-buffer-len) : | | Internal functions |
| (setf output-buffer-output) : | | Internal functions |
| (setf output-buffer-queue) : | | Internal functions |
| (setf output-buffer-vector) : | | Internal functions |
|
B | | |
| buffer-position : | | Exported functions |
|
C | | |
| concat-buffer : | | Internal functions |
| copy-input-buffer : | | Internal functions |
| copy-output-buffer : | | Internal functions |
|
E | | |
| extend : | | Internal functions |
|
F | | |
| fast-read-byte : | | Exported functions |
| fast-read-sequence : | | Exported functions |
| fast-write-byte : | | Exported functions |
| fast-write-sequence : | | Exported functions |
| finish-output-buffer : | | Exported functions |
| finish-output-stream : | | Exported functions |
| flush : | | Internal functions |
| Function, (setf buffer-position) : | | Exported functions |
| Function, (setf input-buffer-pos) : | | Internal functions |
| Function, (setf input-buffer-stream) : | | Exported functions |
| Function, (setf input-buffer-vector) : | | Exported functions |
| Function, (setf output-buffer-fill) : | | Internal functions |
| Function, (setf output-buffer-last) : | | Internal functions |
| Function, (setf output-buffer-len) : | | Internal functions |
| Function, (setf output-buffer-output) : | | Internal functions |
| Function, (setf output-buffer-queue) : | | Internal functions |
| Function, (setf output-buffer-vector) : | | Internal functions |
| Function, buffer-position : | | Exported functions |
| Function, concat-buffer : | | Internal functions |
| Function, copy-input-buffer : | | Internal functions |
| Function, copy-output-buffer : | | Internal functions |
| Function, extend : | | Internal functions |
| Function, fast-read-byte : | | Exported functions |
| Function, fast-read-sequence : | | Exported functions |
| Function, fast-write-byte : | | Exported functions |
| Function, fast-write-sequence : | | Exported functions |
| Function, finish-output-buffer : | | Exported functions |
| Function, finish-output-stream : | | Exported functions |
| Function, flush : | | Internal functions |
| Function, input-buffer-p : | | Internal functions |
| Function, input-buffer-pos : | | Internal functions |
| Function, input-buffer-stream : | | Exported functions |
| Function, input-buffer-vector : | | Exported functions |
| Function, make-input-buffer : | | Exported functions |
| Function, make-octet-vector : | | Exported functions |
| Function, make-output-buffer : | | Exported functions |
| Function, octets-from : | | Exported functions |
| Function, output-buffer-fill : | | Internal functions |
| Function, output-buffer-last : | | Internal functions |
| Function, output-buffer-len : | | Internal functions |
| Function, output-buffer-output : | | Internal functions |
| Function, output-buffer-p : | | Internal functions |
| Function, output-buffer-queue : | | Internal functions |
| Function, output-buffer-vector : | | Internal functions |
| Function, read128-be : | | Exported functions |
| Function, read128-le : | | Exported functions |
| Function, read16-be : | | Exported functions |
| Function, read16-le : | | Exported functions |
| Function, read24-be : | | Internal functions |
| Function, read24-le : | | Internal functions |
| Function, read32-be : | | Exported functions |
| Function, read32-le : | | Exported functions |
| Function, read64-be : | | Exported functions |
| Function, read64-le : | | Exported functions |
| Function, read8 : | | Exported functions |
| Function, read8-be : | | Exported functions |
| Function, read8-le : | | Exported functions |
| Function, readu128-be : | | Exported functions |
| Function, readu128-le : | | Exported functions |
| Function, readu16-be : | | Exported functions |
| Function, readu16-le : | | Exported functions |
| Function, readu24-be : | | Internal functions |
| Function, readu24-le : | | Internal functions |
| Function, readu32-be : | | Exported functions |
| Function, readu32-le : | | Exported functions |
| Function, readu64-be : | | Exported functions |
| Function, readu64-le : | | Exported functions |
| Function, readu8 : | | Exported functions |
| Function, readu8-be : | | Exported functions |
| Function, readu8-le : | | Exported functions |
| Function, signed-to-unsigned : | | Internal functions |
| Function, unsigned-to-signed : | | Internal functions |
| Function, write128-be : | | Exported functions |
| Function, write128-le : | | Exported functions |
| Function, write16-be : | | Exported functions |
| Function, write16-le : | | Exported functions |
| Function, write24-be : | | Exported functions |
| Function, write24-le : | | Exported functions |
| Function, write32-be : | | Exported functions |
| Function, write32-le : | | Exported functions |
| Function, write64-be : | | Exported functions |
| Function, write64-le : | | Exported functions |
| Function, write8 : | | Exported functions |
| Function, write8-be : | | Exported functions |
| Function, write8-le : | | Exported functions |
| Function, writeu128-be : | | Exported functions |
| Function, writeu128-le : | | Exported functions |
| Function, writeu16-be : | | Exported functions |
| Function, writeu16-le : | | Exported functions |
| Function, writeu24-be : | | Exported functions |
| Function, writeu24-le : | | Exported functions |
| Function, writeu32-be : | | Exported functions |
| Function, writeu32-le : | | Exported functions |
| Function, writeu64-be : | | Exported functions |
| Function, writeu64-le : | | Exported functions |
| Function, writeu8 : | | Exported functions |
| Function, writeu8-be : | | Exported functions |
| Function, writeu8-le : | | Exported functions |
|
I | | |
| input-buffer-p : | | Internal functions |
| input-buffer-pos : | | Internal functions |
| input-buffer-stream : | | Exported functions |
| input-buffer-vector : | | Exported functions |
|
M | | |
| Macro, make-readers : | | Internal macros |
| Macro, make-writers : | | Internal macros |
| Macro, read-unsigned-be : | | Internal macros |
| Macro, read-unsigned-le : | | Internal macros |
| Macro, with-fast-input : | | Exported macros |
| Macro, with-fast-output : | | Exported macros |
| Macro, write-unsigned-be : | | Internal macros |
| Macro, write-unsigned-le : | | Internal macros |
| make-input-buffer : | | Exported functions |
| make-octet-vector : | | Exported functions |
| make-output-buffer : | | Exported functions |
| make-readers : | | Internal macros |
| make-writers : | | Internal macros |
|
O | | |
| octets-from : | | Exported functions |
| output-buffer-fill : | | Internal functions |
| output-buffer-last : | | Internal functions |
| output-buffer-len : | | Internal functions |
| output-buffer-output : | | Internal functions |
| output-buffer-p : | | Internal functions |
| output-buffer-queue : | | Internal functions |
| output-buffer-vector : | | Internal functions |
|
R | | |
| read-unsigned-be : | | Internal macros |
| read-unsigned-le : | | Internal macros |
| read128-be : | | Exported functions |
| read128-le : | | Exported functions |
| read16-be : | | Exported functions |
| read16-le : | | Exported functions |
| read24-be : | | Internal functions |
| read24-le : | | Internal functions |
| read32-be : | | Exported functions |
| read32-le : | | Exported functions |
| read64-be : | | Exported functions |
| read64-le : | | Exported functions |
| read8 : | | Exported functions |
| read8-be : | | Exported functions |
| read8-le : | | Exported functions |
| readu128-be : | | Exported functions |
| readu128-le : | | Exported functions |
| readu16-be : | | Exported functions |
| readu16-le : | | Exported functions |
| readu24-be : | | Internal functions |
| readu24-le : | | Internal functions |
| readu32-be : | | Exported functions |
| readu32-le : | | Exported functions |
| readu64-be : | | Exported functions |
| readu64-le : | | Exported functions |
| readu8 : | | Exported functions |
| readu8-be : | | Exported functions |
| readu8-le : | | Exported functions |
|
S | | |
| signed-to-unsigned : | | Internal functions |
|
U | | |
| unsigned-to-signed : | | Internal functions |
|
W | | |
| with-fast-input : | | Exported macros |
| with-fast-output : | | Exported macros |
| write-unsigned-be : | | Internal macros |
| write-unsigned-le : | | Internal macros |
| write128-be : | | Exported functions |
| write128-le : | | Exported functions |
| write16-be : | | Exported functions |
| write16-le : | | Exported functions |
| write24-be : | | Exported functions |
| write24-le : | | Exported functions |
| write32-be : | | Exported functions |
| write32-le : | | Exported functions |
| write64-be : | | Exported functions |
| write64-le : | | Exported functions |
| write8 : | | Exported functions |
| write8-be : | | Exported functions |
| write8-le : | | Exported functions |
| writeu128-be : | | Exported functions |
| writeu128-le : | | Exported functions |
| writeu16-be : | | Exported functions |
| writeu16-le : | | Exported functions |
| writeu24-be : | | Exported functions |
| writeu24-le : | | Exported functions |
| writeu32-be : | | Exported functions |
| writeu32-le : | | Exported functions |
| writeu64-be : | | Exported functions |
| writeu64-le : | | Exported functions |
| writeu8 : | | Exported functions |
| writeu8-be : | | Exported functions |
| writeu8-le : | | Exported functions |
|
A.3 Variables
| Index Entry | | Section |
|
* | | |
| *default-output-buffer-size* : | | Exported special variables |
|
B | | |
| buffer : | | Exported classes |
| buffer : | | Exported classes |
|
F | | |
| fill : | | Exported structures |
|
L | | |
| last : | | Exported structures |
| len : | | Exported structures |
|
O | | |
| output : | | Exported structures |
|
P | | |
| pos : | | Exported structures |
|
Q | | |
| queue : | | Exported structures |
|
S | | |
| Slot, buffer : | | Exported classes |
| Slot, buffer : | | Exported classes |
| Slot, fill : | | Exported structures |
| Slot, last : | | Exported structures |
| Slot, len : | | Exported structures |
| Slot, output : | | Exported structures |
| Slot, pos : | | Exported structures |
| Slot, queue : | | Exported structures |
| Slot, stream : | | Exported structures |
| Slot, vector : | | Exported structures |
| Slot, vector : | | Exported structures |
| Special Variable, *default-output-buffer-size* : | | Exported special variables |
| stream : | | Exported structures |
|
V | | |
| vector : | | Exported structures |
| vector : | | Exported structures |
|
A.4 Data types