
Untitled
By: a guest on
May 7th, 2012 | syntax:
D | size: 0.69 KB | hits: 38 | expires: Never
module foo;
import std.stdio;
class Foo
{
private this ()
{
writeln("ads");
}
}
module test;
import std.stdio;
import foo;
version (LDC)
extern (C) Object _d_allocclass(ClassInfo);
else
extern (C) Object _d_newclass(ClassInfo);
Object newInstance (ClassInfo classInfo)
{
version (LDC)
{
Object object = _d_allocclass(classInfo);
(cast(byte*) object)[0 .. classInfo.init.length] = classInfo.init[];
return object;
}
else
return _d_newclass(classInfo);
}
void main()
{
auto f = cast(Foo) newInstance(Foo.classinfo);
auto a = &f.__ctor;
a();
}