Skip to content
This repository was archived by the owner on Oct 12, 2022. It is now read-only.

Commit ebe9aae

Browse files
committed
Move emplace to object.d for symmetry with destroy.
1 parent 8b02a86 commit ebe9aae

3 files changed

Lines changed: 1305 additions & 8 deletions

File tree

changelog/emplace.dd

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Moved `std.conv.emplace` to object.d
2+
3+
`emplace` is the direct counterpart to `destroy`, so it has been moved to also live in object.d where it is accessible by projects that use a shallow runtime library stack.

src/core/internal/traits.d

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -153,14 +153,14 @@ template isInnerClass(T) if (is(T == class))
153153
template hasOuterMember(T...)
154154
{
155155
static if (T.length == 0)
156-
enum hasOuterMember = false;
156+
enum hasOuterMember = false;
157157
else
158-
enum hasOuterMember = T[0] == "outer" || hasOuterMember!(T[1 .. $]);
158+
enum hasOuterMember = T[0] == "outer" || hasOuterMember!(T[1 .. $]);
159159
}
160160
enum isInnerClass = __traits(isSame, typeof(T.outer), __traits(parent, T)) && !hasOuterMember!(__traits(allMembers, T));
161161
}
162162
else
163-
enum isInnerClass = false;
163+
enum isInnerClass = false;
164164
}
165165

166166
template dtorIsNothrow(T)
@@ -206,11 +206,11 @@ template anySatisfy(alias F, T...)
206206
private template maxAlignment(U...)
207207
{
208208
static if (U.length == 0)
209-
static assert(0);
209+
static assert(0);
210210
else static if (U.length == 1)
211-
enum maxAlignment = U[0].alignof;
211+
enum maxAlignment = U[0].alignof;
212212
else static if (U.length == 2)
213-
enum maxAlignment = U[0].alignof > U[1].alignof ? U[0].alignof : U[1].alignof;
213+
enum maxAlignment = U[0].alignof > U[1].alignof ? U[0].alignof : U[1].alignof;
214214
else
215215
{
216216
enum a = maxAlignment!(U[0 .. ($+1)/2]);
@@ -274,8 +274,8 @@ template hasElaborateAssign(S)
274274
else static if (is(S == struct))
275275
{
276276
enum hasElaborateAssign = is(typeof(S.init.opAssign(rvalueOf!S))) ||
277-
is(typeof(S.init.opAssign(lvalueOf!S))) ||
278-
anySatisfy!(.hasElaborateAssign, FieldTypeTuple!S);
277+
is(typeof(S.init.opAssign(lvalueOf!S))) ||
278+
anySatisfy!(.hasElaborateAssign, FieldTypeTuple!S);
279279
}
280280
else
281281
{

0 commit comments

Comments
 (0)