| 219 | |
| 220 | |
| 221 | class Handle(int): |
| 222 | closed = False |
| 223 | |
| 224 | def Close(self, CloseHandle=_winapi.CloseHandle): |
| 225 | if not self.closed: |
| 226 | self.closed = True |
| 227 | CloseHandle(self) |
| 228 | |
| 229 | def Detach(self): |
| 230 | if not self.closed: |
| 231 | self.closed = True |
| 232 | return int(self) |
| 233 | raise ValueError("already closed") |
| 234 | |
| 235 | def __repr__(self): |
| 236 | return "%s(%d)" % (self.__class__.__name__, int(self)) |
| 237 | |
| 238 | __del__ = Close |
| 239 | else: |
| 240 | # When select or poll has indicated that the file is writable, |
| 241 | # we can write up to _PIPE_BUF bytes without risk of blocking. |
no outgoing calls
no test coverage detected
searching dependent graphs…