def keys(self):
"""Return a list of keys."""
- return list(self.keys())
+ return list(self.iterkeys())
def itervalues(self):
"""Return an iterator over all messages."""
def values(self):
"""Return a list of messages. Memory intensive."""
- return list(self.values())
+ return list(self.itervalues())
def iteritems(self):
"""Return an iterator over (key, message) tuples."""
def items(self):
"""Return a list of (key, message) tuples. Memory intensive."""
- return list(self.items())
+ return list(self.iteritems())
def __contains__(self, key):
"""Return True if the keyed message exists, False otherwise."""
def next(self):
"""Return the next message in a one-time iteration."""
if not hasattr(self, '_onetime_keys'):
- self._onetime_keys = self.keys()
+ self._onetime_keys = iter(self.keys())
while True:
try:
return self[self._onetime_keys.next()]