how to get enclosing function as symbol ? (eg: __function__.stringof ==__FUNCTION__)
JS
js.mdnq at gmail.com
Sat Aug 17 19:50:28 PDT 2013
On Sunday, 18 August 2013 at 01:52:50 UTC, Timothee Cour wrote:
> Is there any way to get the enclosing function as symbol ?
>
> I'd like something like that:
> alternative names would be:
> __function__
> __context__
>
> ----
> auto fun(alias caller=__function__)(){
> //caller represents fun1!double
> return ReturnType!caller.init;
> }
>
> T fun1(T)(T x){
> assert(__function__.stringof==__FUNCTION__);
> alias fun=__function__;
> assert( is(ReturnType! __function__) == T);
> return fun();
> }
> void main(){fun1!double();}
> ----
use a string mixin?
More information about the Digitalmars-d-learn
mailing list