aboutsummaryrefslogtreecommitdiff
path: root/build/bin
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-06-30 15:07:03 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-06-30 15:07:03 +0200
commit70af0087d8efb3f2f7dc9ffdf2568419913f16da (patch)
treedceeab7a3c600add8bf3f3375a2d83ca11213624 /build/bin
parent18568ff0ff3dce89d694b494c5dfc9a32e63c9e6 (diff)
Group "see through" iteration, take 1
Diffstat (limited to 'build/bin')
-rw-r--r--build/bin/rule8
-rw-r--r--build/bin/rule.cxx10
2 files changed, 9 insertions, 9 deletions
diff --git a/build/bin/rule b/build/bin/rule
index b8b9873..743b1ca 100644
--- a/build/bin/rule
+++ b/build/bin/rule
@@ -14,21 +14,21 @@ namespace build
class obj_rule: public rule
{
public:
- virtual void*
+ virtual match_result
match (action, target&, const std::string& hint) const;
virtual recipe
- apply (action, target&, void*) const;
+ apply (action, target&, const match_result&) const;
};
class lib_rule: public rule
{
public:
- virtual void*
+ virtual match_result
match (action, target&, const std::string& hint) const;
virtual recipe
- apply (action, target&, void*) const;
+ apply (action, target&, const match_result&) const;
static target_state
perform (action, target&);
diff --git a/build/bin/rule.cxx b/build/bin/rule.cxx
index 1834f7a..d2928ca 100644
--- a/build/bin/rule.cxx
+++ b/build/bin/rule.cxx
@@ -19,7 +19,7 @@ namespace build
{
// obj
//
- void* obj_rule::
+ match_result obj_rule::
match (action a, target& t, const std::string&) const
{
fail << diag_doing (a, t) << " target group" <<
@@ -29,21 +29,21 @@ namespace build
}
recipe obj_rule::
- apply (action, target&, void*) const {return empty_recipe;}
+ apply (action, target&, const match_result&) const {return empty_recipe;}
// lib
//
// The whole logic is pretty much as if we had our two group
// members as prerequisites.
//
- void* lib_rule::
+ match_result lib_rule::
match (action, target& t, const std::string&) const
{
- return &t;
+ return t;
}
recipe lib_rule::
- apply (action a, target& xt, void*) const
+ apply (action a, target& xt, const match_result&) const
{
lib& t (static_cast<lib&> (xt));