Dmi Baranov added the comment:

My +1 for __iter__ with default `raise StopIteration`, it is more elegant 
solution than declaration and guarantee of the interfaces (based at 
collections.abc.Callable and collections.abc.Iterator).
 
Paul, result as iterable of CodecInfo objects is gives much more flexibility 
than the names of codecs (whats if you will have a few codecs with the same 
name in different SearchObjects?)

As I see, you would like use this as:

encoded_data = 'abc'
for codecs in codecs.registered_codecs():
 decoded_data = codecs.decode(data)
 if decoded_data == 'cba': # cracked
  break

Whats about backward compatibly with Lib/encoding modules (initial item in 
interp->codec_search_path)? Can we skip anything in search_path, if its not 
supports iteration?

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue17878>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to