summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCasey Dahlin <cdahlin@redhat.com>2009-01-05 03:30:22 -0500
committerCasey Dahlin <cdahlin@redhat.com>2009-01-05 03:34:21 -0500
commitb6fd410703891a4df82848fa807071d6efa8fa07 (patch)
tree192a41382e646370f759eb5b55bd2b6acb4ffe61
parent3e553f873d897fcbb665d55af3ff08fd18d726f0 (diff)
downloadupstate-b6fd410703891a4df82848fa807071d6efa8fa07.tar.gz
upstate-b6fd410703891a4df82848fa807071d6efa8fa07.tar.xz
upstate-b6fd410703891a4df82848fa807071d6efa8fa07.zip
Add intersect_args method to Category
-rw-r--r--category.py7
-rw-r--r--statemachine.py2
2 files changed, 8 insertions, 1 deletions
diff --git a/category.py b/category.py
index ad33774..1bccda1 100644
--- a/category.py
+++ b/category.py
@@ -59,6 +59,13 @@ class Category:
retval.add(Category(self.name, **newargs))
return retval
+ def intersect_args(self, **args):
+ """
+ `intersect` this Category with a new Category that has the same name and
+ the provided args.
+ """
+ return self.intersect(Category(self.name, **args))
+
def intersect(self, other):
"""
Returns a new category consisting only of items that are in this
diff --git a/statemachine.py b/statemachine.py
index 892dde6..3c63048 100644
--- a/statemachine.py
+++ b/statemachine.py
@@ -91,7 +91,7 @@ class StateMachine:
retval = []
for cat in self.up:
if dependencies.superset_of(cat):
- retval.append(dependents.intersect(Category(dependents.name, **cat.args)))
+ retval.append(dependents.intersect_args(**cat.args))
return set(retval) | dependents.inverse_set()
def get_applicable_deps(self, cat):