Thread overview
Type and interface checking
Aug 30, 2007
Frank Benoit
Aug 30, 2007
Myron Alexander
August 30, 2007
Hello!

How can I check if an object is of a certain class, or implements a certain interface?

Thanks

Hans-Eric Grönlund
http://www.hans-eric.com/
August 30, 2007
Hans-Eric Grönlund schrieb:
> Hello!
> 
> How can I check if an object is of a certain class, or implements a certain interface?
> 
> Thanks
> 
> Hans-Eric Grönlund
> http://www.hans-eric.com/


Object o = ....;

// full qualified class name
o.classinfo.name

// test if castable to class or interface
MyType t = cast(MyType)o;
if( t !is null ){
	// ok, it is castable
}

// short form
if( MyType t = cast(MyType)o ){
	// ok, it is castable
}
August 30, 2007
Hans-Eric Grönlund wrote:
> Hello!
> 
> How can I check if an object is of a certain class, or implements a certain interface?
> 
> Thanks
> 
> Hans-Eric Grönlund
> http://www.hans-eric.com/

You can use the cast operator to determine if something can be cast to a type. See attached example.

Regards,

Myron.