From: Benjamin Peterson Date: Sat, 14 Nov 2009 18:09:17 +0000 (+0000) Subject: use some more itertools magic to make '' be yielded after readline is done X-Git-Tag: v3.2a1~2189 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=81dd8b9594d88ff1d2c8f5efea687645bbc36d6f;p=thirdparty%2FPython%2Fcpython.git use some more itertools magic to make '' be yielded after readline is done --- diff --git a/Lib/tokenize.py b/Lib/tokenize.py index b8ee2c854f9e..f82922b7f084 100644 --- a/Lib/tokenize.py +++ b/Lib/tokenize.py @@ -379,10 +379,11 @@ def tokenize(readline): """ # This import is here to avoid problems when the itertools module is not # built yet and tokenize is imported. - from itertools import chain + from itertools import chain, repeat encoding, consumed = detect_encoding(readline) - rl_iter = iter(readline, "") - return _tokenize(chain(consumed, rl_iter).__next__, encoding) + rl_gen = iter(readline, b"") + empty = repeat(b"") + return _tokenize(chain(consumed, rl_gen, empty).__next__, encoding) def _tokenize(readline, encoding):