On Sunday, 30 September 2012 at 21:34:36 UTC, Andrej Mitrovic
wrote:
On 9/30/12, jerro a...@a.com wrote:
I think this should work:
template returnsRef(alias f)
{
enum bool returnsRef = is(typeof(
{
ParameterTypeTuple!f param;
auto ptr = f(param);
}));
}
Yep.
How can I:
1) check if function returns by ref
2) check if function parameters are ref
..outside of function body. Is parsing typeof(func).stringof only
valid option?
On 9/30/12, mist n...@none.none wrote:
How can I:
1) check if function returns by ref
2) check if function parameters are ref
..outside of function body. Is parsing typeof(func).stringof only
valid option?
See ParameterStorageClassTuple in std.traits
http://dlang.org/phobos/std_traits.html
Thanks!
Unfortunately, return type issue is more important in my case.
I'll check if implementation from ParameterStorageClassTuple can
be adapted for return types though.
On Sunday, 30 September 2012 at 20:37:14 UTC, Andrej Mitrovic
wrote:
On 9/30/12, mist n...@none.none wrote:
How can I:
On Sunday, 30 September 2012 at 20:51:54 UTC, mist wrote:
Thanks!
Unfortunately, return type issue is more important in my case.
I'll check if implementation from ParameterStorageClassTuple
can be adapted for return types though.
I think this should work:
template returnsRef(alias f)
{
On 9/30/12, jerro a...@a.com wrote:
I think this should work:
template returnsRef(alias f)
{
enum bool returnsRef = is(typeof(
{
ParameterTypeTuple!f param;
auto ptr = f(param);
}));
}
Yep. We should add this to Phobos imo.
Thanks!
On Sunday, 30 September 2012 at 21:20:40 UTC, jerro wrote:
On Sunday, 30 September 2012 at 20:51:54 UTC, mist wrote:
Thanks!
Unfortunately, return type issue is more important in my case.
I'll check if implementation from ParameterStorageClassTuple
can be adapted for return types