Policy for exposing range structs

Steven Schveighoffer via Digitalmars-d digitalmars-d at puremagic.com
Thu Mar 31 07:04:14 PDT 2016


On 3/31/16 9:38 AM, Adam D. Ruppe wrote:

> Of course, a chain of voldemort types will still include that type as a
> template argument in the next call, so names as a whole can still be
> very long, but how long are your chains? I can see this becoming a 10 KB
> long name in extreme circumstances (still yikes) but not megabytes.

If you are hashing anyway, just hash the hash :) In other words, this 
function:

auto foo(T)(T t)
{
    static struct R {}
    return R;
}

would result in a return type of a hash, with no care about whether T 
was a hashed symbol or not. This puts a cap on the size of the name, it 
would never get that big.

-Steve


More information about the Digitalmars-d mailing list