From 8fb37c513485600efc79a29c46647e798ad14a0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Tue, 12 Oct 2021 11:24:54 +0300 Subject: [PATCH] gstreamer: Implement Deref for List and Array --- gstreamer/src/value.rs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/gstreamer/src/value.rs b/gstreamer/src/value.rs index beece920d..52ccbd326 100644 --- a/gstreamer/src/value.rs +++ b/gstreamer/src/value.rs @@ -655,6 +655,14 @@ impl<'a> Array<'a> { } } +impl<'a> ops::Deref for Array<'a> { + type Target = [glib::SendValue]; + + fn deref(&self) -> &[glib::SendValue] { + self.as_slice() + } +} + impl<'a> From<&'a [&'a (dyn ToSendValue + Sync)]> for Array<'a> { fn from(values: &'a [&'a (dyn ToSendValue + Sync)]) -> Self { skip_assert_initialized!(); @@ -749,6 +757,14 @@ impl<'a> List<'a> { } } +impl<'a> ops::Deref for List<'a> { + type Target = [glib::SendValue]; + + fn deref(&self) -> &[glib::SendValue] { + self.as_slice() + } +} + impl<'a> From<&'a [&'a (dyn ToSendValue + Sync)]> for List<'a> { fn from(values: &'a [&'a (dyn ToSendValue + Sync)]) -> Self { skip_assert_initialized!();