www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Variants for interfaces

reply Mandeep Singh Brar <maninder brars.co.in> writes:
Hi,

Is it possible to point a variable to an interface. The below code does not
compile.

module testD;
import std.stream;
import std.stdio;
import std.variant;

interface A {
	void func1();
}
class AC: A {
	void func1() {
		writeln("func1");
	}
}
int main() {
	A a = new AC();
	a.func1();
	Variant b = Variant(a);
	return 0;
}

It says that opEquals is not defined for the interface.

Thanks & Regards
Mandeep
Jan 07 2011
parent Jesse Phillips <jessekphillips+D gmail.com> writes:
Mandeep Singh Brar Wrote:

 Hi,
 
 Is it possible to point a variable to an interface. The below code does not
compile.
 
 module testD;
 import std.stream;
 import std.stdio;
 import std.variant;
 
 interface A {
 	void func1();
 }
 class AC: A {
 	void func1() {
 		writeln("func1");
 	}
 }
 int main() {
 	A a = new AC();
 	a.func1();
 	Variant b = Variant(a);
 	return 0;
 }
 
 It says that opEquals is not defined for the interface.
 
 Thanks & Regards
 Mandeep

I suggest submitting it as a bug: http://d.puremagic.com/issues/
Jan 07 2011