centralize the terminal stuff

This commit is contained in:
mbecker20
2025-09-27 10:49:17 -07:00
parent a896583da6
commit 4baab194cf
6 changed files with 63 additions and 71 deletions

View File

@@ -28,12 +28,12 @@ impl<T: Deref> BufferedReceiver<T> {
}
}
/// - If 'next: Some(bytes)':
/// - Immediately returns borrow of next.
/// - If 'buffer: Some(bytes)':
/// - Immediately returns borrow of buffer.
/// - Else:
/// - Wait for next item
/// - store in 'next'
/// - return borrow of next.
/// - Wait for next item.
/// - store in buffer.
/// - return borrow of buffer.
pub async fn recv(&mut self) -> Option<&<T as Deref>::Target> {
if self.buffer.is_none() {
self.buffer = Some(self.receiver.recv().await?);