Boost logo

Boost Users :

From: Robert Ramey (ramey_at_[hidden])
Date: 2006-03-11 17:58:59


Carlo Wood wrote:
> On Fri, Mar 10, 2006 at 09:16:27PM -0800, Robert Ramey wrote:
>> 'Carlo Wood' wrote:
>>> I really need to serialize iterators, how can I do that?
>>
>> I don't think it would be all that tough - but it would require
>> fairly intimat knowledge of how the standard containers
>> and iterators work. Feel free to do it.
>>
>> Good Luck
>>
>> Robert Ramey
>
> I asked you first in a private mail, and all you had to
> say was: interesting question! Ask it on one of boosts
> mailinglists and I'll answer it there.
>
> Is the above the "Answer" you had in mind?

I was hoping someone else might have a better answer. For
all I know someone has already done this and might be willing
to post it to the vault.

> 1) WHY does boost::serialization not support serialization
> of iterators?

No one has done it. In fact, no one has yet even mentioned
it so it doesn't seem to be a common desire. I concede
it might be useful or even indispensable.

> 2) Why does the documentation not mention this?

The mentions the things that are included. It would make the
documentation too long to mention all the things that are not
included.

> 3) My original question hasn't been answered: How can
> one serialize iterators with boost::serialization?
> Imho, it requires intimate knowledge of the serialization
> library a lot more than knowledge of the STL;

OK - I'll concede it requires pretty good knowledge of both.

> which is why I think this should be added to the library by people
> who are already familiar with how this library works (you).

lol - I can sympathize even though I might disagree. I am a contract
software developer/consultant so every hour I spend on
boost is one hour I can't dedicate to earning a living. When
I'm out of work I can spend some time on it but that's not
currently the case. Currently I can't afford to spend the time to do it.

Of course if your company wants to hire me to add this, that
might change the situation somewhat.

> I suppose that 'tracking' needs to be turned on for
> something, but for what? The iterator type(s)? Will that
> then work? I cannot answer those questions without
> knowing the details of how this library works.

I would have to consider this issue in more depth before
I could answer those questions. The documentation should
contain all the information required to implement this. If it
doesn't, then I would prefer to invest effort in improving the
manual.

> I think it's unfair to tell me "good luck".

maybe -maybe I was a tiny bit dismisive but I didn't mean
any offense.

The real an interesting question here is

"What is the serialization library"

There are two ways of looking at:

a) All the code needed to serialze data in C++ programs.
or
b) All the code need to construct archives and serializers
along with useful implementation examples.

Of course it's both. But from my perspective it has to be b). My
interest now runs to fixing the most arcane bugs, investigating
performance issues, and improving the documentation to
make it easier to do the kinds of things you mention.

Robert Ramey


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net