From e47dc05e254822092d4f3f8a441cc77af3353a15 Mon Sep 17 00:00:00 2001 From: Stephan Rave Date: Thu, 27 Apr 2017 14:43:21 +0200 Subject: [PATCH] [rules] add append_rule / insert_rule methods --- src/pymor/algorithms/rules.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/pymor/algorithms/rules.py b/src/pymor/algorithms/rules.py index 7afee6d44e..07b17512ce 100644 --- a/src/pymor/algorithms/rules.py +++ b/src/pymor/algorithms/rules.py @@ -170,6 +170,26 @@ def __init__(self): self._cache = {} self.rules = list(self.rules) # make a copy of the list of rules + @classinstancemethod + def insert_rule(cls, index, rule_): + assert isinstance(rule_, rule) + cls.rules.insert(index, rule_) + + @insert_rule.instancemethod + def insert_rule(self, index, rule_): + assert isinstance(rule_, rule) + self.rules.insert(index, rule_) + + @classinstancemethod + def append_rule(cls, rule_): + assert isinstance(rule_, rule) + cls.rules.append(rule_) + + @append_rule.instancemethod + def append_rule(self, rule_): + assert isinstance(rule_, rule) + self.rules.append(rule_) + @classinstancemethod def apply(cls, obj, *args, **kwargs): """Sequentially apply rules to given object.