Escaping the Tyranny of the GC: std.rcstring, first blood

Andrei Alexandrescu via Digitalmars-d digitalmars-d at puremagic.com
Sat Sep 20 10:06:48 PDT 2014


On 9/20/14, 8:54 AM, "Nordlöw" wrote:
> On Saturday, 20 September 2014 at 15:21:18 UTC, Nordlöw wrote:
>> for RCString? I'm guessing there are two cases here;
>
> I'm guessing
>
>      size_t toHash() const @trusted pure nothrow
>      {
>          import core.internal.hash : hashOf;
>          if (isSmall)
>          {
>              return this.small.hashOf;
>          }
>          else
>          {
>              return this.large[].hashOf;
>          }
>      }

Why not just "return this.asSlice.hashOf;"?

> Will
>
>      this.large[].hashOf
>
> do unneccessary GC-allocations? -vgc says nothing.

No.


Andrei



More information about the Digitalmars-d mailing list