std.conv.emplace  - multiple declarations
				Function emplace
Given a pointer chunk to uninitialized memory (but already typed
as T), constructs an object of non-class type T at that
address. If T is a class, initializes the class reference to null.
						
				T* emplace(T)
				(
				
				  T* chunk
				
				) pure nothrow @safe;
						
					
				Returns
A pointer to the newly constructed object (which is the same
as chunk).
Example
static struct S
{
    int i = 42;
}
S[2] s2 = void;
emplace(&s2);
assert(s2[0]Example
interface I {}
class K : I {}
K k = void;
emplace(&k);
assert(k is null);
I i = void;
emplace(&i);
assert(i is null);
Function emplace
Given a pointer chunk to uninitialized memory (but already typed
as a non-class type T), constructs an object of type T at
that address from arguments args. If T is a class, initializes
the class reference to args[0].
						
				T* emplace(T, Args...)
				(
				
				  T* chunk,
				
				  auto ref Args args
				
				)
				
				if (is(T == struct) || Args
				This function can be @trusted if the corresponding constructor of
T is @safe.
Returns
A pointer to the newly constructed object (which is the same
as chunk).
Example
int a;
int b = 42;
writeln(*emplace!int(&a, b)); // 42
Function emplace
Given a raw memory area chunk (but already typed as a class type T),
constructs an object of class type T at that address. The constructor
is passed the arguments Args.
						
				T emplace(T, Args...)
				(
				
				  T chunk,
				
				  auto ref Args args
				
				)
				
				if (is(T == class));
						
					
				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.
Note
This function is @safe if the corresponding constructor of T is @safe.
Returns
The newly constructed object.
Example
() @safe {
    class SafeClass
    {
        int x;
        @safe this(int x) { thisFunction emplace
Given a raw memory area chunk, constructs an object of class type T at
that address. The constructor is passed the arguments Args.
						
				T emplace(T, Args...)
				(
				
				  void[] chunk,
				
				  auto ref Args args
				
				)
				
				if (is(T == class));
						
					
				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.
Returns
The newly constructed object.
Example
static class C
{
    int i;
    this(int i){thisFunction emplace
Given a raw memory area chunk, constructs an object of non-class type T at that address. The constructor is passed the
arguments args, if any.
						
				T* emplace(T, Args...)
				(
				
				  void[] chunk,
				
				  auto ref Args args
				
				)
				
				if (!is(T == class));
						
					
				Preconditions
chunk must be at least as large
as T needs and should have an alignment multiple of T's
alignment.
Note
This function can be @trusted if the corresponding constructor of
T is @safe.
Returns
A pointer to the newly constructed object.
Example
struct S
{
    int a, b;
}
auto buf = new void[SAuthors
Walter Bright, Andrei Alexandrescu, Shin Fujishiro, Adam D. Ruppe, Kenji Hara