diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2017-06-14 13:06:38 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2017-06-14 13:06:38 +0200 |
commit | 57abb0703ec640fdcd0b0ac165f742bbc34df533 (patch) | |
tree | ec0fc9b3f23b2ed34e354978788384ee08be8035 /build2/algorithm.hxx | |
parent | 700f2e7c4be9c8caa0ac0fcd58b1a0ce505e33fa (diff) |
Next installment in C++ modules saga: module search, re-export support
Diffstat (limited to 'build2/algorithm.hxx')
-rw-r--r-- | build2/algorithm.hxx | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/build2/algorithm.hxx b/build2/algorithm.hxx index 9f54c8d..49ca7a7 100644 --- a/build2/algorithm.hxx +++ b/build2/algorithm.hxx @@ -307,7 +307,8 @@ namespace build2 // // The filter is passed each prerequisite target and is expected to signal // which ones should be used for timestamp comparison. If the filter is - // NULL, then all the prerequisites are used. + // NULL, then all the prerequisites are used. If the count is not 0, then + // only the first count prerequisites are executed. // // Note that the return value is an optional target state. If the target // needs updating, then the value absent. Otherwise it is the state that @@ -327,7 +328,8 @@ namespace build2 optional<target_state> execute_prerequisites (action, const target&, const timestamp&, - const prerequisite_filter& = nullptr); + const prerequisite_filter& = nullptr, + size_t count = 0); // Another version of the above that does two extra things for the caller: // it determines whether the action needs to be executed on the target based @@ -340,20 +342,23 @@ namespace build2 pair<optional<target_state>, const T&> execute_prerequisites (action, const target&, const timestamp&, - const prerequisite_filter& = nullptr); + const prerequisite_filter& = nullptr, + size_t count = 0); pair<optional<target_state>, const target&> execute_prerequisites (const target_type&, action, const target&, const timestamp&, - const prerequisite_filter& = nullptr); + const prerequisite_filter& = nullptr, + size_t count = 0); template <typename T> pair<optional<target_state>, const T&> execute_prerequisites (const target_type&, action, const target&, const timestamp&, - const prerequisite_filter& = nullptr); + const prerequisite_filter& = nullptr, + size_t count = 0); // Execute members of a group or similar prerequisite-like dependencies. // Similar in semantics to execute_prerequisites(). |