[−][src]Trait langis::Signal
The main signal trait. Every signal must implement this trait.
Implementing Signal
use langis::Signal; /// A simple signal that yield `0u8` continuously. struct MySignal; impl Signal for MySignal { type Type = u8; fn next(&mut self) -> Self::Type { 0u8 } }
Associated Types
type Type
The type of the signal.
Required methods
Loading content...Provided methods
fn add<S>(self, other: S) -> Add<Self, S> where
Self: Sized,
S: Signal,
Self::Type: Add<S::Type>,
Self: Sized,
S: Signal,
Self::Type: Add<S::Type>,
Performs the +
operation.
fn sub<S>(self, other: S) -> Sub<Self, S> where
Self: Sized,
S: Signal,
Self::Type: Sub<S::Type>,
Self: Sized,
S: Signal,
Self::Type: Sub<S::Type>,
Performs the -
operation.
fn mul<S>(self, other: S) -> Mul<Self, S> where
Self: Sized,
S: Signal,
Self::Type: Mul<S::Type>,
Self: Sized,
S: Signal,
Self::Type: Mul<S::Type>,
Performs the *
operation.
fn div<S>(self, other: S) -> Div<Self, S> where
Self: Sized,
S: Signal,
Self::Type: Div<S::Type>,
Self: Sized,
S: Signal,
Self::Type: Div<S::Type>,
Performs the /
operation.
fn rem<S>(self, other: S) -> Rem<Self, S> where
Self: Sized,
S: Signal,
Self::Type: Rem<S::Type>,
Self: Sized,
S: Signal,
Self::Type: Rem<S::Type>,
Performs the %
operation.
fn bitand<S>(self, other: S) -> BitAnd<Self, S> where
Self: Sized,
S: Signal,
Self::Type: BitAnd<S::Type>,
Self: Sized,
S: Signal,
Self::Type: BitAnd<S::Type>,
Performs the &
operation.
fn bitor<S>(self, other: S) -> BitOr<Self, S> where
Self: Sized,
S: Signal,
Self::Type: BitOr<S::Type>,
Self: Sized,
S: Signal,
Self::Type: BitOr<S::Type>,
Performs the |
operation.
fn bitxor<S>(self, other: S) -> BitXor<Self, S> where
Self: Sized,
S: Signal,
Self::Type: BitXor<S::Type>,
Self: Sized,
S: Signal,
Self::Type: BitXor<S::Type>,
Performs the ^
operation.
fn shr<S>(self, other: S) -> Shr<Self, S> where
Self: Sized,
S: Signal,
Self::Type: Shr<S::Type>,
Self: Sized,
S: Signal,
Self::Type: Shr<S::Type>,
Performs the >>
operation.
fn shl<S>(self, other: S) -> Shl<Self, S> where
Self: Sized,
S: Signal,
Self::Type: Shl<S::Type>,
Self: Sized,
S: Signal,
Self::Type: Shl<S::Type>,
Performs the <<
operation.
fn neg(self) -> Neg<Self> where
Self: Sized,
Self::Type: Neg,
Self: Sized,
Self::Type: Neg,
Negates this signal.
fn min<S>(self, other: S) -> Min<Self, S> where
Self: Sized,
S: Signal<Type = Self::Type>,
Self::Type: Ord,
Self: Sized,
S: Signal<Type = Self::Type>,
Self::Type: Ord,
Returns the minimum of this signal and the other.
fn max<S>(self, other: S) -> Max<Self, S> where
Self: Sized,
S: Signal<Type = Self::Type>,
Self::Type: Ord,
Self: Sized,
S: Signal<Type = Self::Type>,
Self::Type: Ord,
Returns the maximum of this signal and the other.
fn clamp<Min, Max>(self, min: Min, max: Max) -> Clamp<Self, Min, Max> where
Self: Sized,
Min: Signal<Type = Self::Type>,
Max: Signal<Type = Self::Type>,
Self::Type: Ord,
Self: Sized,
Min: Signal<Type = Self::Type>,
Max: Signal<Type = Self::Type>,
Self::Type: Ord,
Clamps this signal between min
and max
. This result of this function is
the same as .max(min).min(max)
.
fn map<F, T>(self, map: F) -> Map<Self, F> where
Self: Sized,
F: FnMut(Self::Type) -> T,
Self: Sized,
F: FnMut(Self::Type) -> T,
Maps this signal to another using the given function.
fn filter<F>(self, predicate: F) -> Filter<Self, F> where
Self: Sized,
F: FnMut(&Self::Type) -> bool,
Self: Sized,
F: FnMut(&Self::Type) -> bool,
Filters values of the signal with the given predicate.
fn filter_map<F, T>(self, predicate: F) -> FilterMap<Self, F> where
Self: Sized,
F: FnMut(Self::Type) -> Option<T>,
Self: Sized,
F: FnMut(Self::Type) -> Option<T>,
Filters and maps a signal to another using the given predicate.
fn cloned<'a, T>(self) -> Cloned<Self> where
Self: Sized + Signal<Type = &'a T>,
T: 'a + Clone,
Self: Sized + Signal<Type = &'a T>,
T: 'a + Clone,
Clones the values of this signal. This is useful to turn a Signal<Type = &T>
into a Signal<Type = T>
.
fn inspect<F>(self, inspect: F) -> Inspect<Self, F> where
Self: Sized,
F: FnMut(&Self::Type),
Self: Sized,
F: FnMut(&Self::Type),
Inspects the values of this signal by calling a function before yielding the value.
fn zip<S>(self, other: S) -> Zip<Self, S> where
Self: Sized,
S: Signal,
Self: Sized,
S: Signal,
Zips this signal with another.
fn into<T>(self) -> Into<Self, T> where
Self: Sized,
Self::Type: Into<T>,
Self: Sized,
Self::Type: Into<T>,
Turns this signal into another using the Into
trait.
fn skip(self, n: usize) -> Skip<Self> where
Self: Sized,
Self: Sized,
Skips n
values of the signal.
fn into_iter(self) -> IntoIter<Self>ⓘ where
Self: Sized,
Self: Sized,
Creates an iterator that yields the values of this signal.
fn ease(self, amount: Self::Type) -> Ease<Self> where
Self: Sized,
Self::Type: Float,
Self: Sized,
Self::Type: Float,
Eases this signal with the given amount
. A greater amount will make the
the signal smoother and any amount lower than 0.0
will give wierd results.
fn lerp<S>(self, other: S, amount: Self::Type) -> Lerp<Self, S> where
Self: Sized,
S: Signal<Type = Self::Type>,
Self::Type: Float,
Self: Sized,
S: Signal<Type = Self::Type>,
Self::Type: Float,
Linearly interpolates between this signal and another.
fn wrapping_add<S, RefL, RefR, T>(self, other: S) -> WrappingAdd<T, Self, S> where
T: WrappingAdd,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
T: WrappingAdd,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
fn wrapping_sub<S, RefL, RefR, T>(self, other: S) -> WrappingSub<T, Self, S> where
T: WrappingSub,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
T: WrappingSub,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
fn wrapping_mul<S, RefL, RefR, T>(self, other: S) -> WrappingMul<T, Self, S> where
T: WrappingMul,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
T: WrappingMul,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
fn wrapping_shr<S, RefL, T>(self, other: S) -> WrappingShr<T, Self, S> where
T: WrappingShr,
RefL: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = u32>,
T: WrappingShr,
RefL: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = u32>,
fn wrapping_shl<S, RefL, T>(self, other: S) -> WrappingShl<T, Self, S> where
T: WrappingShl,
RefL: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = u32>,
T: WrappingShl,
RefL: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = u32>,
fn saturating_add<S, RefL, RefR, T>(self, other: S) -> SaturatingAdd<T, Self, S> where
T: SaturatingAdd,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
T: SaturatingAdd,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
fn saturating_sub<S, RefL, RefR, T>(self, other: S) -> SaturatingSub<T, Self, S> where
T: SaturatingSub,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
T: SaturatingSub,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
fn saturating_mul<S, RefL, RefR, T>(self, other: S) -> SaturatingMul<T, Self, S> where
T: SaturatingMul,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
T: SaturatingMul,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
fn checked_add<S, RefL, RefR, T>(self, other: S) -> CheckedAdd<T, Self, S> where
T: CheckedAdd,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
T: CheckedAdd,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
fn checked_sub<S, RefL, RefR, T>(self, other: S) -> CheckedSub<T, Self, S> where
T: CheckedSub,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
T: CheckedSub,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
fn checked_mul<S, RefL, RefR, T>(self, other: S) -> CheckedMul<T, Self, S> where
T: CheckedMul,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
T: CheckedMul,
RefL: AsRef<T>,
RefR: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = RefR>,
fn checked_shr<S, RefL, T>(self, other: S) -> CheckedShr<T, Self, S> where
T: CheckedShr,
RefL: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = u32>,
T: CheckedShr,
RefL: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = u32>,
fn checked_shl<S, RefL, T>(self, other: S) -> CheckedShl<T, Self, S> where
T: CheckedShr,
RefL: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = u32>,
T: CheckedShr,
RefL: AsRef<T>,
Self: Sized + Signal<Type = RefL>,
S: Signal<Type = u32>,
fn inv(self) -> Inv<Self> where
Self: Sized,
Self::Type: Inv,
Self: Sized,
Self::Type: Inv,
fn mul_add<M, A>(self, mul: M, add: A) -> MulAdd<Self, M, A> where
Self: Sized,
M: Signal,
A: Signal,
Self::Type: MulAdd<M::Type, A::Type>,
Self: Sized,
M: Signal,
A: Signal,
Self::Type: MulAdd<M::Type, A::Type>,
fn pow<E>(self, exp: E) -> Pow<Self, E> where
Self: Sized,
E: Signal,
Self::Type: Pow<E::Type>,
Self: Sized,
E: Signal,
Self::Type: Pow<E::Type>,
fn interpolate<F>(self, length: usize, interpolate: F) -> Interpolate<Self, F> where
Self: Sized,
Self::Type: Float + FromPrimitive,
F: FnMut(Self::Type, Self::Type, Self::Type) -> Self::Type,
Self: Sized,
Self::Type: Float + FromPrimitive,
F: FnMut(Self::Type, Self::Type, Self::Type) -> Self::Type,
Creates a signal that interpolates new values using the given interpolation function.
Implementors
impl<'a, S, T> Signal for Cloned<S> where
T: 'a + Clone,
S: Signal<Type = &'a T>,
[src]
T: 'a + Clone,
S: Signal<Type = &'a T>,
impl<A, B> Signal for Max<A, B> where
A: Signal,
B: Signal<Type = A::Type>,
A::Type: Ord,
[src]
A: Signal,
B: Signal<Type = A::Type>,
A::Type: Ord,
impl<A, B> Signal for Min<A, B> where
A: Signal,
B: Signal<Type = A::Type>,
A::Type: Ord,
[src]
A: Signal,
B: Signal<Type = A::Type>,
A::Type: Ord,
impl<A, B> Signal for Zip<A, B> where
A: Signal,
B: Signal,
[src]
A: Signal,
B: Signal,
impl<A, B> Signal for Lerp<A, B> where
A: Signal,
B: Signal<Type = A::Type>,
A::Type: Float,
[src]
A: Signal,
B: Signal<Type = A::Type>,
A::Type: Float,
impl<F, T> Signal for Gen<F> where
F: FnMut() -> T,
[src]
F: FnMut() -> T,
impl<I> Signal for Cycle<I> where
I: Iterator + Clone,
[src]
I: Iterator + Clone,
impl<L, R> Signal for Add<L, R> where
L: Signal,
R: Signal,
L::Type: Add<R::Type>,
[src]
L: Signal,
R: Signal,
L::Type: Add<R::Type>,
impl<L, R> Signal for BitAnd<L, R> where
L: Signal,
R: Signal,
L::Type: BitAnd<R::Type>,
[src]
L: Signal,
R: Signal,
L::Type: BitAnd<R::Type>,
impl<L, R> Signal for BitOr<L, R> where
L: Signal,
R: Signal,
L::Type: BitOr<R::Type>,
[src]
L: Signal,
R: Signal,
L::Type: BitOr<R::Type>,
impl<L, R> Signal for BitXor<L, R> where
L: Signal,
R: Signal,
L::Type: BitXor<R::Type>,
[src]
L: Signal,
R: Signal,
L::Type: BitXor<R::Type>,
impl<L, R> Signal for Div<L, R> where
L: Signal,
R: Signal,
L::Type: Div<R::Type>,
[src]
L: Signal,
R: Signal,
L::Type: Div<R::Type>,
impl<L, R> Signal for Mul<L, R> where
L: Signal,
R: Signal,
L::Type: Mul<R::Type>,
[src]
L: Signal,
R: Signal,
L::Type: Mul<R::Type>,
impl<L, R> Signal for Rem<L, R> where
L: Signal,
R: Signal,
L::Type: Rem<R::Type>,
[src]
L: Signal,
R: Signal,
L::Type: Rem<R::Type>,
impl<L, R> Signal for Shl<L, R> where
L: Signal,
R: Signal,
L::Type: Shl<R::Type>,
[src]
L: Signal,
R: Signal,
L::Type: Shl<R::Type>,
impl<L, R> Signal for Shr<L, R> where
L: Signal,
R: Signal,
L::Type: Shr<R::Type>,
[src]
L: Signal,
R: Signal,
L::Type: Shr<R::Type>,
impl<L, R> Signal for Sub<L, R> where
L: Signal,
R: Signal,
L::Type: Sub<R::Type>,
[src]
L: Signal,
R: Signal,
L::Type: Sub<R::Type>,
impl<L, R, RefL, RefR, T> Signal for CheckedAdd<T, L, R> where
T: CheckedAdd,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
[src]
T: CheckedAdd,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
impl<L, R, RefL, RefR, T> Signal for CheckedMul<T, L, R> where
T: CheckedMul,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
[src]
T: CheckedMul,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
impl<L, R, RefL, RefR, T> Signal for CheckedSub<T, L, R> where
T: CheckedSub,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
[src]
T: CheckedSub,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
impl<L, R, RefL, RefR, T> Signal for SaturatingAdd<T, L, R> where
T: SaturatingAdd,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
[src]
T: SaturatingAdd,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
impl<L, R, RefL, RefR, T> Signal for SaturatingMul<T, L, R> where
T: SaturatingMul,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
[src]
T: SaturatingMul,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
impl<L, R, RefL, RefR, T> Signal for SaturatingSub<T, L, R> where
T: SaturatingSub,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
[src]
T: SaturatingSub,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
impl<L, R, RefL, RefR, T> Signal for WrappingAdd<T, L, R> where
T: WrappingAdd,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
[src]
T: WrappingAdd,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
impl<L, R, RefL, RefR, T> Signal for WrappingMul<T, L, R> where
T: WrappingMul,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
[src]
T: WrappingMul,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
impl<L, R, RefL, RefR, T> Signal for WrappingSub<T, L, R> where
T: WrappingSub,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
[src]
T: WrappingSub,
RefL: AsRef<T>,
RefR: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = RefR>,
impl<L, R, RefL, T> Signal for CheckedShl<T, L, R> where
T: CheckedShl,
RefL: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = u32>,
[src]
T: CheckedShl,
RefL: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = u32>,
impl<L, R, RefL, T> Signal for CheckedShr<T, L, R> where
T: CheckedShr,
RefL: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = u32>,
[src]
T: CheckedShr,
RefL: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = u32>,
impl<L, R, RefL, T> Signal for WrappingShl<T, L, R> where
T: WrappingShl,
RefL: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = u32>,
[src]
T: WrappingShl,
RefL: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = u32>,
impl<L, R, RefL, T> Signal for WrappingShr<T, L, R> where
T: WrappingShr,
RefL: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = u32>,
[src]
T: WrappingShr,
RefL: AsRef<T>,
L: Signal<Type = RefL>,
R: Signal<Type = u32>,
impl<R, D, T> Signal for Random<R, D, T> where
R: Rng,
D: Distribution<T>,
[src]
R: Rng,
D: Distribution<T>,
impl<S> Signal for Neg<S> where
S: Signal,
S::Type: Neg,
[src]
S: Signal,
S::Type: Neg,
impl<S> Signal for Skip<S> where
S: Signal,
[src]
S: Signal,
impl<S> Signal for Simplex<S> where
S: Signal<Type = f64>,
[src]
S: Signal<Type = f64>,
impl<S> Signal for Ease<S> where
S: Signal,
S::Type: Float,
[src]
S: Signal,
S::Type: Float,
impl<S> Signal for Inv<S> where
S: Signal,
S::Type: Inv,
[src]
S: Signal,
S::Type: Inv,
impl<S> Signal for Sawtooth<S> where
S: Signal,
S::Type: Float,
[src]
S: Signal,
S::Type: Float,
impl<S> Signal for Sine<S> where
S: Signal,
S::Type: Float + FloatConst,
[src]
S: Signal,
S::Type: Float + FloatConst,
impl<S> Signal for Square<S> where
S: Signal,
S::Type: Float,
[src]
S: Signal,
S::Type: Float,
impl<S> Signal for Triangle<S> where
S: Signal,
S::Type: Float,
[src]
S: Signal,
S::Type: Float,
impl<S, E> Signal for Pow<S, E> where
S: Signal,
E: Signal,
S::Type: Pow<E::Type>,
[src]
S: Signal,
E: Signal,
S::Type: Pow<E::Type>,
impl<S, F> Signal for Filter<S, F> where
S: Signal,
F: FnMut(&S::Type) -> bool,
[src]
S: Signal,
F: FnMut(&S::Type) -> bool,
impl<S, F> Signal for Inspect<S, F> where
S: Signal,
F: FnMut(&S::Type),
[src]
S: Signal,
F: FnMut(&S::Type),
impl<S, F, T> Signal for FilterMap<S, F> where
S: Signal,
F: FnMut(S::Type) -> Option<T>,
[src]
S: Signal,
F: FnMut(S::Type) -> Option<T>,
impl<S, F, T> Signal for Map<S, F> where
S: Signal,
F: FnMut(S::Type) -> T,
[src]
S: Signal,
F: FnMut(S::Type) -> T,
impl<S, F, T> Signal for Oscillator<S, F> where
S: Signal,
S::Type: Float,
F: FnMut(S::Type) -> T,
[src]
S: Signal,
S::Type: Float,
F: FnMut(S::Type) -> T,
impl<S, I> Signal for Interpolate<S, I> where
S: Signal,
I: FnMut(S::Type, S::Type, S::Type) -> S::Type,
S::Type: Float + FromPrimitive,
[src]
S: Signal,
I: FnMut(S::Type, S::Type, S::Type) -> S::Type,
S::Type: Float + FromPrimitive,
impl<S, M, A> Signal for MulAdd<S, M, A> where
S: Signal,
M: Signal,
A: Signal,
S::Type: MulAdd<M::Type, A::Type>,
[src]
S: Signal,
M: Signal,
A: Signal,
S::Type: MulAdd<M::Type, A::Type>,
impl<S, Min, Max> Signal for Clamp<S, Min, Max> where
S: Signal,
Min: Signal<Type = S::Type>,
Max: Signal<Type = S::Type>,
S::Type: Ord,
[src]
S: Signal,
Min: Signal<Type = S::Type>,
Max: Signal<Type = S::Type>,
S::Type: Ord,
impl<S, T> Signal for Into<S, T> where
S: Signal,
S::Type: Into<T>,
[src]
S: Signal,
S::Type: Into<T>,
impl<T, F> Signal for Successors<T, F> where
F: FnMut(&T) -> T,
[src]
F: FnMut(&T) -> T,