On 2011-01-19 18:28, %u wrote:
Is this what you're looking for?:
No. :)
(Though you already found this out at the end!)
I was looking for some way to keep the storage classes and any other (meta)data
about the parameters that may be added in the future to the library. I have a
feeling this might be a very big change in how DMD handles parameters, but
without
this feature, perfect redirection -- which I think is possible in C++0x -- would
be impossible in D.
The ugly solution would be to do this:
void test (ref int a) { }
void main ()
{
writeln(typeof(&test).stringof);
}
Which will print: "void function(ref int a)" and then parse out what you
need.
My suggestion would be that we treat "ref", "out", and "lazy" as type
constructors
rather than storage specifiers; that way, we could get rid of the concept of
storage classes entirely, and it would unify the concept of references with
other
languages like C# and C++.
How does this idea sound? :) (I think it's easier said than done, though...)
--
/Jacob Carlborg