diff --git a/reactive_graph/src/signal_fn.rs b/reactive_graph/src/signal_fn.rs index ed3dd6f02..8b31c5880 100644 --- a/reactive_graph/src/signal_fn.rs +++ b/reactive_graph/src/signal_fn.rs @@ -181,10 +181,40 @@ impl_readable_deref_arena_signal_types![ Signal, ArcSignal, ArcMemo, - MaybeSignal, - MaybeProp + MaybeSignal ]; +#[allow(deprecated)] +impl< + T: Clone + 'static, + S: Storage + + Storage> + + Storage, S>> + + 'static, +> std::ops::Deref for MaybeProp +where + MaybeProp: crate::traits::Get>, +{ + type Target = dyn Fn() -> Option; + + fn deref(&self) -> &Self::Target { + unsafe { readable_deref_impl::ReadableDerefImpl::deref_impl(self) } + } +} + +#[allow(deprecated)] +impl< + T: Clone + 'static, + S: Storage + + Storage> + + Storage, S>> + + 'static, +> readable_deref_impl::ReadableDerefImpl for MaybeProp +where + MaybeProp: crate::traits::Get>, +{ +} + // ============================================================================= // Write-side Deref impls: Deref // =============================================================================