diff --git a/Cargo.toml b/Cargo.toml index 253cdbd7..bbfc5e01 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "sample" description = "A crate providing the fundamentals for working with audio PCM DSP." -version = "0.7.0" +version = "0.7.1" authors = ["mitchmindtree "] readme = "README.md" keywords = ["dsp", "bit-depth", "rate", "pcm", "audio"] diff --git a/src/signal.rs b/src/signal.rs index 00ddd57d..95559053 100644 --- a/src/signal.rs +++ b/src/signal.rs @@ -585,7 +585,7 @@ pub trait Signal { impl<'a, S> Signal for &'a mut S - where S: Signal, + where S: Signal + ?Sized, { type Frame = S::Frame; fn next(&mut self) -> Self::Frame { @@ -1164,14 +1164,13 @@ pub fn noise_simplex(phase: Phase) -> NoiseSimplex { //// Trait Implementations for Signal Types. -impl Signal for Box> - where F: Frame +impl Signal for Box + where S: Signal + ?Sized, { - type Frame = F; + type Frame = S::Frame; #[inline] fn next(&mut self) -> Self::Frame { - use core::ops::DerefMut; - self.deref_mut().next() + (**self).next() } }