On Wednesday, November 20, 2002, at 01:42 PM, Gennadiy Rozental wrote:

[Issue 3] Library seems to hardcode important part of functionality that
users may want to overwrite. Here I refer in most part to archive/object
preamble.

Major [Issue 3]: Submitted library is somewhat limited in a means to modify
what is written in archive header (I can change it but I will need to supply
full fledged specific archive cause currently this logic is in constructor).
And even more limited in a means to modify object header together with logic
bound to it. Let me give couple examples.

1. Serialization signature is 22 bytes. Let say I am serializing messages
into binary format for sending them through network. Size of my serialized
code is 10 bytes. I do not believe I could accept 22 bytes of "signature
information". The same about the version. I may or may not be interested in
versioning of serialization system.
2. Binary archive constructor save some "guard" information. I may or may
not want to do this. Or I may want to be even more careful.
3. Object save/load function contains pretty expensive logic for making sure
that object is stored/loaded only once. If for any reason (performance) I
could not afford constant searching but have external knowledge that all
objects are different I may want to skip lookup phase.
4. Let say I am sending data by contract. It could be fixed contract in
external file loaded during initialization or dynamic one sent before
sending real data. The purpose id to save the bandwidth and eliminate all
object/class ids from serialized stream. What should I do?
After playing some more and trying to read my old "legacy" serialization files which do not contain any such preamble I want to support Gennadiy's point. I would like for my archive classes (e.g. to read legacy archive formats) to override these preambles.

Matthias

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost


Reply via email to