
Jeff Garland <jeff <at> crystalclearsoftware.com> writes:
Why is
boost::super_string ss(s) ss.trim()
easier than
boost::trim(s)
It isn't -- except which header do you include again?
Agree, but we don't need a super_string class to solve that. A new header "boost/all_string_related_stuff.hpp" would be just as good.
And you have to remember that half the functions you might use are free functions while the other half are member functions.
Agree, but that is not unique for strings or even C++. Is "sort" and "find" member or free functions? At one point there was a proposal to allow both syntaxes in future C++. Don't know what happened to it. An alternative solution would be to add a few more string_algo functions like substr, find_* and all functions would be free just like in VB (begin, end, size is already available via range)
all the functions in one place. The signature for more advanced regex functions are much simpler with super_string. Many people don't even realize what's already in Boost (see other discussion in this thread).
But they will realize that super_string is available? I agree that string functionality is scattered into severeal places with maybe hard to find documentation but still don't understand why a new type is better than combining and unifying the documentation? (except that most of us programmers prefer to write code instead of documentation) Why stop at super_string? Next step is collosal_super_string which combines super_string with spirit, asio and sql.