Boost logo

Boost Users :

From: Robert Ramey (ramey_at_[hidden])
Date: 2006-12-17 01:40:54


If I remember correctly, I handled enums as integers because I had to do it
this way to get it passed some compilers - probably borland. I suspect that
it didn't distinguish between enums and integers. And I don't know if
different enums are considered different types by different compilers.

craigp wrote:
> Robert Ramey <ramey <at> rrsd.com> writes:
>

> wrapping each enum in a special class doesn't seem an acceptable
> work-around. is there a reason to not allow users to override enums
> like other types? all it would take would be to move it out of
> archive/details and into the serialization directory (although if you
> required users to explicitly #include enum.hpp would probably break
> some existing code).

It would also be easy to handle enums in your own archive class derived from
xml_archive.
E.G. craigs_xml_i/oarchive which handles enums they way you want and passes
everything
else to the base class. This is is pretty easy. See
demo_portable_archive.

>>>> Perhaps save_enum_type and save_array_type could be put into a
>>>> separate header (out of the archive/detail and maybe into
>>>> boost/serialization along with vector.hpp, etc)?
>>
>> arrays have been broken out in the 1.35 version.
>
> there's save_enum_type() and save_array_type() in that file; is the
> latter dead code? i don't want, for example, the counts serialized (i
> need fine control of the output to make it comply with an xml-schema).

I didn't included that, you'll have to investigate what its for and how it
gets called.

>
> thanks!

You're welcome!

> --craig

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