mirror of
https://github.com/Xahau/xahaud.git
synced 2025-11-19 01:55:48 +00:00
3637cc19f02d95dbc10c7f8caf0811dd00aa94f7
The primary motivation of this commit was simplification, although it may not always be successful at that. The serialization and deserialization interfaces are split up into separate classes, hopefully, providing interfaces that are leaner, cleaner, and less error-prone. The deserializer is now effectively zero-copy, even for types like variable-length blobs. The serializer now comes in two flavors: one that includes a large stack-based buffer built into the serializer, and a second variant that writes directly to an external buffer. If used properly, this can avoid unnecessary copying and memory allocations. Lastly, multiple ST* constructors have been consolidated, allowing for more uniform and readable construction of objects, simplifying code, reducing duplication and (hopefully) avoiding complexity and unnecessary copying of data.
The Xahau Ledger
TODO: Doco
Description
Languages
C++
90.3%
C
8.1%
CMake
0.6%
Shell
0.2%
Java
0.2%
Other
0.5%