I am releasing a new version of my USerial library.
This release extends the (make-slot-serializer ...)
and (make-accessor-serializer ...)
so that you can pass an existing instance into the unserializers with the :object
parameter rather than having the factory form allocate a new instance.
This release also provides ways to serialize and unserialize from slots and accessors in other code to allow even greater flexibility:
(serialize-accessors* (:string person-name
:uint8 person-age
:string person-hair-color)
*person-instance* :buffer buffer)
(unserialize-slots* (:string name
:uint8 age
:string hair-color)
*person-instance* :buffer buffer)
:uint8 person-age
:string person-hair-color)
*person-instance* :buffer buffer)
(unserialize-slots* (:string name
:uint8 age
:string hair-color)
*person-instance* :buffer buffer)
The serialize-slots*
and unserialize-accessors*
macros are also available.
Here is the latest:
- Code userial_0.5.2011.04.21.tar.gz, and
- Signature userial_0.5.2011.04.21.tar.gz.asc
Edit: Special thanks to Elliott Slaughter. The above improvements came out of recommendations from him.