]> granicus.if.org Git - python/commitdiff
SF bug #696777: How to make a class iterable using a member generator.
authorRaymond Hettinger <python@rcn.com>
Wed, 25 Jun 2003 19:03:22 +0000 (19:03 +0000)
committerRaymond Hettinger <python@rcn.com>
Wed, 25 Jun 2003 19:03:22 +0000 (19:03 +0000)
* Added a note that a container class can implement the iterator protocol
  by defining its __iter__() method as a generator.

Doc/lib/libstdtypes.tex

index 4c1dcbdd58533116a6fe25dc0016e3ae5991bd7d..2b64d892deb7850db4ecf78db989ec94fbf37418 100644 (file)
@@ -395,6 +395,12 @@ do not obey this property are deemed broken.  (This constraint
 was added in Python 2.3; in Python 2.2, various iterators are
 broken according to this rule.)
 
+Python's generators provide a convenient way to implement the
+iterator protocol.  If a container object's \method{__iter__()}
+method is implemented as a generator, it will automatically
+return an iterator object (technically, a generator object)
+supplying the \method{__iter__()} and \method{next()} methods.
+
 
 \subsection{Sequence Types \label{typesseq}}