Safe cast

Виталий Фадеев vital.fadeev at gmail.com
Fri Mar 6 12:35:29 UTC 2020


Searching info for object casting with checking class type at 
runtime.

Like this:

class A
{
     //
}

class B
{
     int bVar;
}


unittest
{
     A a = new A();

     A x = cast( A )a;     // ok
     A x = cast( B )a;     // ok, but unsafe
     A x = safeCast( B )a; // throw exception
     A x = safeCast( A )a; // ok
}


Searching some like next:

T safeCast( CLS )( CLS o )
{
   ... // checking type of o
   ... // may be check ClassInfo...
   return T;
}

Has function like a safeCast() ?
Or other solution ? ...



More information about the Digitalmars-d-learn mailing list