def deinstall(self):
self._used -= 1
x = self._used
if x <= 0:
obj, attrname = self._address
setattr(obj, attrname, self._oldout)
def delwritefunc(self, tid=None, ignoremissing=True):
if tid is None:
tid = thread.get_ident()
try:
del self._tid2out[tid]
except KeyError:
if not ignoremissing:
raise
def flush(self):
pass
def isatty(self):
# XXX
return False
def resetdefault(self):
self._defaultwriter = self._oldout.write
def setdefaultwriter(self, writefunc):
self._defaultwriter = writefunc
def setwritefunc(self, writefunc, tid=None):
assert callable(writefunc)
self._tid2out[tid] = [0, writefunc]
def write(self, data):
softspace, out = self._get()
out(data)