mirror of
https://github.com/fraillt/bitsery.git
synced 2026-06-08 00:03:54 +00:00
To get the most out of Bitsery, start with the tutorial. Once you're familiar with the library consider the following reference material.
Library design:
valueNb instead of valuefundamental typesserializer/deserializer functions overloadsextending library functionalityerrors handlingforward/backward compatibility via growable
Core Serializer/Deserializer functions (alphabetical order):
boolBytecontainerobjecttextvalue
Advanced Serializer/Deserializer functions (alphabetical order):
alignboolBitentropyextendgrowablerange
BasicBufferWriter/Reader functions:
writeBits/readBitswriteBytes/readByteswriteBuffer/readBufferalignbeginSession/endSessionflush (writer only)setError (reader only)getError (reader only)isCompletedSuccessfully (reader only)
Tips and tricks:
- if you're getting static assert "please define 'serialize' function", most likely it is because your SERIALIZE function is not defined in same namespace as object.
Limitations:
- max text or container size can be 2^(n-2) (where n = sizeof(std::size_t) * 8) for 32-bit systems it is 1073741823 (0x3FFFFFF).
- when using growable serialized buffer cannot be greater than 2^(n-2) (where n = sizeof(std::size_t) * 8).
Other: