Skip to content

Commit c9ea3dd

Browse files
committed
Merge pull request #50 from BlackEdder/imports
Support new compiler
2 parents 60b81bc + 0513ab7 commit c9ea3dd

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

.travis.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,6 @@ matrix:
88
- secure: F1pwSI3BTHI/W0vaUNr2HeS7+25jLJiH2CF9pTW7cySKJGJkyOJ6gJkv71HYxq/cYVda8Y7qy+a//lZFQeWlEmMW4FTblXTE0qVvUzfCw3VRKLGYIMMMi2JzyWJODH+8Q2m19mS9OneZR5zL2NmopJn6wGrfUWZZuerk3XP57C0=
99
- d: dmd-2.067.1
1010
- d: dmd-2.068.0
11+
- d: dmd
1112
- d: ldc-0.15.1
1213
- d: gdc-4.9.2

dub.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"license": "BSL-1.0",
88
"dependencies": {
99
"dunit": "~>1.0.10",
10-
"painlesstraits": "~>0.0.1"
10+
"painlesstraits": "~>0.1.0"
1111
},
1212
"configurations": [
1313
{

source/painlessjson/painlessjson.d

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ import std.conv;
66
import std.json;
77
import std.range;
88
import std.traits;
9-
import std.typecons : TypeTuple, Tuple;
9+
import std.typecons : Tuple;
10+
import std.typetuple : TypeTuple;
1011
import painlessjson.annotations;
1112
import painlessjson.string;
1213
import painlesstraits;
@@ -591,15 +592,13 @@ template hasAccessibleConstructor(T)
591592
if (__traits(hasMember, T, "__ctor"))
592593
{
593594
alias Overloads = TypeTuple!(__traits(getOverloads, T, "__ctor"));
595+
bool anyInstanciates = false;
594596
foreach (overload; Overloads)
595597
{
596-
if (__traits(compiles, getInstanceFromCustomConstructor!(T,
597-
overload, false)(JSONValue())))
598-
{
599-
return true;
600-
}
598+
anyInstanciates |= __traits(compiles, getInstanceFromCustomConstructor!(T,
599+
overload, false)(JSONValue()));
601600
}
602-
return false;
601+
return anyInstanciates;
603602
}
604603
}
605604

0 commit comments

Comments
 (0)