[Checkins] SVN: martian/branches/infrae-multiple-nobase/src/martian/ (sylvain) added MULTIPLE_NOBASE

eric casteleijn eric at infrae.com
Sat Jul 12 04:36:58 EDT 2008


Log message for revision 88278:
  (sylvain) added MULTIPLE_NOBASE 
  

Changed:
  U   martian/branches/infrae-multiple-nobase/src/martian/__init__.py
  U   martian/branches/infrae-multiple-nobase/src/martian/directive.py

-=-
Modified: martian/branches/infrae-multiple-nobase/src/martian/__init__.py
===================================================================
--- martian/branches/infrae-multiple-nobase/src/martian/__init__.py	2008-07-12 08:24:17 UTC (rev 88277)
+++ martian/branches/infrae-multiple-nobase/src/martian/__init__.py	2008-07-12 08:36:57 UTC (rev 88278)
@@ -5,7 +5,7 @@
 from martian.components import MethodGrokker
 from martian.util import scan_for_classes
 from martian.directive import Directive, MarkerDirective, MultipleTimesDirective
-from martian.directive import ONCE, ONCE_NOBASE, MULTIPLE, DICT
+from martian.directive import ONCE, ONCE_NOBASE, MULTIPLE, MULTIPLE_NOBASE, DICT
 from martian.directive import CLASS, CLASS_OR_MODULE, MODULE
 from martian.directive import (
     validateText, validateInterface, validateClass, validateInterfaceOrClass)

Modified: martian/branches/infrae-multiple-nobase/src/martian/directive.py
===================================================================
--- martian/branches/infrae-multiple-nobase/src/martian/directive.py	2008-07-12 08:24:17 UTC (rev 88277)
+++ martian/branches/infrae-multiple-nobase/src/martian/directive.py	2008-07-12 08:36:57 UTC (rev 88278)
@@ -56,6 +56,13 @@
 
 MULTIPLE = StoreMultipleTimes()
 
+class StoreMultipleTimesGetFromThisClassOnly(StoreMultipleTimes):
+
+    def get(self, directive, component, default):
+        return component.__dict__.get(directive.dotted_name(), default)
+
+MULTIPLE_NOBASE = StoreMultipleTimesGetFromThisClassOnly()
+
 class StoreDict(StoreOnce):
 
     def get(self, directive, component, default):



More information about the Checkins mailing list