|
Boost : |
From: Peter Dimov (pdimov_at_[hidden])
Date: 2005-06-25 06:16:36
Robert Ramey wrote:
> David Abrahams wrote:
>> "Jeff Garland" <jeff_at_[hidden]> writes:
[...]
>> The hashing idea is a lot closer to the mark.
>
> Not in my view
I find that very odd, since you later go on to say that this statement:
>>> NOTE: due to a change in the serialization library interface, it is
>>> now required that all streamable objects be const prior to writing
>>> to the archive.
in inaccurate (which it isn't), and explain that:
> What is true is that the state of an object should not be changed
> durring the process of serialization. That is the statement made by
> save(Archive &ar, const T & t).
The hash check does exactly that, verify that the state of the object hasn't
changed.
Anyway; have you considered making the default tracking level to only track
pointer saves but not value saves? This would instantly marginalize the
problem. Mixing object saves and pointer saves is fairly unreliable since
it's order dependent (and will create problems later on if the object is
versioned), but if one wants to use the library in such a way, the option to
enable full tracking would still be there (and get the full const
treatment).
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk