The Sweet With

Jarrett Billingsley jarrett.billingsley at gmail.com
Tue Mar 3 11:54:04 PST 2009


On Tue, Mar 3, 2009 at 1:50 PM, Walter Bright
<newshound1 at digitalmars.com> wrote:
> Tomasz Sowi&#324;ski wrote:
>>
>> Ideas for features based on the with.
>>
>> The with can make calling functions with enum arguments sexier. So instead
>> of:
>> auto d = dirEntries(".", SpanMode.breadth);
>>
>> you could say:
>> auto d = dirEntries(".", breadth);
>>
>> by declaring the function as:
>> dirEntries(string path, with SpanMode mode);    // "with" does the trick
>
> It looks nice, but has a subtle and disastrous problem. In D, arguments are
> fully resolved *before* overloading is done. If some of the overloads have
> with declarations, then there's a nightmarish problem of trying to mix
> overloading and argument resolution together.

What about the feature you mentioned at the D con, about being able to
use enums without the enum name?  Or will/would that only be for
things where it's really obvious, like switch statements?



More information about the Digitalmars-d mailing list