[Python-checkins] python/dist/src/Lib UserDict.py,1.21,1.22

rhettinger@users.sourceforge.net rhettinger@users.sourceforge.net
Tue, 21 Jan 2003 17:39:09 -0800


Update of /cvsroot/python/python/dist/src/Lib
In directory sc8-pr-cvs1:/tmp/cvs-serv14494

Modified Files:
	UserDict.py 
Log Message:
SF patch #667730: More DictMixin

Sebastien Keim pointed out that iterkeys and __contains__ require
their own definitions so their behavior will update when the 
underlying method is subclassed.



Index: UserDict.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/UserDict.py,v
retrieving revision 1.21
retrieving revision 1.22
diff -C2 -d -r1.21 -r1.22
*** UserDict.py	27 Nov 2002 08:29:10 -0000	1.21
--- UserDict.py	22 Jan 2003 01:39:06 -0000	1.22
***************
*** 91,95 ****
              return False
          return True
!     __contains__ = has_key
  
      # third level takes advantage of second level definitions
--- 91,96 ----
              return False
          return True
!     def __contains__(self, key):
!         return self.has_key(key)
  
      # third level takes advantage of second level definitions
***************
*** 97,101 ****
          for k in self:
              yield (k, self[k])
!     iterkeys = __iter__
  
      # fourth level uses definitions from lower levels
--- 98,103 ----
          for k in self:
              yield (k, self[k])
!     def iterkeys(self):
!         return self.__iter__()
  
      # fourth level uses definitions from lower levels