mirror of
https://github.com/fraillt/bitsery.git
synced 2026-06-08 08:13:56 +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:
fundamental typesvalueNb instead of valueflexible syntaxserializer/deserializer functions overloadsextending library functionalityerrors handlingforward/backward compatibility via Growable extension- pointers
inheritancepolymorphism
Core Serializer/Deserializer functions (alphabetical order):
operator()(4.6.1) (when flexible syntax is enabled)adapter(5.0.0)archive(4.0.0) (when flexible syntax is enabled)boolValue(4.0.0)context<T>(4.1.0)contextOrNull<T>(4.2.0)enableBitPacking(4.0.0)ext(2.0.0)object(1.0.0)text(1.0.0)value(1.0.0)
Serializer/Deserializer extensions via ext method (alphabetical order):
BaseClass(4.2.0)CompactValue(4.4.0)CompactValueAsObject(4.4.0)Entropy(3.0.0)Growable(3.0.0)PointerOwner(4.1.0)PointerObserver(4.1.0)ReferencedByPointer(4.1.0)StdDuration(4.6.0)StdMap(3.0.0)StdOptional(2.0.0)StdQueue(4.0.0)StdSet(4.0.0)StdSmartPrt(4.3.0)StdStack(4.0.0)StdTimePoint(4.6.0)StdTuple(4.6.0) (requires c++17)StdVariant(4.6.0) (requires c++17)ValueRange(3.0.0)VirtualBaseClass(4.2.0)
Input adapters (buffer and stream) functions:
alignreadBitsreadBytesreadBuffercurrentReadPos (get/set)(buffer adapter only)currentReadEndPos (get/set)(buffer adapter only)error (get/set)isCompletedSuccessfully
Output adapters (buffer and stream) functions:
alignwriteBitswriteByteswriteBufferflushcurrentyWritePos (get/set)(buffer adapter only)writtenBytesCount(buffer adapter only)
Tips and tricks:
- if you're getting static assert "please define 'serialize' function", please define serialize function in same namespace as object, or in bitsery namespace, for more info ADL.
Other: