[Zope3-checkins] CVS: Zope3/src/zope/interface - __init__.py:1.1.2.3 _flatten.py:1.1.2.2 adapter.py:1.1.2.2 document.py:1.1.2.2 exceptions.py:1.1.2.2 implementor.py:1.1.2.2 implements.py:1.1.2.2 interface.py:1.1.2.2 interfaces.py:1.1.2.2 pyskel.py:1.1.2.6 type.py:1.1.2.2 verify.py:1.1.2.2

Tim Peters tim.one@comcast.net
Tue, 24 Dec 2002 21:21:40 -0500


Update of /cvs-repository/Zope3/src/zope/interface
In directory cvs.zope.org:/tmp/cvs-serv19240/src/zope/interface

Modified Files:
      Tag: NameGeddon-branch
	__init__.py _flatten.py adapter.py document.py exceptions.py 
	implementor.py implements.py interface.py interfaces.py 
	pyskel.py type.py verify.py 
Log Message:
Whitespace normalization, via Python's Tools/scripts/reindent.py.  The
files are fixed-points of that script now.  Fixed a few cases where
code relied on significant trailing whitespace (ouch).


=== Zope3/src/zope/interface/__init__.py 1.1.2.2 => 1.1.2.3 ===
--- Zope3/src/zope/interface/__init__.py:1.1.2.2	Mon Dec 23 15:04:47 2002
+++ Zope3/src/zope/interface/__init__.py	Tue Dec 24 21:21:08 2002
@@ -2,14 +2,14 @@
 #
 # Copyright (c) 2001, 2002 Zope Corporation and Contributors.
 # All Rights Reserved.
-# 
+#
 # This software is subject to the provisions of the Zope Public License,
 # Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
-# 
+#
 ##############################################################################
 """Interfaces
 
@@ -18,7 +18,7 @@
 The package exports a single name, 'Interface' directly. Interface
 is used to create an interface with a class statement, as in:
 
-  
+
 
   class IMyInterface(Interface):
     '''Interface documentation
@@ -34,7 +34,7 @@
 interface, IInterface in the IInterface module.
 
 The package has several public modules:
-    
+
   o Attribute has the implementation for interface attributes
     for people who want to build interfaces by hand.
     (Maybe someone should cry YAGNI for this. ;)


=== Zope3/src/zope/interface/_flatten.py 1.1.2.1 => 1.1.2.2 ===
--- Zope3/src/zope/interface/_flatten.py:1.1.2.1	Mon Dec 23 14:32:54 2002
+++ Zope3/src/zope/interface/_flatten.py	Tue Dec 24 21:21:08 2002
@@ -2,14 +2,14 @@
 #
 # Copyright (c) 2002 Zope Corporation and Contributors.
 # All Rights Reserved.
-# 
+#
 # This software is subject to the provisions of the Zope Public License,
 # Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
-# 
+#
 ##############################################################################
 """Adapter-style interface registry
 
@@ -44,18 +44,17 @@
         flattened.append(None)
 
     return flattened
-        
+
 def _flatten_recurse(implements, list):
     if implements.__class__ == tuple:
         for i in implements:
             _flatten_recurse(i, list)
     else:
         _flatten_recurse_interface(implements, list)
-    
+
 def _flatten_recurse_interface(interface, list):
     list.append(interface)
     if interface is None:
         return
     for i in interface.__bases__:
         _flatten_recurse_interface(i, list)
-


=== Zope3/src/zope/interface/adapter.py 1.1.2.1 => 1.1.2.2 ===
--- Zope3/src/zope/interface/adapter.py:1.1.2.1	Mon Dec 23 14:32:54 2002
+++ Zope3/src/zope/interface/adapter.py	Tue Dec 24 21:21:08 2002
@@ -2,14 +2,14 @@
 #
 # Copyright (c) 2002 Zope Corporation and Contributors.
 # All Rights Reserved.
-# 
+#
 # This software is subject to the provisions of the Zope Public License,
 # Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
-# 
+#
 ##############################################################################
 """Adapter-style interface registry
 
@@ -37,18 +37,18 @@
     #
     # Where the registered provides is what was registered and
     # provided may be some base interface
-    
+
     def __init__(self, data=None):
         if data is None:
             data = {}
         self._reg = data
-        
+
     def _registerAllProvided(self, require, primary_provide, object, provide):
         # Registers a component using (require, provide) as a key.
         # Also registers superinterfaces of the provided interface,
         # stopping when the registry already has a component
         # that provides a more general interface or when the Base is Interface.
-        
+
         reg = self._reg
         reg[(require, provide)] = (primary_provide, object)
         bases = getattr(provide, '__bases__', ())
@@ -74,7 +74,7 @@
         if not IInterface.isImplementedBy(provide):
             raise TypeError(
                 "The provide argument must be an interface (or None)")
-        
+
         self._registerAllProvided(require, provide, object, provide)
 
     def get(self, (ob_interface, provide), default=None, filter=None):
@@ -109,7 +109,7 @@
                               required_interfaces=None,
                               provided_interfaces=None):
 
-        
+
         if IInterface.isImplementedBy(required_interfaces):
             required_interfaces = (required_interfaces, )
 
@@ -117,7 +117,7 @@
 
             if IInterface.isImplementedBy(provided_interfaces):
                 provided_interfaces = (provided_interfaces, )
-            
+
             r = {}
 
             if required_interfaces:
@@ -126,7 +126,7 @@
                     for provided in provided_interfaces:
                         v = self._reg.get((required, provided))
                         if v:
-                            rprovided, o = v                        
+                            rprovided, o = v
                             r[required, rprovided] = o
 
 
@@ -153,7 +153,7 @@
                         provided == rprovided
                         )
                    ]
-            
+
         else:
             # Nothing specified
             return [(required, provided, o)
@@ -161,5 +161,3 @@
                     in self._reg.items()
                     if provided == rprovided
                    ]
-                        
-                        


=== Zope3/src/zope/interface/document.py 1.1.2.1 => 1.1.2.2 ===
--- Zope3/src/zope/interface/document.py:1.1.2.1	Mon Dec 23 14:32:54 2002
+++ Zope3/src/zope/interface/document.py	Tue Dec 24 21:21:08 2002
@@ -2,14 +2,14 @@
 #
 # Copyright (c) 2001, 2002 Zope Corporation and Contributors.
 # All Rights Reserved.
-# 
+#
 # This software is subject to the provisions of the Zope Public License,
 # Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
-# 
+#
 ##############################################################################
 """ Pretty-Print an Interface object as structured text (Yum)
 
@@ -26,7 +26,7 @@
     """ Output structured text format.  Note, this will wack any existing
     'structured' format of the text.  """
 
-    
+
     r = ["%s\n\n" % I.getName()]
     outp = r.append
     level = 1
@@ -49,7 +49,7 @@
 
     namesAndDescriptions = I.namesAndDescriptions()
     namesAndDescriptions.sort()
-    
+
     for name, desc in namesAndDescriptions:
         if not hasattr(desc, 'getSignatureString'):   # ugh...
             item = "%s -- %s" % (desc.getName(),
@@ -83,12 +83,12 @@
         for line in lines[1:]:
             indent=len(line) - len(line.lstrip())
             if indent < min_indent or min_indent is None:
-                min_indent=indent   
+                min_indent=indent
         for line in lines[1:]:
             nlines.append(line[min_indent:])
     return '\n'.join(nlines)
-    
-    
+
+
 _trans = maketrans("\r\n", "  ")
 def _justify_and_indent(text, level, munge=0, width=72):
     """ indent and justify text, rejustify (munge) if specified """
@@ -116,11 +116,3 @@
             lines.append( (" " * level) + line)
 
         return '\n'.join(lines)
-            
-
-
-
-    
-
-
-


=== Zope3/src/zope/interface/exceptions.py 1.1.2.1 => 1.1.2.2 ===
--- Zope3/src/zope/interface/exceptions.py:1.1.2.1	Mon Dec 23 14:32:54 2002
+++ Zope3/src/zope/interface/exceptions.py	Tue Dec 24 21:21:08 2002
@@ -2,14 +2,14 @@
 #
 # Copyright (c) 2002 Zope Corporation and Contributors.
 # All Rights Reserved.
-# 
+#
 # This software is subject to the provisions of the Zope Public License,
 # Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
-# 
+#
 ##############################################################################
 """
 


=== Zope3/src/zope/interface/implementor.py 1.1.2.1 => 1.1.2.2 ===
--- Zope3/src/zope/interface/implementor.py:1.1.2.1	Mon Dec 23 14:32:54 2002
+++ Zope3/src/zope/interface/implementor.py	Tue Dec 24 21:21:08 2002
@@ -2,14 +2,14 @@
 #
 # Copyright (c) 2002 Zope Corporation and Contributors.
 # All Rights Reserved.
-# 
+#
 # This software is subject to the provisions of the Zope Public License,
 # Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
-# 
+#
 ##############################################################################
 """Adapter-style interface registry
 
@@ -35,16 +35,16 @@
     #
     # Where the registered provides is what was registered and
     # provided may be some base interface
-    
+
     def __init__(self):
         self._reg = {}
-        
+
     def _registerAllProvided(self, primary_provide, object, provide):
         # Registers a component using (require, provide) as a key.
         # Also registers superinterfaces of the provided interface,
         # stopping when the registry already has a component
         # that provides a more general interface or when the Base is Interface.
-        
+
         reg = self._reg
         reg[provide] = (primary_provide, object)
         bases = getattr(provide, '__bases__', ())
@@ -63,7 +63,7 @@
             self._registerAllProvided(primary_provide, object, base)
 
 
-    def register(self, provide, object):        
+    def register(self, provide, object):
         if not IInterface.isImplementedBy(provide):
             raise TypeError(
                 "The provide argument must be an interface (or None)")


=== Zope3/src/zope/interface/implements.py 1.1.2.1 => 1.1.2.2 ===
--- Zope3/src/zope/interface/implements.py:1.1.2.1	Mon Dec 23 14:32:54 2002
+++ Zope3/src/zope/interface/implements.py	Tue Dec 24 21:21:08 2002
@@ -2,14 +2,14 @@
 #
 # Copyright (c) 2001, 2002 Zope Corporation and Contributors.
 # All Rights Reserved.
-# 
+#
 # This software is subject to the provisions of the Zope Public License,
 # Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
-# 
+#
 ##############################################################################
 """Implemantation assertion facilities.
 
@@ -54,7 +54,7 @@
 
 def visitImplements(implements, object, visitor, getInterface=None):
     """Call visitor for each interace.
-    
+
     Visits the interfaces described by an __implements__ attribute,
     invoking the visitor for each interface object.
     If the visitor returns anything true, the loop stops.
@@ -63,7 +63,7 @@
     # this allows us to work with proxy wrappers in Python 2.2,
     # yet remain compatible with earlier versions of python.
     implements_class = getattr(implements, '__class__', None)
-    
+
     if implements_class == InterfaceClass or \
        isinstance(implements, InterfaceClass):
         return visitor(implements)
@@ -155,4 +155,3 @@
         klass.__implements__ = interface
     else:
         klass.__implements__ = old, interface
-


=== Zope3/src/zope/interface/interface.py 1.1.2.1 => 1.1.2.2 ===
--- Zope3/src/zope/interface/interface.py:1.1.2.1	Mon Dec 23 14:32:54 2002
+++ Zope3/src/zope/interface/interface.py	Tue Dec 24 21:21:08 2002
@@ -2,14 +2,14 @@
 #
 # Copyright (c) 2001, 2002 Zope Corporation and Contributors.
 # All Rights Reserved.
-# 
+#
 # This software is subject to the provisions of the Zope Public License,
 # Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
-# 
+#
 ##############################################################################
 """Interface object implementation
 
@@ -40,14 +40,14 @@
     #__implements__ = IElement
 
     __tagged_values = {}
-    
+
     def __init__(self, __name__, __doc__=''):
         """Create an 'attribute' description
         """
         if not __doc__ and __name__.find(' ') >= 0:
             __doc__ = __name__
             __name__ = None
-        
+
         self.__name__=__name__
         self.__doc__=__doc__
 
@@ -82,7 +82,7 @@
 
     def __init__(self, name, bases=(), attrs=None, __doc__=None,
                  __module__=None):
-        
+
         if __module__ is None:
             if attrs is not None and ('__module__' in attrs):
                 __module__ = attrs['__module__']
@@ -136,7 +136,7 @@
         """Does an interface extend another?"""
         if not strict and self is other:
             return True
-        
+
         for b in self.__bases__:
             if b == other: return True
             if b.extends(other): return True
@@ -179,7 +179,7 @@
 
     def __iter__(self):
         return iter(self.names(1))
-            
+
     def namesAndDescriptions(self, all=0):
         """Return attribute names and descriptions defined by interface."""
         if not all:
@@ -188,7 +188,7 @@
         r = {}
         for name, d in self.__attrs.items():
             r[name] = d
-            
+
         for base in self.__bases__:
             for name, d in base.namesAndDescriptions(all):
                 if name not in r:
@@ -201,7 +201,7 @@
         r = self.queryDescriptionFor(name)
         if r is not None:
             return r
-        
+
         raise KeyError, name
 
     __getitem__ = getDescriptionFor
@@ -218,7 +218,7 @@
             r = base.queryDescriptionFor(name, self)
             if r is not self:
                 return r
-            
+
         return default
 
     get = queryDescriptionFor
@@ -230,7 +230,7 @@
         klass={}
         exec "class %s: pass" % self.__name__ in klass
         klass=klass[self.__name__]
-        
+
         self.__d(klass.__dict__)
 
         self._deferred=klass
@@ -240,7 +240,7 @@
     def _getInterface(self, ob, name):
         """Retrieve a named interface."""
         return None
-            
+
     def __d(self, dict):
 
         for k, v in self.__attrs.items():
@@ -279,7 +279,7 @@
         None is treated as a psuedo interface that implies the loosest
         contact possible, no contract. For that reason, all interfaces
         sort before None.
-        
+
         """
 
         if o1 == o2:
@@ -303,7 +303,7 @@
               getattr(getattr(o1,  '__module__', None), '__name__', ''))
         n2 = (getattr(o2, '__name__', ''),
               getattr(getattr(o2,  '__module__', None), '__name__', ''))
-        
+
         return cmp(n1, n2)
 
     def __lt__(self, other):
@@ -348,7 +348,7 @@
     def getSignatureInfo(self):
         info = {}
         for t in sig_traits:
-            info[t] = getattr(self, t) 
+            info[t] = getattr(self, t)
 
         return info
 


=== Zope3/src/zope/interface/interfaces.py 1.1.2.1 => 1.1.2.2 ===
--- Zope3/src/zope/interface/interfaces.py:1.1.2.1	Mon Dec 23 14:32:54 2002
+++ Zope3/src/zope/interface/interfaces.py	Tue Dec 24 21:21:08 2002
@@ -2,14 +2,14 @@
 #
 # Copyright (c) 2002 Zope Corporation and Contributors.
 # All Rights Reserved.
-# 
+#
 # This software is subject to the provisions of the Zope Public License,
 # Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
-# 
+#
 ##############################################################################
 """
 
@@ -31,7 +31,7 @@
 
     def getDoc():
         """Returns the documentation for the object."""
-        
+
     def getTaggedValue(tag):
         """Returns the value associated with 'tag'."""
 
@@ -45,8 +45,8 @@
 
 class IAttribute(IElement):
     """Attribute descriptors"""
-    
-    
+
+
 
 class IMethod(IAttribute):
     """Method attributes
@@ -81,7 +81,7 @@
           are expected, optional arguments and their default values,
           the position or arguments in the signature, whether the
           method accepts arbitrary arguments and whether the method
-          accepts arbitrary keyword arguments. 
+          accepts arbitrary keyword arguments.
 
       o Optional tagged data.  Interface objects (and their attributes and
         methods) can have optional, application specific tagged data
@@ -179,7 +179,7 @@
 
         A true value is returned in the interface extends the other
         interface, and false otherwise.
-        
+
         Normally, an interface doesn't extend itself. If a false value
         is passed as the second argument, or via the 'strict' keyword
         argument, then a true value will be returned if the interface
@@ -241,7 +241,7 @@
         """
 
     get = queryDescriptionFor
-        
+
     def __contains__(name):
         """Test whether the name is defined by the interface"""
 
@@ -256,7 +256,7 @@
     """Type-specific registry
 
     This registry stores objects registered for objects that implement
-    a required interface.    
+    a required interface.
     """
 
     def register(require, object):
@@ -281,7 +281,7 @@
         Note that the implements may be None, it which case a
         component will be returned only if it was registered with a
         require of None.
-        
+
         """
 
     def getAll(implements=None):
@@ -294,9 +294,9 @@
         the require interface was None).
 
         """
-    
+
     def getAllForObject(object):
-        """Get all registered objects for types that object implements. 
+        """Get all registered objects for types that object implements.
         """
 
 
@@ -318,7 +318,7 @@
     interface of None adapt non-components. An adapter that adapts all
     components should specify a required interface of
     Interface.Interface.
-    
+
     """
 
     def register(require, provide, object):
@@ -353,9 +353,9 @@
         suitable match can be found. The filter should take a single
         argument and return a true value if the object passes the
         filter, or false otherwise.
-        
+
         """
-    
+
     def getForObject(object, interface, filter=None):
         """Get an adapter for object that implements the specified interface
 
@@ -367,7 +367,7 @@
 
         None is returned if nothing is registered.
         """
-    
+
     def getRegisteredMatching(required_interfaces=None,
                               provided_interfaces=None):
         """Return information about registered data
@@ -409,7 +409,7 @@
     The objects registered here don't need to be implementors. (They
     might just be useful to implementation.) What's important is that
     they are registered according to a provided interface.
-    
+
     """
 
     def register(provide, object):


=== Zope3/src/zope/interface/pyskel.py 1.1.2.5 => 1.1.2.6 ===
--- Zope3/src/zope/interface/pyskel.py:1.1.2.5	Tue Dec 24 11:54:44 2002
+++ Zope3/src/zope/interface/pyskel.py	Tue Dec 24 21:21:08 2002
@@ -3,14 +3,14 @@
 #
 # Copyright (c) 2001, 2002 Zope Corporation and Contributors.
 # All Rights Reserved.
-# 
+#
 # This software is subject to the provisions of the Zope Public License,
 # Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
-# 
+#
 ##############################################################################
 """
 Generate method skeletons for intefaces.
@@ -107,7 +107,7 @@
     # print
     # print "    #"
     # print "    ############################################################"
-    
+
 
 def resolve(name, _silly=('__doc__',), _globals={}):
     # Support for file path syntax; this way I can use TAB to search for
@@ -198,9 +198,7 @@
         return map(lambda item: item[1:], items)
 
 
-        
+
 if __name__ == '__main__':
     for a in sys.argv[1:]:
         skel(a)
-    
-    


=== Zope3/src/zope/interface/type.py 1.1.2.1 => 1.1.2.2 ===
--- Zope3/src/zope/interface/type.py:1.1.2.1	Mon Dec 23 14:32:54 2002
+++ Zope3/src/zope/interface/type.py	Tue Dec 24 21:21:08 2002
@@ -2,14 +2,14 @@
 #
 # Copyright (c) 2002 Zope Corporation and Contributors.
 # All Rights Reserved.
-# 
+#
 # This software is subject to the provisions of the Zope Public License,
 # Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
-# 
+#
 ##############################################################################
 """Adapter-style interface registry
 
@@ -39,7 +39,7 @@
     #
     # Where the registered provides is what was registered and
     # provided may be some base interface
-    
+
     def __init__(self):
         self._reg = {}
 
@@ -58,7 +58,7 @@
 
     def setdefault(self, interface, default=None):
         return self._reg.setdefault(interface, default)
-    
+
     def getAll(self, interface_spec):
         result = []
         for interface in _flatten(interface_spec):
@@ -78,4 +78,3 @@
         # account implementation registries for objects that can't
         # have '__implements__' attributes.
         return self.getAll(getattr(object, '__implements__', None))
-


=== Zope3/src/zope/interface/verify.py 1.1.2.1 => 1.1.2.2 ===
--- Zope3/src/zope/interface/verify.py:1.1.2.1	Mon Dec 23 14:32:54 2002
+++ Zope3/src/zope/interface/verify.py	Tue Dec 24 21:21:08 2002
@@ -2,14 +2,14 @@
 #
 # Copyright (c) 2001, 2002 Zope Corporation and Contributors.
 # All Rights Reserved.
-# 
+#
 # This software is subject to the provisions of the Zope Public License,
 # Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
-# 
+#
 ##############################################################################
 
 from zope.interface.exceptions import BrokenImplementation, DoesNotImplement
@@ -19,7 +19,7 @@
 
 def _verify(iface, candidate, tentative=0, vtype=None):
     """Verify that 'candidate' might correctly implements 'iface'.
-    
+
     This involves:
 
       o Making sure the candidate defines all the necessary methods
@@ -61,7 +61,7 @@
         mess = _incompat(d, meth)
         if mess:
             raise BrokenMethodImplementation(n, mess)
-            
+
     return 1
 
 def verifyClass(iface, candidate, tentative=0):