Version 1.0.0
[Summary]
StormByte Config is the configuration-document module of the StormByte C++ suite.
It depends on StormByte Base. This repository is not Base, Buffer, Crypto, Database, Logger, Multimedia, Network or System.
Public headers under StormByte/config/ cover text and versioned binary documents: values, groups, lists, comments, hooks and Save / Load.
If you landed here from a release link and have not read the tree:
- What this module is, how to build it, and short examples: README.md
- License: GNU Lesser General Public License version 3 or later, LICENSE
Initial public release of StormByte Config.
Added
Configdocument withoperator<</operator>>for textSave/LoadwithMode::TextandMode::Binary- Versioned binary envelope: magic
STBTCF+ format version + payload - Values: string, integer, double, boolean, binary (
std::vector<std::byte>) - Text binary values as Base64
b"..."; raw bytes on the binary wire - Comments:
#,//,/* */ - Containers: lists
[]and groups{} - Pre/post read hooks (
AddHookBeforeRead/AddHookAfterRead) OnExistingAction(Keep,Overwrite,ThrowException; default is throw)- Project version read from the
VERSIONfile - CMake 3.28 floor
Notes
- Stream operators are text-only. Use
Save/Loadfor binary. - Older supported binary versions load fully; newer versions are rejected.
- Save always writes the current format version.
- Needs a C++26 compiler and StormByte Base ≥ 1.0.0.