digitalmars.D.learn - overloadable implicit cast
- =?ISO-8859-1?Q?Adam_Cig=E1nek?= <adam.ciganek gmail.com> Oct 26 2010
- Jesse Phillips <jessekphillips+D gmail.com> Oct 26 2010
Hello,
Is it possible to make a type implicitly cast to another type?
Something like overloading opCast, but make it so it's used
implicitly. Or is there implicit casting in D at all?
Pseudo-example:
// hypothetical implicit cast:
A opImplicitCast(T)(B b) if (is(T == A)) {
// convert b to A somehow;
}
void do_stuff(A a) {
// do some stuff with a;
}
A a;
B b;
do_stuff(b); // equivalent to do_stuff(opImplicitCast(A)(b));
adam.
Oct 26 2010
Adam Cigánek Wrote:Hello, Is it possible to make a type implicitly cast to another type? Something like overloading opCast, but make it so it's used implicitly. Or is there implicit casting in D at all?
OpImplicitCast was planed to be added, but it has been superseded by alias this. Due to many bugs related to alias this, it is mostly unusable.
Oct 26 2010








Jesse Phillips <jessekphillips+D gmail.com>