diff options
author | eri <eri@inventati.org> | 2024-03-21 13:51:45 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-21 12:51:45 +0000 |
commit | da696b7e57fd4fbf615b3853ac48cf522e87e098 (patch) | |
tree | c52bb9149c8f38a3484838ca78729de4ca788048 /components/shared/canvas/webgl_channel | |
parent | ea62a5e24f5c9a3b7c0588506f7a38de9ddbcd67 (diff) | |
download | servo-da696b7e57fd4fbf615b3853ac48cf522e87e098.tar.gz servo-da696b7e57fd4fbf615b3853ac48cf522e87e098.zip |
clippy: fix `result_unit_err` warnings (#31791)
* clippy: fix `result_unit_err` warnings
* feat: fix result warnings in script
* doc: document `generate_key` return type
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* feat: add back result to RangeRequestBounds::get_final
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
---------
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
Diffstat (limited to 'components/shared/canvas/webgl_channel')
-rw-r--r-- | components/shared/canvas/webgl_channel/mod.rs | 32 |
1 files changed, 20 insertions, 12 deletions
diff --git a/components/shared/canvas/webgl_channel/mod.rs b/components/shared/canvas/webgl_channel/mod.rs index edfb90c8806..13c66ef382d 100644 --- a/components/shared/canvas/webgl_channel/mod.rs +++ b/components/shared/canvas/webgl_channel/mod.rs @@ -49,13 +49,19 @@ impl<T: Serialize> WebGLSender<T> { #[inline] pub fn send(&self, msg: T) -> WebGLSendResult { match *self { - WebGLSender::Ipc(ref sender) => sender.send(msg).map_err(|_| ()), - WebGLSender::Mpsc(ref sender) => sender.send(msg).map_err(|_| ()), + WebGLSender::Ipc(ref sender) => sender.send(msg).map_err(|_| WebGLSendError), + WebGLSender::Mpsc(ref sender) => sender.send(msg).map_err(|_| WebGLSendError), } } } -pub type WebGLSendResult = Result<(), ()>; +#[derive(Debug)] +pub struct WebGLSendError; +pub type WebGLSendResult = Result<(), WebGLSendError>; + +#[derive(Debug)] +pub struct WebGLReceiveError; +pub type WebGLReceiveResult<T> = Result<T, WebGLReceiveError>; pub enum WebGLReceiver<T> where @@ -69,17 +75,17 @@ impl<T> WebGLReceiver<T> where T: for<'de> Deserialize<'de> + Serialize, { - pub fn recv(&self) -> Result<T, ()> { + pub fn recv(&self) -> WebGLReceiveResult<T> { match *self { - WebGLReceiver::Ipc(ref receiver) => receiver.recv().map_err(|_| ()), - WebGLReceiver::Mpsc(ref receiver) => receiver.recv().map_err(|_| ()), + WebGLReceiver::Ipc(ref receiver) => receiver.recv().map_err(|_| WebGLReceiveError), + WebGLReceiver::Mpsc(ref receiver) => receiver.recv().map_err(|_| WebGLReceiveError), } } - pub fn try_recv(&self) -> Result<T, ()> { + pub fn try_recv(&self) -> WebGLReceiveResult<T> { match *self { - WebGLReceiver::Ipc(ref receiver) => receiver.try_recv().map_err(|_| ()), - WebGLReceiver::Mpsc(ref receiver) => receiver.try_recv().map_err(|_| ()), + WebGLReceiver::Ipc(ref receiver) => receiver.try_recv().map_err(|_| WebGLReceiveError), + WebGLReceiver::Mpsc(ref receiver) => receiver.try_recv().map_err(|_| WebGLReceiveError), } } @@ -96,16 +102,18 @@ where } } -pub fn webgl_channel<T>() -> Result<(WebGLSender<T>, WebGLReceiver<T>), ()> +pub fn webgl_channel<T>() -> Option<(WebGLSender<T>, WebGLReceiver<T>)> where T: for<'de> Deserialize<'de> + Serialize, { if *IS_MULTIPROCESS { ipc::webgl_channel() .map(|(tx, rx)| (WebGLSender::Ipc(tx), WebGLReceiver::Ipc(rx))) - .map_err(|_| ()) + .ok() } else { - mpsc::webgl_channel().map(|(tx, rx)| (WebGLSender::Mpsc(tx), WebGLReceiver::Mpsc(rx))) + mpsc::webgl_channel() + .map(|(tx, rx)| (WebGLSender::Mpsc(tx), WebGLReceiver::Mpsc(rx))) + .ok() } } |