Ready for review: new std.uni
Dmitry Olshansky
dmitry.olsh at gmail.com
Sat Jan 12 23:00:50 PST 2013
13-Jan-2013 03:39, Walter Bright пишет:
> On 1/11/2013 11:31 AM, Dmitry Olshansky wrote:
>> And documentation:
>> http://blackwhale.github.com/phobos/uni.html
>
> struct InversionList:
>
>
> length() returns "number of characters", while "empty()" returns true if
> there are no codepoints.
>
> Aren't the two redundant?
Containers commonly have both. But maybe I should kill length on
different grounds because it's computed by walking the array of
intervals [a, b) and summing up (b-a) lengths. It's O(N).... ouch.
The only problem is that then it's not at all obvious that length is
better calculated via:
reduce!"a + (b[1] - b[0])"(set.byInterval, 0);
vs
walkLength(set.byChar);
where the latter may take enormous time to finish on common sets.
(damn it should by DChar at least)
> And should it be characters or codepoints?
Codepoints, everything works on codepoints, that is dchars. A character
is a Grapheme. So all mentions of character that slipped through got to
be fixed.
--
Dmitry Olshansky
More information about the Digitalmars-d
mailing list