Can you shrink it further?
Stefan Koch via Digitalmars-d
digitalmars-d at puremagic.com
Wed Oct 12 03:33:05 PDT 2016
On Wednesday, 12 October 2016 at 10:15:17 UTC, Matthias Bentrup
wrote:
> On Wednesday, 12 October 2016 at 09:23:53 UTC, Stefan Koch
> wrote:
>> On Wednesday, 12 October 2016 at 08:56:59 UTC, Matthias
>> Bentrup wrote:
>>> [...]
>>
>> All three are slower than baseline, for my test-case.
>> What did you test it against.
>
> The blns.txt file mentioned upthread.
And what were your timings ?
BTW. the code you posted would not be a proper replacement for
utf8 popFront since our UTF8-popFront does handle depreacted
sequences correctly.
making it equivalent to this code :
void pfnew(ref char[] s) @trusted pure nothrow
{
immutable c = s[0];
uint char_length = 1;
if (c < 192)
{
Lend :
s = s.ptr[char_length .. s.length];
} else {
if (c < 192+32)
{
char_length = 2;
}
else if (c < 192+32+16)
{
char_length = 3;
}
else if (c < 192+32+16+8)
{
char_length = 4;
}
else if (c < 192+32+16+8+4)
{
char_length = 5;
}
else if (c < 192+32+16+8+4+2)
{
char_length = 6;
}
char_length = char_length > s.length ? s.length :
char_length;
goto Lend;
}
}
More information about the Digitalmars-d
mailing list