aboutsummaryrefslogtreecommitdiff
path: root/build2/context.ixx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2019-06-24 12:01:19 +0200
committerKaren Arutyunov <karen@codesynthesis.com>2019-07-01 18:13:55 +0300
commit977d07a3ae47ef204665d1eda2d642e5064724f3 (patch)
tree525a3d6421f61ce789b690191d3c30fc09be3517 /build2/context.ixx
parent7161b24963dd9da4d218f92c736b77c35c328a2d (diff)
Split build system into library and driver
Diffstat (limited to 'build2/context.ixx')
-rw-r--r--build2/context.ixx60
1 files changed, 0 insertions, 60 deletions
diff --git a/build2/context.ixx b/build2/context.ixx
deleted file mode 100644
index 1c25922..0000000
--- a/build2/context.ixx
+++ /dev/null
@@ -1,60 +0,0 @@
-// file : build2/context.ixx -*- C++ -*-
-// copyright : Copyright (c) 2014-2019 Code Synthesis Ltd
-// license : MIT; see accompanying LICENSE file
-
-namespace build2
-{
- // wait_guard
- //
- inline wait_guard::
- wait_guard ()
- : start_count (0), task_count (nullptr), phase (false)
- {
- }
-
- inline wait_guard::
- wait_guard (atomic_count& tc, bool p)
- : wait_guard (0, tc, p)
- {
- }
-
- inline wait_guard::
- wait_guard (size_t sc, atomic_count& tc, bool p)
- : start_count (sc), task_count (&tc), phase (p)
- {
- }
-
- inline wait_guard::
- ~wait_guard () noexcept (false)
- {
- if (task_count != nullptr)
- wait ();
- }
-
- inline wait_guard::
- wait_guard (wait_guard&& x)
- : start_count (x.start_count), task_count (x.task_count), phase (x.phase)
- {
- x.task_count = nullptr;
- }
-
- inline wait_guard& wait_guard::
- operator= (wait_guard&& x)
- {
- if (&x != this)
- {
- assert (task_count == nullptr);
- start_count = x.start_count; task_count = x.task_count; phase = x.phase;
- x.task_count = nullptr;
- }
- return *this;
- }
-
- inline void wait_guard::
- wait ()
- {
- phase_unlock u (phase);
- sched.wait (start_count, *task_count);
- task_count = nullptr;
- }
-}