I'm trying to check that function has 'ref' parameter. The only way I found so far is to use std.traits.Parameters.

Here is the code I have:
    void f(int) {}
    void g(ref int) {}
    void main()
    {
        writeln(Parameters!f[0].stringof);
        writeln(__traits(isRef, Parameters!f[0]));
        writeln(Parameters!g.stringof);
        writeln(Parameters!g[0].stringof);
        writeln(__traits(isRef, Parameters!g[0]));
    }

The output is:
    int
    false
    (ref int)
    int
    false

"Parameters!g[0]" strips off 'ref' qualifier as you can see. How can I make it work?

Reply via email to