use crate::{ReadSignal, Signal}; use dioxus_core::SuperFrom; #[doc(hidden)] pub struct ReadFromMarker(std::marker::PhantomData); impl SuperFrom> for ReadSignal where O: SuperFrom + 'static, T: 'static, { fn super_from(input: T) -> Self { ReadSignal::new(Signal::new(O::super_from(input))) } } #[test] #[allow(unused)] fn into_signal_compiles() { use dioxus_core::SuperInto; fn takes_signal_string(_: impl SuperInto, M>) {} fn takes_option_signal_string(_: impl SuperInto>, M>) {} fn don_t_run() { takes_signal_string("hello world"); takes_signal_string(Signal::new(String::from("hello world"))); takes_option_signal_string("hello world"); } }