Print out the name of a type

monarch_dodra monarchdodra at gmail.com
Thu Jul 4 07:55:09 PDT 2013


On Thursday, 4 July 2013 at 14:51:21 UTC, Artur Skawina wrote:
> On 07/04/13 16:46, Joseph Rushton Wakeling wrote:
>> Suppose I've got a function that is conditional on a type:
>> 
>>     void foo(T)(/* input vars */) { ... }
>> 
>> How could I print out using writeln the name of that type?  So 
>> that if I call
>> 
>>     foo!double(...);
>> 
>> ... I would see:
>> 
>>     Today, Michael, I'm going to be a double!
>
>     writeln("Today, Michael, I'm going to be a "~T.stringof~"!")
>
> artur

What he said. Or if you don't even have T, use 
"typeof(t).stringof".

This also works in pragma msg:
pragma(msg, T.stringof);


More information about the Digitalmars-d-learn mailing list