[Python-3000] [Python-3000-checkins] r54742 - in python/branches/p3yk/Lib: io.py test/test_io.py (original) (raw)

Guido van Rossum guido at python.org
Wed Apr 11 16:47:25 CEST 2007


On 4/11/07, Walter Dörwald <walter at livinglogic.de> wrote:

Would it make sense to make the state of the decoder public, e.g. by adding setstate() and getstate() methods? This would give a cleaner API.

I've been thinking of the same thing!

I wonder if it would be possible to return the state as a pair (unread, flags) where unread is a (byte) string of unprocessed bytes and flags is some other state, with the constraint that in the initial state the flags must be zero. Then I can optimize the case where flags is returned as zero by subtracting len(unread) from the current position and that'd be the correct seek position. I imagine most decoders have only very few flags they care about. (The worst might be the utf-16 decoder which must have a flag to remember whether it already saw a byte order marker, and another indicating the byte order. Maybe we'll have to special-case that one, so don't worry too much about it.)

Should I work on a patch?

That would be great!

-- --Guido van Rossum (home page: http://www.python.org/~guido/)



More information about the Python-3000 mailing list