Little demo of allowing basic types to implement interfaces.

Rory McGuire rjmcguire at gmail.com
Wed Sep 4 02:48:36 PDT 2013


Thanks, the exact example is exceptions. Was working really late the day
that it wasn't working :D my bad. The following is what I was after, which
I really thought I had tried.

class BaseException : Exception {
    this(string s="", string file = __FILE__, int line = __LINE__) {
        super(s, file, line);
    }
}


On Wed, Sep 4, 2013 at 11:33 AM, Dicebot <public at dicebot.lv> wrote:

> On Wednesday, 4 September 2013 at 09:23:44 UTC, Rory McGuire wrote:
>
>> thanks, yes, I just found that in TDPL. knew it was templates but forgot
>> about template mixins.
>>
>> Do you know how to get a default parameter like __MODULE__ or __LINE__ to
>> be used from the calling site?
>> I've tried but I think my DMD is broken because it doesn't even work when
>> I
>> subclass Exception().
>>
>
> Special tokens like __LINE__ in default parameters are evaluated at the
> call site: http://dpaste.dzfl.pl/f7b9dfcf
>
> It does not help though, because you don't need __MODULE__ of the call
> site, you need list of modules it has imported in exact call scope.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d-announce/attachments/20130904/976eff64/attachment-0001.html>


More information about the Digitalmars-d-announce mailing list