Function sample::signal::gen_mut
[−]
[src]
pub fn gen_mut<G, F>(gen_mut: G) -> GenMut<G, F> where
G: FnMut() -> F,
F: Frame,
A signal that generates frames using the given function which may mutate some state.
The resulting signal is assumed to be infinite and is_exhausted
will always return false
.
To create an exhaustive signal first create an Iterator
and then use from_iter
.
Example
extern crate sample; use sample::{signal, Signal}; fn main() { let mut f = [0.0]; let mut signal = signal::gen_mut(|| { let r = f; f[0] += 0.1; r }); assert_eq!(signal.next(), [0.0]); assert_eq!(signal.next(), [0.1]); assert_eq!(signal.next(), [0.2]); }