equivariant functions
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Mon Oct 13 05:28:09 PDT 2008
ore-sama wrote:
> Andrei Alexandrescu Wrote:
>
>> typeof(s) stripl(const(char)[] s);
>>
>> This signature states that it returns the same type as an argument. I
>> propose that that pattern means stripl can accept _any_ subtype of
>> const(char)[] and return that exact type. Inside the function, however,
>> the type of s is the type declared, thus restricting its use.
>
> this conflicts with current definition of typeof. Currently
> typeof(s) stripl(const(char)[] s); should be interpreted exactly as
> const(char)[] stripl(const(char)[] s);
> it's unclear that typeof here gets type of actual argument rather than parameter. Currently typeof applies to parameter.
That is correct.
Andrei
More information about the Digitalmars-d
mailing list