Re: Get name of current function

2017-04-23 Thread Stanislav Blinov via Digitalmars-d-learn

On Sunday, 23 April 2017 at 20:34:12 UTC, Mike B Johnson wrote:

I'd like to get the symbolic name of the current function I'm in

void foo()
{
writeln(thisFunc.stringof()); // prints foo
}

I need something short, elegant and doesn't require modifying 
preexisting code... I'm sure D has something along those lines?


__FUNCTION__ and __PRETTY_FUNCTION__

both will give qualified name though (e.g. module.foo), so, if 
necessary, that has to be stripped out manually.


Re: Get name of current function

2017-04-23 Thread cym13 via Digitalmars-d-learn

On Sunday, 23 April 2017 at 20:34:12 UTC, Mike B Johnson wrote:

I'd like to get the symbolic name of the current function I'm in

void foo()
{
writeln(thisFunc.stringof()); // prints foo
}

I need something short, elegant and doesn't require modifying 
preexisting code... I'm sure D has something along those lines?


So something like __FUNCTION__ or __PRETTY_FUNCTION__ ?

https://dlang.org/spec/traits.html#specialkeywords


Re: Get name of current function

2017-04-23 Thread Mike Wey via Digitalmars-d-learn

On 04/23/2017 10:34 PM, Mike B Johnson wrote:

I'd like to get the symbolic name of the current function I'm in

void foo()
{
 writeln(thisFunc.stringof()); // prints foo
}

I need something short, elegant and doesn't require modifying 
preexisting code... I'm sure D has something along those lines?


The __FUNCTION__ keyword would give you the fully qualified name of the 
function.


http://dlang.org/spec/traits.html#specialkeywords

--
Mike Wey


Get name of current function

2017-04-23 Thread Mike B Johnson via Digitalmars-d-learn

I'd like to get the symbolic name of the current function I'm in

void foo()
{
writeln(thisFunc.stringof()); // prints foo
}

I need something short, elegant and doesn't require modifying 
preexisting code... I'm sure D has something along those lines?