
On Fri, Jun 18, 2010 at 6:38 AM, Stewart, Robert <Robert.Stewart@sig.com> wrote:
Beman Dawes wrote:
To speed the process, I'll just give a progress report rather than respond individually prior messages.
Apparently, by virtue of not mentioning my suggestion in this omnibus reply, you rejected my idea of a string algorithm for doing the quoting and unquoting which forms the foundation of the insertion and extraction manipulators. I still think that is the best approach as it doesn't force the use of std::stringstream to get a quoted or unquoted string from an existing string while still supporting the IOStream insertion and extraction needed by Filesystem.
In principle, I agree with you. In practice, I don't really want to take the time to develop the algorithms, tests, documentation, etc. Perhaps someone else could take that on.
* I like quote and unquote as the names. Source changed.
Given the name change, my suggestion is for "quoted" as the manipulator -- for both insertion and extraction -- and "quote" and "unquote" for the algorithms.
I've already changed the manipulator name to "quoted". See https://svn.boost.org/svn/boost/branches/filesystem3/boost/io/quoted_manip.h...
* Since these functions are I/O manipulators, and only work in that context, I've renamed the header "quote_manip.hpp".
* Likewise, the library that makes the most sense to add the header too is io. So the include path will be <boost/io/quote_manip.hpp>. IO is a small library, and targets exactly the same area of the standard library.
That's reasonable for the manipulators, but the algorithms on which they'd be based, given my suggestion, should be in StringAlgos.
Agreed. --Beman