enh(io): add convenient feature to serialization
Description
Some convenience functions are missing in serialization:
- Ability to call default serializer from within custom one
- Get the current archive file path to allow creating sibling files, outside the archive
Proposal
- add a serializer "getter" in
io::session::SessionWriter
like:SessionWriter::serializer(std::string classname) -> serializer_t
- add a deserializer "getter" in
io::session::SessionReader
like:SessionReader::deserializer(std::string classname) -> deserializer_t
- add a path getter in
io::zip::Archive
like:Archive::getPath() -> std::filesystem::path
Functional specifications
See Proposal
Technical specifications
See Proposal
Test plan
- Unit tests