-
-
Notifications
You must be signed in to change notification settings - Fork 33.5k
Description
I wanted to propose this issue as a top-level home for discussions from multiple issues, amongst #2133, #3145.
Both issues are too big to have immediate action (judging from what I have read), but they have a serializer/deserializer feature in common, node
, c++
and v8
are not providing out of the box. @bnoordhuis mentioned that it seems to be unrealistic to drag in Blink
code because of the many dependencies within that repo. I had a look also into their WebWorker
implementation, which is fairly huge.
(Ignoring the WebWorker and IPC discussion) the question would be whether we first wanted to provide an efficient serializer/ deserializer + transferables of c++ objects, which might aid a lot of problems at once and also be a nice standalone feature.
Reading up on this from various c++ resources this is of course a non-trivial task. Whereas I also don't believe there will ever be a single method for arbitrary object serialization (please prove me wrong), due to the way v8 works. We would need to judge this before hand because that means a lot of serialization strategies would be insufficient for us.
As a quick guess, that would probably lead us to implement ::serialize()
methods per Class, no matter if binary or text, which would ensure serilization happens correctly at dev / build time.