Skip to content

Commit

Permalink
swap isAssignable and !hasElaborateAssign
Browse files Browse the repository at this point in the history
  • Loading branch information
monarchdodra committed Feb 16, 2014
1 parent 5930a3c commit 9515208
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 7 deletions.
2 changes: 1 addition & 1 deletion std/algorithm.d
Expand Up @@ -7202,7 +7202,7 @@ minCount(alias pred = "a < b", Range)(Range range)
}
return RetType(least.front, occurrences);
}
else static if (isAssignable!(UT, T) || (isAssignable!UT && !hasElaborateAssign!UT))
else static if (isAssignable!(UT, T) || (!hasElaborateAssign!UT && isAssignable!UT))
{
UT v = UT.init;
static if (isAssignable!(UT, T)) v = range.front;
Expand Down
12 changes: 6 additions & 6 deletions std/conv.d
Expand Up @@ -3811,7 +3811,7 @@ if (!is(T == struct) && Args.length == 1)
static if (is(Arg : T))
{
//Matching static array
static if (isAssignable!(T, Arg) && !hasElaborateAssign!T)
static if (!hasElaborateAssign!T && isAssignable!(T, Arg))
chunk = arg;
else static if (is(UArg == T))
{
Expand All @@ -3825,7 +3825,7 @@ if (!is(T == struct) && Args.length == 1)
else static if (is(Arg : E[]))
{
//Matching dynamic array
static if (is(typeof(chunk[] = arg[])) && !hasElaborateAssign!T)
static if (!hasElaborateAssign!T && is(typeof(chunk[] = arg[])))
chunk[] = arg[];
else static if (is(UArg == E[]))
{
Expand All @@ -3840,7 +3840,7 @@ if (!is(T == struct) && Args.length == 1)
else static if (is(Arg : E))
{
//Case matching single element to array.
static if (is(typeof(chunk[] = arg)) && !hasElaborateAssign!T)
static if (!hasElaborateAssign!T && is(typeof(chunk[] = arg)))
chunk[] = arg;
else static if (is(UArg == E))
{
Expand All @@ -3860,7 +3860,7 @@ if (!is(T == struct) && Args.length == 1)
//Final case for everything else:
//Types that don't match (int to uint[2])
//Recursion for multidimensions
static if (is(typeof(chunk[] = arg)) && !hasElaborateAssign!T)
static if (!hasElaborateAssign!T && is(typeof(chunk[] = arg)))
chunk[] = arg;
else
foreach(i; 0 .. N)
Expand Down Expand Up @@ -3891,7 +3891,7 @@ if (is(T == struct))
static if (is(T == Unqual!(Args[0])))
{
//Types match exactly: we postblit
static if (isAssignable!T && !hasElaborateAssign!T)
static if (!hasElaborateAssign!T && isAssignable!T)
chunk = args[0];
else
{
Expand Down Expand Up @@ -3946,7 +3946,7 @@ if (is(T == struct))
//emplace helper functions
private ref T emplaceInitializer(T)(ref T chunk) @trusted pure nothrow
{
static if (isAssignable!T && !hasElaborateAssign!T)
static if (!hasElaborateAssign!T && isAssignable!T)
chunk = T.init;
else
{
Expand Down

0 comments on commit 9515208

Please sign in to comment.