diff options
author | Aaron O'Mullan <aaron.omullan@gmail.com> | 2021-08-15 13:29:19 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-15 13:29:19 +0200 |
commit | 2ca454b402d48c1808f8233c5adedc11b714c63c (patch) | |
tree | 592f9e877e9b0ae92be80383ab723cc290e4b01e /ext/net/ops.rs | |
parent | 18ff6bb053d600c277613628a256fe5fdd4dda67 (diff) |
refactor(ops): return BadResource errors in ResourceTable calls (#11710)
* refactor(ops): return BadResource errors in ResourceTable calls
Instead of relying on callers to map Options to Results via `.ok_or_else(bad_resource_id)` at over 176 different call sites ...
Diffstat (limited to 'ext/net/ops.rs')
-rw-r--r-- | ext/net/ops.rs | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/ext/net/ops.rs b/ext/net/ops.rs index a0fc2179e..7f8a97df3 100644 --- a/ext/net/ops.rs +++ b/ext/net/ops.rs @@ -107,7 +107,7 @@ async fn accept_tcp( .borrow() .resource_table .get::<TcpListenerResource>(rid) - .ok_or_else(|| bad_resource("Listener has been closed"))?; + .map_err(|_| bad_resource("Listener has been closed"))?; let listener = RcRef::map(&resource, |r| &r.listener) .try_borrow_mut() .ok_or_else(|| custom_error("Busy", "Another accept task is ongoing"))?; @@ -178,7 +178,7 @@ async fn receive_udp( .borrow_mut() .resource_table .get::<UdpSocketResource>(rid) - .ok_or_else(|| bad_resource("Socket has been closed"))?; + .map_err(|_| bad_resource("Socket has been closed"))?; let socket = RcRef::map(&resource, |r| &r.socket).borrow().await; let cancel_handle = RcRef::map(&resource, |r| &r.cancel); let (size, remote_addr) = socket @@ -246,7 +246,7 @@ where .borrow_mut() .resource_table .get::<UdpSocketResource>(rid) - .ok_or_else(|| bad_resource("Socket has been closed"))?; + .map_err(|_| bad_resource("Socket has been closed"))?; let socket = RcRef::map(&resource, |r| &r.socket).borrow().await; let byte_length = socket.send_to(&zero_copy, &addr).await?; Ok(byte_length) @@ -266,9 +266,7 @@ where .borrow() .resource_table .get::<net_unix::UnixDatagramResource>(rid) - .ok_or_else(|| { - custom_error("NotConnected", "Socket has been closed") - })?; + .map_err(|_| custom_error("NotConnected", "Socket has been closed"))?; let socket = RcRef::map(&resource, |r| &r.socket) .try_borrow_mut() .ok_or_else(|| custom_error("Busy", "Socket already in use"))?; |