In my programme I need to get names of function parameters when I pass some function reference to template function that does some manipulations with it. I have updated my copy of dmd to 2.064, because there was a bug in previous versions.
http://d.puremagic.com/issues/show_bug.cgi?id=9967

But I still can't implement the stuff that I wanted. I don't know is it bug or not, so I asking for help. I'm trying to do something like this:
//-------------------
module parameter_identifier_test;

import std.stdio, std.string, std.conv, std.traits, std.typecons;

void someFunc(int[] aaa, string[string] bbb, double ccc)
{
        
        writeln("Some function executed!!!");
}

void test(FunctionT)(FunctionT func)
{
        alias ParameterIdentifierTuple!(FunctionT) ParamNames;
pragma(msg, ParamNames); //Gives compilation output: tuple("", "", "")
        writeln(ParamNames);  //Gives empty string
}


void main()
{       
        test(&someFunc);
        
}
//------------------------

Live demo is available at: http://dpaste.dzfl.pl/32300c82

Is there some other way to get names of parameters in situation like this?

Reply via email to