QtCS2018 Serialisation
Jump to navigation
Jump to search
- Serialisation
* Binary JSON * mmapable() - zero alloc * deprecate, provide compat API to read * how to support reading from it? BJSON → JSON → Qt 6 API? * JSON > 128 MB * Needs to be fixed, before Qt 6 * CBOR * Should we have a public API that works for both JSON and CBOR? * A DOM Tree API * Could solve the editing-in-place issue (below) * QJSValue too? * QVariantMap * How to make sure people can't insert combinations not allowed in the output? * Do they do that? Maybe they won't write such code * We could use templates, specialising for CBOR, JSON, etc. * We could have a wrapper class that has inlines and provides only the possible combinations * QDataStream * QTextStream * Protobuf * QXmlStream{Reader,Writer}
- API for editing in place
* If you update an entry in a node, you have to update the chain leading to it
QCborValue foo; foo["s"] = "value"; // does not compile foo.toMap()["s"] = "value"; // updates the temporary!