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!();