I'm sure that's true, I've just always used it to gain access to members of embedded types, kinda of like abstraction for 'struct's. It hadn't occurred to me to support explicit casting in that way.
On 11/18/12 7:30 AM, Manu wrote:
On 18 November 2012 14:01, David Nadlinger <see@klickverbot.at
<mailto:see@klickverbot.at>> wrote:
On Sunday, 18 November 2012 at 11:21:37 UTC, Manu wrote:
someFloat = someHalf <- doesn't work, because a cast operator
expects an
explicit cast, even though this is a lossless conversion and
should be
exactly the same as someDouble = someFloat.
Thoughts?
---
struct Half {
float toFloat() { return 3.14f; }
alias toFloat this;
}
void test() {
Half h;
float f = h;
double d = h;
}
---
Works for you?
Interesting approach to the implicit cast problem. Very handy trick.
Well that was quite explicitly part of the purpose of alias this.
Andrei