Skip to content

Commit fcc987e

Browse files
muxers/mplex/benches: Use combinators to reduce nesting (#2688)
1 parent bd9834a commit fcc987e

File tree

1 file changed

+17
-19
lines changed

1 file changed

+17
-19
lines changed

muxers/mplex/benches/split_send_size.rs

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -104,26 +104,24 @@ fn run(transport: &mut BenchTransport, payload: &Vec<u8>, listen_addr: &Multiadd
104104
}
105105
transport::ListenerEvent::Upgrade { upgrade, .. } => {
106106
let (_peer, conn) = upgrade.await.unwrap();
107-
match poll_fn(|cx| conn.poll_event(cx)).await {
108-
Ok(muxing::StreamMuxerEvent::InboundSubstream(mut s)) => {
109-
let mut buf = vec![0u8; payload_len];
110-
let mut off = 0;
111-
loop {
112-
// Read in typical chunk sizes of up to 8KiB.
113-
let end = off + std::cmp::min(buf.len() - off, 8 * 1024);
114-
let n = poll_fn(|cx| {
115-
conn.read_substream(cx, &mut s, &mut buf[off..end])
116-
})
117-
.await
118-
.unwrap();
119-
off += n;
120-
if off == buf.len() {
121-
return;
122-
}
123-
}
107+
let mut s = poll_fn(|cx| conn.poll_event(cx))
108+
.await
109+
.expect("unexpected error")
110+
.into_inbound_substream()
111+
.expect("Unexpected muxer event");
112+
113+
let mut buf = vec![0u8; payload_len];
114+
let mut off = 0;
115+
loop {
116+
// Read in typical chunk sizes of up to 8KiB.
117+
let end = off + std::cmp::min(buf.len() - off, 8 * 1024);
118+
let n = poll_fn(|cx| conn.read_substream(cx, &mut s, &mut buf[off..end]))
119+
.await
120+
.unwrap();
121+
off += n;
122+
if off == buf.len() {
123+
return;
124124
}
125-
Ok(_) => panic!("Unexpected muxer event"),
126-
Err(e) => panic!("Unexpected error: {:?}", e),
127125
}
128126
}
129127
_ => panic!("Unexpected listener event"),

0 commit comments

Comments
 (0)