diff --git a/src/signal/mutable.rs b/src/signal/mutable.rs index a05db35..33c5337 100644 --- a/src/signal/mutable.rs +++ b/src/signal/mutable.rs @@ -287,10 +287,10 @@ impl Mutable { state2.notify(true); } - pub fn set(&self, value: A) { + pub fn set>(&self, value: V) { let mut state = self.state().lock.write().unwrap(); - state.value = value; + state.value = value.into(); state.notify(true); } @@ -321,7 +321,7 @@ impl From for Mutable { Mutable(ReadOnlyMutable(Arc::new(MutableState { senders: AtomicUsize::new(1), lock: RwLock::new(MutableLockState { - value: value.into(), + value, signals: vec![], }), }))) diff --git a/src/signal_vec.rs b/src/signal_vec.rs index 83a8e01..d0db718 100644 --- a/src/signal_vec.rs +++ b/src/signal_vec.rs @@ -3304,8 +3304,8 @@ mod mutable_vec { // TODO replace this with something else, like entry or IndexMut or whatever #[inline] - pub fn set(&mut self, index: usize, value: A) { - self.lock.set_copy(index, value) + pub fn set>(&mut self, index: usize, value: V) { + self.lock.set_copy(index, value.into()) } #[inline]