$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Jeff Garland (jeff_at_[hidden])
Date: 2004-04-18 20:48:18
On Mon, 19 Apr 2004 00:43:51 +0000 (UTC), Matthew Vogt wrote
> Jeff Garland <jeff <at> crystalclearsoftware.com> writes:
>
> Yes, the documentation here won't need to be extensive. Just
> describe the initialisation phase of an archive (writing the
> preamble), and describe the difference between overriding the 'save',
> 'save_override' and 'operator<<' options. Possibly, the
> 'version_type', 'tracking_type' etc. elements should be described in
> more detail.
>
> Would there be any reason for an archive to modify the object registration
> process?
Yes, for 'random access' archives (think relational database buffer here) it's
possible the archive process will need additional meta-data not provided in
the base library setup (think mapping of classes to tables and attributes to
columns). And yes, I've implemented this one before as well -- it's a very
handy bit of infrastructure. I think in the past Robert has considered this
"out of scope", but in fact I believe given the current library it could now
be done by writing and archive and perhaps some enhancements to the registration.
BTW, I think the references should include a reference to this paper which
discusses many of these variations and design issues.
http://www.ubilab.org/publications/print_versions/pdf/plop-96-serializer.pdf
Of course, the modern C++ approach of this library wisely eschews inheritence
in favor of templates, but the concepts are still the same.
Jeff