Hi all, Thank you for the discussions at QtCS19! The notes regarding the session on serialization are on the wiki: https://wiki.qt.io/Rethinking_serialization_for_Qt6
To summarize: - Although it seemed strange to many people, it is possible to provide an API so that a single T::zap() method can read/write T instances to many different Qt APIs : Json, Cbor, Xml, and even QAbstractItemModel to interact with SQL tables, TableView and TreeView widgets. - When QMetaObject is available, serialization to/from these Qt APIs can be done automatically using reflection. - This API is a little bit like an external protobuf schema except it does not require external tools and does not need to generate intermediate data structures. - It provides simpler and safer read/write to these Qt APIs, easy customization similar to Python list comprehensions, and a lot of flexibility in choosing data formats, so that the very small runtime overhead is usually negligible. Action items : - Thiago recognized that this kind of API would be valuable to Qt users but at least the naming is problematic, so he should provide feedback before it can be pushed to and reviewed on gerrit - Other contributors can review the initial Qt proposal on github: https://github.com/arnaud-clere/qtbase/compare/63a1a30a014eb75a67c390a16faa9aeb03a4a012...HEAD or the proof of concept and benchmark on the original research project: https://gricad-gitlab.univ-grenoble-alpes.fr/modmed/modmedLog/tree/master/tests/QBind Cheers, Arnaud RépondreTransférer
_______________________________________________ Development mailing list [email protected] https://lists.qt-project.org/listinfo/development
