Hi. Is it possible to write in D something like this?
``` abstract class MyClass(T) { public: @property const(T) value(){return _value;} @property void value(T val){_value = val;} ... private: T _value; ... } ... class MyClassFloat: MyClass!float ... class MyClassInt: MyClass!int ... void main() { MyClass[] someArray; someArray ~= new MyClassFloat(); ... someArray ~= new MyClassInt(); ... foreach(myClass; someArray) if(typeid(myClass) == typeid(MyClassInt)) myClass.value = 999; else myClass.value = 123.45f; ... } ``` When I trying to compile code like above I got Error: class MyClass(T) is used as a type.