aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRalph Amissah <ralph@amissah.com>2018-07-31 10:44:56 -0400
committerRalph Amissah <ralph@amissah.com>2019-04-10 15:14:15 -0400
commitafae4dce33708473d2b85b7acd5a0bf074f679f7 (patch)
treea19a5a86e656770ffa23a7b7ea9b226291ab8434
parent0.26.6 prepare for parallelism, remove __gshared (diff)
0.27.0 parallelize doc processing
- std.parallelism
-rw-r--r--org/sdp.org7
-rwxr-xr-xsrc/sdp/sdp.d5
-rw-r--r--views/version.txt2
3 files changed, 6 insertions, 8 deletions
diff --git a/org/sdp.org b/org/sdp.org
index 83e0b4e..ea8a4bf 100644
--- a/org/sdp.org
+++ b/org/sdp.org
@@ -26,7 +26,7 @@ struct Version {
int minor;
int patch;
}
-enum ver = Version(0, 26, 6);
+enum ver = Version(0, 27, 0);
#+END_SRC
** compilation restrictions (supported compilers)
@@ -70,6 +70,7 @@ import
sdp.conf.compile_time_info,
sdp.meta.metadoc;
<<imports_sdp>>
+import std.parallelism;
<<mixin_sdp_version>>
<<mixin_pre_main>>
/++
@@ -82,7 +83,7 @@ void main(string[] args) {
<<sdp_args>>
<<sdp_do_selected>>
if (_manifests.length > 1) { // _manifests[0] initialized dummy element
- foreach(manifest; _manifests[1..$]) {
+ foreach(manifest; parallel(_manifests[1..$])) {
if (!empty(manifest.src.filename)) {
<<sdp_each_file_do_scope>>
<<sdp_each_file_do_abstraction>>
@@ -95,8 +96,6 @@ void main(string[] args) {
}
}
}
-unittest {
-}
#+END_SRC
** 1. pre-loop init :init:
diff --git a/src/sdp/sdp.d b/src/sdp/sdp.d
index 20b2228..9d91d10 100755
--- a/src/sdp/sdp.d
+++ b/src/sdp/sdp.d
@@ -22,6 +22,7 @@ import
sdp.source.read_config_files,
sdp.source.read_source_files,
sdp.output.hub;
+import std.parallelism;
mixin(import("version.txt"));
mixin CompileTimeInfo;
/++
@@ -403,7 +404,7 @@ void main(string[] args) {
}
}
if (_manifests.length > 1) { // _manifests[0] initialized dummy element
- foreach(manifest; _manifests[1..$]) {
+ foreach(manifest; parallel(_manifests[1..$])) {
if (!empty(manifest.src.filename)) {
scope(success) {
if (!(_opt_action.quiet)) {
@@ -476,5 +477,3 @@ void main(string[] args) {
}
}
}
-unittest {
-}
diff --git a/views/version.txt b/views/version.txt
index f9a8560..383f564 100644
--- a/views/version.txt
+++ b/views/version.txt
@@ -4,7 +4,7 @@ struct Version {
int minor;
int patch;
}
-enum ver = Version(0, 26, 6);
+enum ver = Version(0, 27, 0);
version (Posix) {
version (DigitalMars) {
} else version (LDC) {