[Erp5-report] r42797 nicolas.dumazet - /erp5/trunk/products/ERP5Type/Base.py

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Jan 31 10:08:57 CET 2011


Author: nicolas.dumazet
Date: Mon Jan 31 10:08:57 2011
New Revision: 42797

URL: http://svn.erp5.org?rev=42797&view=rev
Log:
use a set for slightly faster lookups

Modified:
    erp5/trunk/products/ERP5Type/Base.py

Modified: erp5/trunk/products/ERP5Type/Base.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Base.py?rev=42797&r1=42796&r2=42797&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Base.py [utf8] (original)
+++ erp5/trunk/products/ERP5Type/Base.py [utf8] Mon Jan 31 10:08:57 2011
@@ -1682,7 +1682,7 @@ class Base( CopyContainer,
 
     unordered_key_list = [k for k in key_list if k not in edit_order]
     ordered_key_list = [k for k in edit_order if k in key_list]
-    restricted_method_list = []
+    restricted_method_set = set()
     if restricted:
       # retrieve list of accessors which doesn't use default permissions
       aq_key = self._aq_key()
@@ -1696,7 +1696,7 @@ class Base( CopyContainer,
       for permissions in prop_holder.__ac_permissions__:
         if permissions[0] not in ('Access contents information', 'Modify portal content'):
           for method in permissions[1]:
-            restricted_method_list.append(method)
+            restricted_method_set.add(method)
 
     getProperty = self.getProperty
     hasProperty = self.hasProperty
@@ -1723,7 +1723,7 @@ class Base( CopyContainer,
           if not keep_existing or not hasProperty(key):
             if restricted:
               accessor_name = 'set' + UpperCase(key)
-              if accessor_name in restricted_method_list:
+              if accessor_name in restricted_method_set:
                 # will raise Unauthorized when not allowed
                 guarded_getattr(self, accessor_name)
             modified_property_dict[key] = old_value



More information about the Erp5-report mailing list