I can't find the function that did this, but it was something like if Ready is returned and then Pending immediately leads to panic. As such, if there is any data in a BufReader poll_fill_buf can not, by circular logic, read more async data... Because it can not call read and then return Pending, so it would be a blocking read call.
As such, there is no way to implement a nom wrapper AND a BufReader, because nom may need more data even if there is some data and this violates the conditions of implementing a BufReader.
This contains the other two PRs.
I can't find the function that did this, but it was something like if Ready is returned and then Pending immediately leads to panic. As such, if there is any data in a BufReader poll_fill_buf can not, by circular logic, read more async data... Because it can not call read and then return Pending, so it would be a blocking read call.
As such, there is no way to implement a nom wrapper AND a BufReader, because nom may need more data even if there is some data and this violates the conditions of implementing a BufReader.