This is the userial Reference Manual, version 0.8.2011.6.2, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 15 08:00:47 2024 GMT+0.
The main system appears first, followed by any subsystem dependency.
userial
userial: a serialization library for binary message encoding.
Patrick Stein <pat@nklein.com>
MIT
0.8.2011.6.2
ieee-floats
(system).
trivial-utf-8
(system).
contextl
(system).
userial
(module).
readme.mkdn
(file).
license.txt
(file).
Modules are listed depth-first from the system components tree.
userial/userial
userial
(system).
package.lisp
(file).
buffer.lisp
(file).
util.lisp
(file).
serialize.lisp
(file).
func.lisp
(file).
peek.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
userial/userial.asd
userial/userial/package.lisp
userial/userial/buffer.lisp
userial/userial/util.lisp
userial/userial/serialize.lisp
userial/userial/func.lisp
userial/userial/peek.lisp
userial/userial/buffer.lisp
package.lisp
(file).
userial
(module).
buffer
(type).
buffer-add-byte
(function).
buffer-advance
(function).
buffer-capacity
(function).
(setf buffer-capacity)
(function).
buffer-get-byte
(function).
buffer-length
(function).
(setf buffer-length)
(function).
buffer-rewind
(function).
get-buffer
(function).
make-buffer
(function).
with-buffer
(macro).
*buffer*
(special variable).
+default-buffer-capacity+
(constant).
+default-buffer-expand+
(constant).
buffer-expand-if-needed
(function).
bufsize
(type).
uchar
(type).
uint
(type).
unroll-add-bytes
(macro).
unroll-get-bytes
(macro).
userial/userial/util.lisp
buffer.lisp
(file).
userial
(module).
get-syms-types-places
(function).
quote-2
(function).
separate-docstring-and-decls
(function).
userial/userial/serialize.lisp
util.lisp
(file).
userial
(module).
define-serializer
(macro).
define-unserializer
(macro).
make-accessor-serializer
(macro).
make-alias-serializer
(macro).
make-bitfield-serializer
(macro).
make-enum-serializer
(macro).
make-float-serializer
(macro).
make-global-variable-serializer
(macro).
make-int-serializer
(macro).
make-key-accessor-serializer
(macro).
make-key-slot-serializer
(macro).
make-list-serializer
(macro).
make-simple-serializer
(macro).
make-slot-serializer
(macro).
make-uint-serializer
(macro).
make-vector-serializer
(macro).
serialize
(function).
serialize*
(macro).
serialize-accessors*
(macro).
serialize-slots*
(macro).
unserialize
(function).
unserialize*
(macro).
unserialize-accessors*
(macro).
unserialize-let*
(macro).
unserialize-list*
(function).
unserialize-slots*
(macro).
=layered-function-definer-for-serialize=
(generic function).
=layered-function-definer-for-unserialize=
(generic function).
make-key-*-serializer
(macro).
twos-complement
(macro).
userial/userial/func.lisp
serialize.lisp
(file).
userial
(module).
define-serializing-funcall
(macro).
argify
(function).
got-arg
(function).
it-or-third
(function).
key-for-key
(function).
pluck-apart-keyed-lambda-list
(function).
retrieve-from-until
(function).
retrieve-paired-until
(function).
retrieve-until
(function).
serialize-key
(function).
serialize-opt
(function).
serialize-req
(function).
sym-for-key
(function).
sym-for-opt
(function).
userial/userial/peek.lisp
func.lisp
(file).
userial
(module).
peek
(function).
with-peek-buffer
(macro).
Packages are listed by definition order.
userial
common-lisp
.
buffer
(type).
buffer-add-byte
(function).
buffer-advance
(function).
buffer-capacity
(function).
(setf buffer-capacity)
(function).
buffer-get-byte
(function).
buffer-length
(function).
(setf buffer-length)
(function).
buffer-rewind
(function).
define-serializer
(macro).
define-serializing-funcall
(macro).
define-unserializer
(macro).
get-buffer
(function).
make-accessor-serializer
(macro).
make-alias-serializer
(macro).
make-bitfield-serializer
(macro).
make-buffer
(function).
make-enum-serializer
(macro).
make-float-serializer
(macro).
make-global-variable-serializer
(macro).
make-int-serializer
(macro).
make-key-accessor-serializer
(macro).
make-key-slot-serializer
(macro).
make-list-serializer
(macro).
make-simple-serializer
(macro).
make-slot-serializer
(macro).
make-uint-serializer
(macro).
make-vector-serializer
(macro).
peek
(function).
serialize
(function).
serialize*
(macro).
serialize-accessors*
(macro).
serialize-slots*
(macro).
unserialize
(function).
unserialize*
(macro).
unserialize-accessors*
(macro).
unserialize-let*
(macro).
unserialize-list*
(function).
unserialize-slots*
(macro).
with-buffer
(macro).
with-peek-buffer
(macro).
*buffer*
(special variable).
+default-buffer-capacity+
(constant).
+default-buffer-expand+
(constant).
=layered-function-definer-for-serialize=
(generic function).
=layered-function-definer-for-unserialize=
(generic function).
argify
(function).
buffer-expand-if-needed
(function).
bufsize
(type).
get-syms-types-places
(function).
got-arg
(function).
it-or-third
(function).
key-for-key
(function).
make-key-*-serializer
(macro).
pluck-apart-keyed-lambda-list
(function).
quote-2
(function).
retrieve-from-until
(function).
retrieve-paired-until
(function).
retrieve-until
(function).
separate-docstring-and-decls
(function).
serialize-key
(function).
serialize-opt
(function).
serialize-req
(function).
sym-for-key
(function).
sym-for-opt
(function).
twos-complement
(macro).
uchar
(type).
uint
(type).
unroll-add-bytes
(macro).
unroll-get-bytes
(macro).
Definitions are sorted by export status, category, package, and then by lexicographic order.
Make a serialize/unserialize pair with given TYPE using the FACTORY
form when a new instance is needed where FIELDS is a list of
key/accessor values. For example:
(defstruct person name (age 0))
(make-accessor-serializer (:person person buffer (make-person))
:string person-name :uint8 person-age)
Create serialize/unserialize methods keyed by TYPE where the CHOICES can either be specified singly or as a list.
Create serialize/unserialize methods keyed by TYPE where the possible values are given by CHOICES
Make serialize/unserialize routines for floating-point type TYPE dispatched by KEY with the given number of BYTES and an ENCODER/DECODER pair.
Make SERIALIZE/UNSERIALIZE methods for a signed-int of BYTES bytes in length dispatched by KEY.
Make a serialize/unserialize pair for the key TYPE where each element is serialized with the key ELEMENT-TYPE.
Make a serialize/unserialize pair with given TYPE using the FACTORY
form when a new instance is needed where FIELDS is a list of
key/slot values. For example:
(defstruct person name (age 0))
(make-slot-serializer (:person person buffer (make-person))
:string name :uint8 age)
Make SERIALIZE/UNSERIALIZE methods for an unsigned-int of BYTES bytes in length dispatched by KEY.
SERIALIZE a list of TYPE + VALUE into BUFFER returning the final BUFFER. For example: (SERIALIZE* :UINT8 5 :INT16 -10)
UNSERIALIZE a list of TYPE + PLACE from the given BUFFER and execute the body. For example: (LET (AA BB) (UNSERIALIZE* :UINT8 AA :INT16 BB) (LIST AA BB))
UNSERIALIZE a list of TYPE + VARIABLE-NAME from the given BUFFER and execute the body. For example: (UNSERIALIZE-LET* (:UINT8 AA :INT16 BB) (LIST AA BB))
Macro to do a BODY of statements with the given BUFFER as default.
Add the given BYTE to the BUFFER
Advances the BUFFER by AMOUNT bytes
Returns the current capacity of the BUFFER
Sets the capacity of the BUFFER to NEW-CAPACITY
Get a byte from the BUFFER
Returns the current length of the BUFFER
Sets the length of the BUFFER to NEW-LENGTH
Rewind the BUFFER to the beginning
Create an empty BUFFER of a given INITIAL-CAPACITY
Method used to serialize a VALUE of given TYPE into BUFFER
Method used to unserialize a value of given TYPE from BUFFER
UNSERIALIZE a list of types from the given BUFFER into a list. For example: (MAPCAR #’PRINC (UNSERIALIZE-LIST* ’(:UINT8 :INT16) :BUFFER BUFFER))
A BUFFER is an adjustable, one-dimensional array of unsigned bytes with a fill-pointer.
Added BYTES bytes from the VALUE-FORM (most-significant byte first)
Get BYTES bytes (most-significant byte first)
Expand the BUFFER if needed to accomodate EXPAND-BY more bytes
Take a list like (:UINT AA :STRING BB :COW CC) and return three lists, the third the list (AA BB CC), the second the list (:UINT :STRING :COW), and the first a list of #’GENSYM symbols as long as the other lists are.
Take two parameters and return them as a quoted list.
Take a body form and return two values. The first value is a list of the docstring and any introductory DECLARE forms in the body and the second value is the rest of the body.
(eql :symbol)
) value &key &allow-other-keys) ¶(eql :keyword)
) value &key &allow-other-keys) ¶(eql :boolean)
) value &key &allow-other-keys) ¶(eql :string)
) value &key &allow-other-keys) ¶(eql :bytes)
) value &key &allow-other-keys) ¶(eql :raw-bytes)
) value &key start end &allow-other-keys) ¶(eql :float64)
) value &key &allow-other-keys) ¶(eql :float32)
) value &key &allow-other-keys) ¶(eql :int)
) value &key &allow-other-keys) ¶(eql :int64)
) value &key &allow-other-keys) ¶(eql :int32)
) value &key &allow-other-keys) ¶(eql :int16)
) value &key &allow-other-keys) ¶(eql :int8)
) value &key &allow-other-keys) ¶(eql :uint)
) value &key &allow-other-keys) ¶(eql :uint64)
) value &key &allow-other-keys) ¶(eql :uint48)
) value &key &allow-other-keys) ¶(eql :uint32)
) value &key &allow-other-keys) ¶(eql :uint24)
) value &key &allow-other-keys) ¶(eql :uint16)
) value &key &allow-other-keys) ¶(eql :uint8)
) value &key &allow-other-keys) ¶There is no default way to serialize something, so chuck an error.
(eql :symbol)
) &key &allow-other-keys) ¶(eql :keyword)
) &key &allow-other-keys) ¶(eql :boolean)
) &key &allow-other-keys) ¶(eql :string)
) &key &allow-other-keys) ¶(eql :bytes)
) &key &allow-other-keys) ¶(eql :raw-bytes)
) &key output start end &allow-other-keys) ¶(eql :float64)
) &key &allow-other-keys) ¶(eql :float32)
) &key &allow-other-keys) ¶(eql :int)
) &key &allow-other-keys) ¶(eql :int64)
) &key &allow-other-keys) ¶(eql :int32)
) &key &allow-other-keys) ¶(eql :int16)
) &key &allow-other-keys) ¶(eql :int8)
) &key &allow-other-keys) ¶(eql :uint)
) &key &allow-other-keys) ¶(eql :uint64)
) &key &allow-other-keys) ¶(eql :uint48)
) &key &allow-other-keys) ¶(eql :uint32)
) &key &allow-other-keys) ¶(eql :uint24)
) &key &allow-other-keys) ¶(eql :uint16)
) &key &allow-other-keys) ¶(eql :uint8)
) &key &allow-other-keys) ¶There is no default way to unserialize something, so chuck an error.
Jump to: | (
=
A B D F G I K M P Q R S T U W |
---|
Jump to: | (
=
A B D F G I K M P Q R S T U W |
---|
Jump to: | *
+
C S |
---|
Jump to: | *
+
C S |
---|
Jump to: | B F L M P R S T U |
---|
Jump to: | B F L M P R S T U |
---|