-----Original Message-----
> From: Bogdan Vatra <[email protected]> 
>
> It will be great if we can find a way to use it any (de)serialization 
> mechanism (e.g. proto buff, flat buffers, etc.) not only with only one (qt 
> specific).

As explained in the answer to Simon, QBind replaces .proto files with C++ 
functions to not require external tools. 
It is probable although uncertain that protobuf's binary encoding [1] can be 
read/written by QBind.
But the corresponding IBind implementation would not be trivial as it would 
need to map record's item names to unique integers and stack the current data 
structure that is implicit in the binary encoding.
It is even more probable that flatbuffers could have an IBind implementation 
since they claim to not erase any information but I did not look at the 
details[2].

FWIU, both protobuf and flatbuffers achieve ultimate performance by mandating 
that you use their generated data structures even though you can hide them in 
your own classes (where you can also add behavior).

Although QBind may be compatible with their binary encodings, it could not 
provide the same performance, just approach it.
OTOH, the approach of QBind keeps the data format and C++ types more cleanly 
separated and requires no tool nor separately compiled data structures.

Arnaud

[1] https://developers.google.com/protocol-buffers/docs/encoding
[2] https://google.github.io/flatbuffers/flatbuffers_internals.html 
_______________________________________________
Development mailing list
[email protected]
https://lists.qt-project.org/listinfo/development

Reply via email to