From 1ceaf8b179e931c3cd443b24c7b3db60a1162b98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Mon, 30 Oct 2023 11:34:35 +0200 Subject: Use let-else instead of match for weak reference upgrades Part-of: --- .../fallbackswitch/examples/gtk_fallbackswitch.rs | 20 ++++++--------- utils/fallbackswitch/src/fallbacksrc/imp.rs | 15 +++++------ utils/fallbackswitch/src/fallbackswitch/imp.rs | 5 ++-- utils/togglerecord/examples/gtk_recording.rs | 30 +++++++++------------- utils/tracers/src/pipeline_snapshot/imp.rs | 5 ++-- utils/uriplaylistbin/examples/playlist.rs | 10 +++----- utils/uriplaylistbin/src/uriplaylistbin/imp.rs | 20 ++++++--------- utils/uriplaylistbin/tests/uriplaylistbin.rs | 5 ++-- 8 files changed, 44 insertions(+), 66 deletions(-) (limited to 'utils') diff --git a/utils/fallbackswitch/examples/gtk_fallbackswitch.rs b/utils/fallbackswitch/examples/gtk_fallbackswitch.rs index 8acb1a74..da8865d9 100644 --- a/utils/fallbackswitch/examples/gtk_fallbackswitch.rs +++ b/utils/fallbackswitch/examples/gtk_fallbackswitch.rs @@ -105,9 +105,8 @@ fn create_ui(app: >k::Application) { let video_sink_weak = video_sink.downgrade(); let timeout_id = glib::timeout_add_local(std::time::Duration::from_millis(100), move || { - let video_sink = match video_sink_weak.upgrade() { - Some(video_sink) => video_sink, - None => return glib::ControlFlow::Continue, + let Some(video_sink) = video_sink_weak.upgrade() else { + return glib::ControlFlow::Break; }; let position = video_sink @@ -121,9 +120,8 @@ fn create_ui(app: >k::Application) { let video_src_pad_weak = video_src_pad.downgrade(); let drop_id = RefCell::new(None); drop_button.connect_toggled(move |drop_button| { - let video_src_pad = match video_src_pad_weak.upgrade() { - Some(video_src_pad) => video_src_pad, - None => return, + let Some(video_src_pad) = video_src_pad_weak.upgrade() else { + return; }; let drop = drop_button.is_active(); @@ -140,9 +138,8 @@ fn create_ui(app: >k::Application) { let app_weak = app.downgrade(); window.connect_close_request(move |_| { - let app = match app_weak.upgrade() { - Some(app) => app, - None => return glib::Propagation::Stop, + let Some(app) = app_weak.upgrade() else { + return glib::Propagation::Stop; }; app.quit(); @@ -155,9 +152,8 @@ fn create_ui(app: >k::Application) { .add_watch_local(move |_, msg| { use gst::MessageView; - let app = match app_weak.upgrade() { - Some(app) => app, - None => return glib::ControlFlow::Break, + let Some(app) = app_weak.upgrade() else { + return glib::ControlFlow::Break; }; match msg.view() { diff --git a/utils/fallbackswitch/src/fallbacksrc/imp.rs b/utils/fallbackswitch/src/fallbacksrc/imp.rs index 2001758f..9b4a7c17 100644 --- a/utils/fallbackswitch/src/fallbacksrc/imp.rs +++ b/utils/fallbackswitch/src/fallbacksrc/imp.rs @@ -2893,9 +2893,8 @@ impl FallbackSrc { self.obj().call_async(move |element| { let imp = element.imp(); - let source = match source_weak.upgrade() { - None => return, - Some(source) => source, + let Some(source) = source_weak.upgrade() else { + return; }; // Remove blocking pad probes if they are still there as otherwise shutting down the @@ -3081,9 +3080,8 @@ impl FallbackSrc { let element_weak = element.downgrade(); timeout .wait_async(move |_clock, _time, _id| { - let element = match element_weak.upgrade() { - None => return, - Some(element) => element, + let Some(element) = element_weak.upgrade() else { + return; }; gst::debug!(CAT, obj: element, "Woke up, retrying"); @@ -3305,9 +3303,8 @@ impl FallbackSrc { let element_weak = self.obj().downgrade(); timeout .wait_async(move |_clock, _time, _id| { - let element = match element_weak.upgrade() { - None => return, - Some(element) => element, + let Some(element) = element_weak.upgrade() else { + return; }; element.call_async(move |element| { diff --git a/utils/fallbackswitch/src/fallbackswitch/imp.rs b/utils/fallbackswitch/src/fallbackswitch/imp.rs index 376975fb..42c994e3 100644 --- a/utils/fallbackswitch/src/fallbackswitch/imp.rs +++ b/utils/fallbackswitch/src/fallbackswitch/imp.rs @@ -583,9 +583,8 @@ impl FallbackSwitch { let imp_weak = self.downgrade(); timeout_id .wait_async(move |_clock, _time, clock_id| { - let imp = match imp_weak.upgrade() { - None => return, - Some(imp) => imp, + let Some(imp) = imp_weak.upgrade() else { + return; }; imp.on_timeout(clock_id); }) diff --git a/utils/togglerecord/examples/gtk_recording.rs b/utils/togglerecord/examples/gtk_recording.rs index 1c2d8d48..ec930e98 100644 --- a/utils/togglerecord/examples/gtk_recording.rs +++ b/utils/togglerecord/examples/gtk_recording.rs @@ -217,14 +217,12 @@ fn create_ui(app: >k::Application) { let video_sink_weak = video_sink.downgrade(); let togglerecord_weak = togglerecord.downgrade(); let timeout_id = glib::timeout_add_local(std::time::Duration::from_millis(100), move || { - let video_sink = match video_sink_weak.upgrade() { - Some(video_sink) => video_sink, - None => return glib::ControlFlow::Continue, + let Some(video_sink) = video_sink_weak.upgrade() else { + return glib::ControlFlow::Break; }; - let togglerecord = match togglerecord_weak.upgrade() { - Some(togglerecord) => togglerecord, - None => return glib::ControlFlow::Continue, + let Some(togglerecord) = togglerecord_weak.upgrade() else { + return glib::ControlFlow::Break; }; let position = video_sink @@ -244,9 +242,8 @@ fn create_ui(app: >k::Application) { let togglerecord_weak = togglerecord.downgrade(); record_button.connect_clicked(move |button| { - let togglerecord = match togglerecord_weak.upgrade() { - Some(togglerecord) => togglerecord, - None => return, + let Some(togglerecord) = togglerecord_weak.upgrade() else { + return; }; let recording = !togglerecord.property::("record"); @@ -257,9 +254,8 @@ fn create_ui(app: >k::Application) { let record_button_weak = record_button.downgrade(); finish_button.connect_clicked(move |button| { - let record_button = match record_button_weak.upgrade() { - Some(record_button) => record_button, - None => return, + let Some(record_button) = record_button_weak.upgrade() else { + return; }; record_button.set_sensitive(false); @@ -271,9 +267,8 @@ fn create_ui(app: >k::Application) { let app_weak = app.downgrade(); window.connect_close_request(move |_| { - let app = match app_weak.upgrade() { - Some(app) => app, - None => return glib::Propagation::Stop, + let Some(app) = app_weak.upgrade() else { + return glib::Propagation::Stop; }; app.quit(); @@ -286,9 +281,8 @@ fn create_ui(app: >k::Application) { .add_watch_local(move |_, msg| { use gst::MessageView; - let app = match app_weak.upgrade() { - Some(app) => app, - None => return glib::ControlFlow::Break, + let Some(app) = app_weak.upgrade() else { + return glib::ControlFlow::Break; }; match msg.view() { diff --git a/utils/tracers/src/pipeline_snapshot/imp.rs b/utils/tracers/src/pipeline_snapshot/imp.rs index 29366d6d..9f80912a 100644 --- a/utils/tracers/src/pipeline_snapshot/imp.rs +++ b/utils/tracers/src/pipeline_snapshot/imp.rs @@ -192,9 +192,8 @@ impl PipelineSnapshot { for signal in &mut signals { match signal { SIGUSR1 => { - let tracer = match tracer_weak.upgrade() { - Some(tracer) => tracer, - None => break, + let Some(tracer) = tracer_weak.upgrade() else { + break; }; let pipelines = { diff --git a/utils/uriplaylistbin/examples/playlist.rs b/utils/uriplaylistbin/examples/playlist.rs index 707e0d92..3e293d3c 100644 --- a/utils/uriplaylistbin/examples/playlist.rs +++ b/utils/uriplaylistbin/examples/playlist.rs @@ -37,9 +37,8 @@ fn create_pipeline(uris: Vec, iterations: u32) -> anyhow::Result return, - Some(pipeline) => pipeline, + let Some(pipeline) = pipeline_weak.upgrade() else { + return; }; let pad_name = src_pad.name(); @@ -66,9 +65,8 @@ fn create_pipeline(uris: Vec, iterations: u32) -> anyhow::Result return, - Some(pipeline) => pipeline, + let Some(pipeline) = pipeline_weak.upgrade() else { + return; }; // remove sink bin that was handling the pad diff --git a/utils/uriplaylistbin/src/uriplaylistbin/imp.rs b/utils/uriplaylistbin/src/uriplaylistbin/imp.rs index c8f32f27..76324c08 100644 --- a/utils/uriplaylistbin/src/uriplaylistbin/imp.rs +++ b/utils/uriplaylistbin/src/uriplaylistbin/imp.rs @@ -1078,9 +1078,8 @@ impl UriPlaylistBin { ); src_pad.add_probe(gst::PadProbeType::BLOCK_DOWNSTREAM, move |pad, _info| { - let imp = match imp_weak.upgrade() { - Some(imp) => imp, - None => return gst::PadProbeReturn::Remove, + let Some(imp) = imp_weak.upgrade() else { + return gst::PadProbeReturn::Remove; }; if let Some(parent) = pad.parent() { @@ -1294,9 +1293,8 @@ impl UriPlaylistBin { return gst::PadProbeReturn::Pass; } - let element = match element_weak.upgrade() { - Some(element) => element, - None => return gst::PadProbeReturn::Remove, + let Some(element) = element_weak.upgrade() else { + return gst::PadProbeReturn::Remove; }; let imp = element.imp(); @@ -1396,14 +1394,12 @@ impl UriPlaylistBin { let item_weak = item.downgrade(); sink_pad.add_probe(gst::PadProbeType::BLOCK_DOWNSTREAM, move |pad, info| { - let element = match element_weak.upgrade() { - Some(element) => element, - None => return gst::PadProbeReturn::Remove, + let Some(element) = element_weak.upgrade() else { + return gst::PadProbeReturn::Remove; }; let parent = pad.parent().unwrap(); - let item = match Item::upgrade(&item_weak) { - Some(item) => item, - None => return gst::PadProbeReturn::Remove, + let Some(item) = Item::upgrade(&item_weak) else { + return gst::PadProbeReturn::Remove; }; if !item.is_streaming() { diff --git a/utils/uriplaylistbin/tests/uriplaylistbin.rs b/utils/uriplaylistbin/tests/uriplaylistbin.rs index 822023a3..8f741960 100644 --- a/utils/uriplaylistbin/tests/uriplaylistbin.rs +++ b/utils/uriplaylistbin/tests/uriplaylistbin.rs @@ -110,9 +110,8 @@ fn test( return; } - let pipeline = match pipeline_weak.upgrade() { - Some(pipeline) => pipeline, - None => return, + let Some(pipeline) = pipeline_weak.upgrade() else { + return; }; let sink = gst::ElementFactory::make("fakesink").build().unwrap(); -- cgit v1.2.3