Subject: Re: [boost] [gsoc]Boost.Ustr Unicode String Adapter First Preview
From: Anders Dalvander (boost_at_[hidden])
Date: 2011-06-18 07:00:17
On 20:59, Soares Chen Ruo Fei wrote:
> I would like to inform you all that the development repository for
> Boost Unicode String Adapter (now I call Boost.Ustr) is now available
> at GitHub: https://github.com/crf00/boost.ustr. I have been working
> closely with my mentor Chad Nelson on the design of the library, and
> now I'd like to show it to the community to gather some feedback
> before proceeding further on.
> Currently the main class, unicode_string_adapter, provides a uniform
> way for code point access from various string containers without
> having to concern about the underlying encoding and code units.
> unicode_string_adapter will not handle higher level Unicode processing
> tasks such as abstract characters, as I plan to leave the
> functionality to another class called unicode_abstract_character which
> I will build later.
The library looks very interesting. I like your approach that the
default iterator iterates over codepoints and not codeunits. I also like
the way you handle both mutable and immutable strings.
It would be very helpful with some kind of documentation or tutorial.
Just a few lines of sample code would help understand it better.
How does this library work with Artyom Beilis Boost.Locale library,
Mathias Gaunard Boost.Unicode library and ICU?
If the interoperability is good, then you probably don't need to create
an unicode_abstract_character class.
> At the moment my library only works under GCC with C++0x enabled, as I
> was focusing on the design issues first. I also understand that I have
> not adopted the Boost way of building the project. While I am now
> going to spend more time on fixing these issues, I hope that this
> discussion can have more focus on the design issues instead.
It would be great if it would work under VC++2010 as well. Would be a
lot easier (for me at least) to test and play with.
> Feel free to let me know any potential issues on the class design so
> that I can fix it before it is too late. Thank you!
I see a potential issue with the `unicode_string_adapter(const
raw_char_type* other)` constructor, as it won't know the encoding of the
string literal. See discussion between Ryou Ezoe and Artyom Beilis
during the Boost.Locale review.
> Soares Chen
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk