Given a raw memory area chunk, constructs an object of class type T at
that address. The constructor is passed the arguments Args.
If T is an inner class whose outer field can be used to access an instance
of the enclosing class, then Args must not be empty, and the first member of it
must be a valid initializer for that outer field. Correct initialization of
this field is essential to access members of the outer class inside T methods.
Preconditions:
chunk must be at least as large as T needs and should have an alignment
multiple of T's alignment. (The size of a class instance is obtained by using
__traits(classInstanceSize, T)).
Note:
This function can be @trusted if the corresponding constructor of T is @safe.
Given a raw memory area chunk, constructs an object of class type T at that address. The constructor is passed the arguments Args. If T is an inner class whose outer field can be used to access an instance of the enclosing class, then Args must not be empty, and the first member of it must be a valid initializer for that outer field. Correct initialization of this field is essential to access members of the outer class inside T methods. Preconditions: chunk must be at least as large as T needs and should have an alignment multiple of T's alignment. (The size of a class instance is obtained by using __traits(classInstanceSize, T)). Note: This function can be @trusted if the corresponding constructor of T is @safe.