114
114
self.hooklist = [] # fill later with thunks to run on close
117
122
def read(self, length = -1): return self.fileobj.read(length)
120
125
"""Close fileobj, running hooks right afterwards"""
121
126
assert not self.fileobj.close()
122
127
for hook in self.hooklist: hook()
125
131
"""Add hook (function taking no arguments) to run upon closing"""
126
132
self.hooklist.append(hook)