[z3-checkins] r33789 - z3/deliverance/branches/packaged/deliverance

rmarianski at codespeak.net rmarianski at codespeak.net
Fri Oct 27 00:58:48 CEST 2006


Author: rmarianski
Date: Fri Oct 27 00:58:38 2006
New Revision: 33789

Modified:
   z3/deliverance/branches/packaged/deliverance/interpreter.py
Log:
removed duplication in apply_drop rule

Modified: z3/deliverance/branches/packaged/deliverance/interpreter.py
==============================================================================
--- z3/deliverance/branches/packaged/deliverance/interpreter.py	(original)
+++ z3/deliverance/branches/packaged/deliverance/interpreter.py	Fri Oct 27 00:58:38 2006
@@ -342,25 +342,16 @@
 
 
     def apply_drop(self, rule, theme, content):
-
-        if 'theme' in rule.attrib:
+        for context in ('theme', 'content'):
+            if context not in rule.attrib: continue
+            document = locals()[context]
             removed = False
-            for el in theme.xpath(rule.attrib['theme']):
+            for el in document.xpath(rule.attrib[context]):
                 el.getparent().remove(el)
                 removed = True
             if not removed and rule.attrib.get(self.NOCONTENT_KEY) != 'ignore':
                 self.add_to_body_start(
-                    theme, self.format_error("no element found in theme", rule))
-        
-        if 'content' in rule.attrib:
-            removed = False
-            for el in content.xpath(rule.attrib['content']):
-                el.getparent().remove(el)
-            if not removed and rule.attrib.get(self.NOCONTENT_KEY) != 'ignore':
-                self.add_to_body_start(
-                    theme, self.format_error("no element found in content", rule))
-
-                
+                    theme, self.format_error("no element found in %s" % context, rule))
 
     def elements_in(self, els):
         """


More information about the z3-checkins mailing list