diff options
Diffstat (limited to 'build2/algorithm.ixx')
-rw-r--r-- | build2/algorithm.ixx | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/build2/algorithm.ixx b/build2/algorithm.ixx index 17c9d8d..c9c6b02 100644 --- a/build2/algorithm.ixx +++ b/build2/algorithm.ixx @@ -200,4 +200,19 @@ namespace build2 default: return execute_impl (a, t); } } + + template <typename T> + inline T* + execute_prerequisites (action a, target& t, const timestamp& mt) + { + return static_cast<T*> (execute_prerequisites (T::static_type, a, t, mt)); + } + + template <typename T> + inline T* + execute_prerequisites (const target_type& tt, + action a, target& t, const timestamp& mt) + { + return static_cast<T*> (execute_prerequisites (tt, a, t, mt)); + } } |