
On Mon, 08 Nov 2004 11:07:16 -0500, Beman Dawes wrote
* Adding a dependency to the serialization library isn't a good idea either. No matter how nice boost.serialization is, some boost.filesystem users will not wish to use it, and will not want the dependency.
Since the needed code for serialization is basically a template function the dependency can be limited to those using serialization by having a new header for serialization code. So in date-time we have something like: #include <boost/date_time/posix_time/time_serialize.hpp> Filesystem could do something similar.
Class path already has a member, path::string(), which in the current implementation returns a reference to m_path, and in any implementation must return the equivalent of a const reference to m_path. Going the other way, the append function can be used to import a serialized string. I'm not familiar with how boost.serialization works, but wouldn't you be better off to use those already public functions for serialization?
If not, I'm willing to make m_path protected, but would like to explore other approaches to the serialization problem first.
I think you could easily write your serialization functions to just use the string() interface. Jeff