aboutsummaryrefslogtreecommitdiff
path: root/build2/algorithm.ixx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-06-14 13:06:38 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-06-14 13:06:38 +0200
commit57abb0703ec640fdcd0b0ac165f742bbc34df533 (patch)
treeec0fc9b3f23b2ed34e354978788384ee08be8035 /build2/algorithm.ixx
parent700f2e7c4be9c8caa0ac0fcd58b1a0ce505e33fa (diff)
Next installment in C++ modules saga: module search, re-export support
Diffstat (limited to 'build2/algorithm.ixx')
-rw-r--r--build2/algorithm.ixx23
1 files changed, 14 insertions, 9 deletions
diff --git a/build2/algorithm.ixx b/build2/algorithm.ixx
index 0e721f5..27759c9 100644
--- a/build2/algorithm.ixx
+++ b/build2/algorithm.ixx
@@ -364,21 +364,24 @@ namespace build2
pair<optional<target_state>, const target*>
execute_prerequisites (const target_type*,
action, const target&,
- const timestamp&, const prerequisite_filter&);
+ const timestamp&, const prerequisite_filter&,
+ size_t);
inline optional<target_state>
execute_prerequisites (action a, const target& t,
- const timestamp& mt, const prerequisite_filter& pf)
+ const timestamp& mt, const prerequisite_filter& pf,
+ size_t n)
{
- return execute_prerequisites (nullptr, a, t, mt, pf).first;
+ return execute_prerequisites (nullptr, a, t, mt, pf, n).first;
}
template <typename T>
inline pair<optional<target_state>, const T&>
execute_prerequisites (action a, const target& t,
- const timestamp& mt, const prerequisite_filter& pf)
+ const timestamp& mt, const prerequisite_filter& pf,
+ size_t n)
{
- auto p (execute_prerequisites (T::static_type, a, t, mt, pf));
+ auto p (execute_prerequisites (T::static_type, a, t, mt, pf, n));
return pair<optional<target_state>, const T&> (
p.first, static_cast<const T&> (p.second));
}
@@ -386,9 +389,10 @@ namespace build2
inline pair<optional<target_state>, const target&>
execute_prerequisites (const target_type& tt,
action a, const target& t,
- const timestamp& mt, const prerequisite_filter& pf)
+ const timestamp& mt, const prerequisite_filter& pf,
+ size_t n)
{
- auto p (execute_prerequisites (&tt, a, t, mt, pf));
+ auto p (execute_prerequisites (&tt, a, t, mt, pf, n));
return pair<optional<target_state>, const target&> (p.first, *p.second);
}
@@ -396,9 +400,10 @@ namespace build2
inline pair<optional<target_state>, const T&>
execute_prerequisites (const target_type& tt,
action a, const target& t,
- const timestamp& mt, const prerequisite_filter& pf)
+ const timestamp& mt, const prerequisite_filter& pf,
+ size_t n)
{
- auto p (execute_prerequisites (tt, a, t, mt, pf));
+ auto p (execute_prerequisites (tt, a, t, mt, pf, n));
return pair<optional<target_state>, const T&> (
p.first, static_cast<const T&> (p.second));
}