Boost logo

Boost Users :

From: craigp (craigp98072_at_[hidden])
Date: 2006-12-16 22:12:43


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

>
> >> (and given how it's
> >> defined and used, there seems to be no way of overriding via
> >> template specialization).
>
> There is ALWAYS a way. If nothing else works you can wrap your type in its
> own class/struct and serialize that with inline funcitions. In this way you
> can do things like serializing a pointer to an integer which would normally
> not possible as the implementation level is primitive.

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).
 
> >> 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).

thanks!
--craig


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