|
Boost : |
From: Jeff Garland (jeff_at_[hidden])
Date: 2006-10-12 20:47:01
loufoque wrote:
> Jeff Garland wrote:
>> loufoque wrote:
>>> Something more flexible might be an interesting base.
>> Such as? What features would it have that would make it more flexible?
>
> The ability to build the string type on top of std::string, std::vector,
> std::rogue, or anything else.
> Something like flex_string, basically.
....
> std::rope, of course.
sgi::rope I presume.
This is a legitimate request. The issue came up during the 1st round of
discussions and I prototyped and then dropped the approach. Here was the
rationale I posted in July:
I dropped the string_type template parameter after actually doing the
implementation of const_super_string. The reality is that the
implementation relies on the underlying string type and you can't just
drop in a new base string type easily. The likelihood of using that
parameter seems rather remote. And the extra parameter complicates
the documentation and the usage interface -- of which the goal is to
make as easy as possible.
Now it could be that my view was clouded by the difficulty of the const_string
experience. That may have been atypical because it is a mutable/immutable
string variation which requires different interfaces. Plus const_string
doesn't match all the std::string interfaces.
Anyway, I'd be willing to reopen the discussion on this decision if people are
really using lots of alternative string types. I still think the usefulness is
dubious. Besides, these alternate string types should already have the
super_string features...right ;-)
Jeff
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk