Add an encoding property to TextIOBase instances.
Add sys.__std{in,out,err}__. Make test_sys pass.
This commit is contained in:
parent
75d6f1a2fa
commit
fc3436becd
|
@ -925,6 +925,11 @@ class TextIOBase(IOBase):
|
|||
raise StopIteration
|
||||
return line
|
||||
|
||||
@property
|
||||
def encoding(self):
|
||||
"""Subclasses should override."""
|
||||
return None
|
||||
|
||||
# The following are provided for backwards compatibility
|
||||
|
||||
def readlines(self, hint=None):
|
||||
|
@ -970,6 +975,10 @@ class TextIOWrapper(TextIOBase):
|
|||
self._snapshot = None
|
||||
self._seekable = self._telling = self.buffer.seekable()
|
||||
|
||||
@property
|
||||
def encoding(self):
|
||||
return self._encoding
|
||||
|
||||
# A word about _snapshot. This attribute is either None, or a
|
||||
# tuple (decoder_state, readahead, pending) where decoder_state is
|
||||
# the second (integer) item of the decoder state, readahead is the
|
||||
|
|
|
@ -411,9 +411,9 @@ def installnewio():
|
|||
def __new__(cls, *args, **kwds):
|
||||
return io.open(*args, **kwds)
|
||||
__builtin__.open = open
|
||||
sys.stdin = io.open(0, "r")
|
||||
sys.stdout = io.open(1, "w")
|
||||
sys.stderr = io.open(2, "w")
|
||||
sys.__stdin__ = sys.stdin = io.open(0, "r")
|
||||
sys.__stdout__ = sys.stdout = io.open(1, "w")
|
||||
sys.__stderr__ = sys.stderr = io.open(2, "w")
|
||||
|
||||
|
||||
def main():
|
||||
|
|
Loading…
Reference in New Issue