Get next char from raw queue. Block if no data is immediately available. Raise EOFError when connection is closed.
(self)
| 496 | self.sbdataq = self.sbdataq + buf[1] |
| 497 | |
| 498 | def rawq_getchar(self): |
| 499 | """Get next char from raw queue. |
| 500 | |
| 501 | Block if no data is immediately available. Raise EOFError |
| 502 | when connection is closed. |
| 503 | |
| 504 | """ |
| 505 | if not self.rawq: |
| 506 | self.fill_rawq() |
| 507 | if self.eof: |
| 508 | raise EOFError |
| 509 | c = self.rawq[self.irawq:self.irawq+1] |
| 510 | self.irawq = self.irawq + 1 |
| 511 | if self.irawq >= len(self.rawq): |
| 512 | self.rawq = b'' |
| 513 | self.irawq = 0 |
| 514 | return c |
| 515 | |
| 516 | def fill_rawq(self): |
| 517 | """Fill raw queue from exactly one recv() system call. |