Hi all,

I'm hitting a problem that it's making crazy... is there any way to find out if the return of an `auto ref` function is actually ref or not?

So, according to the documentation [1] it depends on the return expressions... however in my case I'm implementing `opDispatch` in a wrapper type (and trying to carry over the ref-ness), so I don't know how can I check it.

Now, the whole point of this wrapper is to act differently based on whether the return is a reference or not (it already checks for `hasIndirections`, which btw doesn't help here either).

I've tried to use `__traits(isRef, ??? ) but I haven't been able to find out how to use it, it seems to be meant for parameters. Perhaps it would make sense to have something like `traits(isRef, return)`?

Also I have tried making two different overloads, with and without ref, but it didn't work either...

A.


[1]: https://dlang.org/spec/function.html#auto-ref-functions

Reply via email to