Struct rin::events::Property[][src]

#[must_use = "Dropping a Property unsubscribes it and all the chain until the origin sender"]
pub struct Property<'a, T> where
    T: 'a + Clone
{ /* fields omitted */ }

Implementations

impl<'a, T> Property<'a, T> where
    T: 'a + Clone
[src]

pub fn from_parent<S>(parent: S, initial: T) -> Property<'a, T> where
    S: Into<StreamRc<'a, T>>, 
[src]

pub fn new(initial: T) -> Property<'a, T>[src]

pub fn swap_parent<S>(&mut self, parent: S) where
    S: Into<StreamRc<'a, T>>, 
[src]

pub fn from_sender_stream<S>(
    sender: SenderRc<'a, T>,
    stream: S,
    initial: T
) -> Property<'a, T> where
    S: Into<StreamRc<'a, T>>, 
[src]

pub fn get(&self) -> &T[src]

pub fn into_inner(self) -> Result<T, Property<'a, T>>[src]

pub fn set(&mut self, t: T)[src]

pub fn map<'b, T2, F>(self, f: F) -> Property<'b, T2> where
    'a: 'b,
    T: 'b,
    F: 'a + FnMut(T) -> T2,
    T2: Clone
[src]

pub fn inspect<'b, F>(self, f: F) -> Property<'b, T> where
    'a: 'b,
    T: 'b,
    F: 'b + Fn(&T), 
[src]

pub fn filter<'b, F>(self, f: F) -> Property<'b, T> where
    'a: 'b,
    T: 'b,
    F: 'b + FnMut(&T) -> bool
[src]

pub fn filter_by<'b, 'c>(self, b: Property<'b, bool>) -> Property<'c, T> where
    'a: 'b,
    'b: 'c,
    T: 'b, 
[src]

pub fn merge<'b, 'c>(self, b: Property<'b, T>) -> Property<'c, T> where
    'a: 'b,
    'b: 'c,
    T: 'b, 
[src]

pub fn merge_stream<'b, 'c, S>(self, b: S) -> Property<'c, T> where
    'a: 'b,
    'b: 'c,
    T: 'b,
    S: StreamExt<'a, T>, 
[src]

pub fn zip<T2>(self, other: Property<'a, T2>) -> Property<'a, (T, T2)> where
    T2: 'a + Clone
[src]

pub fn stream(self) -> StreamRc<'a, T>[src]

pub fn is(&self, other: &Property<'b, T>) -> bool[src]

pub fn try_iter<'b>(self) -> TryIter<'b, T>

Notable traits for TryIter<'a, T>

impl<'a, T> Iterator for TryIter<'a, T> type Item = T;
where
    'a: 'b, 
[src]

pub fn to_parameter<'b>(self) -> Parameter<'b, T> where
    'a: 'b, 
[src]

pub fn into_property_last_value(self) -> PropertyLastValue<'a, T>[src]

impl<'a> Property<'a, bool>[src]

pub fn switch<T, S>(self, then: S, else_: S) -> Stream<'a, T> where
    T: 'a + Clone,
    S: Into<Stream<'a, T>>, 
[src]

impl<'a, T> Property<'a, Vec<T, Global>> where
    T: Clone
[src]

pub fn push(&mut self, t: T)[src]

pub fn remove(&mut self, idx: usize) -> T[src]

impl<'a, T> Property<'a, T> where
    T: 'a + Clone + PartialEq<T>, 
[src]

pub fn dedup<'b>(self) -> Property<'b, T> where
    'a: 'b, 
[src]

pub fn changed<'b>(self) -> Stream<'b, ()> where
    'a: 'b, 
[src]

impl<'a, T1, T2> Property<'a, (T1, T2)> where
    T2: 'a + Clone,
    T1: 'a + Clone
[src]

pub fn unzip<'b>(self) -> (Property<'b, T1>, Property<'b, T2>) where
    'a: 'b, 
[src]

impl<'a, T1, T2, T3> Property<'a, ((T1, T2), T3)> where
    T3: 'a + Clone,
    T2: 'a + Clone,
    T1: 'a + Clone
[src]

pub fn flatten<'b>(self) -> Property<'b, (T1, T2, T3)> where
    'a: 'b, 
[src]

Trait Implementations

impl<'a, T> Add<Property<'a, T>> for Property<'a, T> where
    T: Add<T> + Clone,
    <T as Add<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Add<T>>::Output>

The resulting type after applying the + operator.

impl<'a, T> Add<T> for Property<'a, T> where
    T: Add<T> + Clone,
    <T as Add<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Add<T>>::Output>

The resulting type after applying the + operator.

impl<'a, T> AsRef<T> for Property<'a, T> where
    T: Clone
[src]

impl<'a, T> BitAnd<Property<'a, T>> for Property<'a, T> where
    T: BitAnd<T> + Clone,
    <T as BitAnd<T>>::Output: Clone
[src]

type Output = Property<'a, <T as BitAnd<T>>::Output>

The resulting type after applying the & operator.

impl<'a, T> BitAnd<T> for Property<'a, T> where
    T: BitAnd<T> + Clone,
    <T as BitAnd<T>>::Output: Clone
[src]

type Output = Property<'a, <T as BitAnd<T>>::Output>

The resulting type after applying the & operator.

impl<'a, T> BitOr<Property<'a, T>> for Property<'a, T> where
    T: BitOr<T> + Clone,
    <T as BitOr<T>>::Output: Clone
[src]

type Output = Property<'a, <T as BitOr<T>>::Output>

The resulting type after applying the | operator.

impl<'a, T> BitOr<T> for Property<'a, T> where
    T: BitOr<T> + Clone,
    <T as BitOr<T>>::Output: Clone
[src]

type Output = Property<'a, <T as BitOr<T>>::Output>

The resulting type after applying the | operator.

impl<'a, T> BitXor<Property<'a, T>> for Property<'a, T> where
    T: BitXor<T> + Clone,
    <T as BitXor<T>>::Output: Clone
[src]

type Output = Property<'a, <T as BitXor<T>>::Output>

The resulting type after applying the ^ operator.

impl<'a, T> BitXor<T> for Property<'a, T> where
    T: BitXor<T> + Clone,
    <T as BitXor<T>>::Output: Clone
[src]

type Output = Property<'a, <T as BitXor<T>>::Output>

The resulting type after applying the ^ operator.

impl<'a, T> Borrow<T> for Property<'a, T> where
    T: Clone
[src]

impl<'a, T> Clone for Property<'a, T> where
    T: 'a + Clone
[src]

impl<'a, T> ConstProperty<'a, T> for Property<'a, T> where
    T: 'a + Clone
[src]

impl<'a, T> Debug for Property<'a, T> where
    T: 'a + Clone + Debug
[src]

impl<'a, T> Default for Property<'a, T> where
    T: Clone + Default
[src]

impl<'a, 'de, T> Deserialize<'de> for Property<'a, T> where
    T: 'a + Clone + Deserialize<'de>, 
[src]

impl<'a, T> Div<Property<'a, T>> for Property<'a, T> where
    T: Div<T> + Clone,
    <T as Div<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Div<T>>::Output>

The resulting type after applying the / operator.

impl<'a, T> Div<T> for Property<'a, T> where
    T: Div<T> + Clone,
    <T as Div<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Div<T>>::Output>

The resulting type after applying the / operator.

impl<'a, T> From<T> for Property<'a, T> where
    T: Clone
[src]

impl<'a, T, U> Index<U> for Property<'a, T> where
    T: Index<U> + Clone,
    U: Clone
[src]

type Output = <T as Index<U>>::Output

The returned type after indexing.

impl<'a, T> Mul<Property<'a, T>> for Property<'a, T> where
    T: Mul<T> + Clone,
    <T as Mul<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Mul<T>>::Output>

The resulting type after applying the * operator.

impl<'a, T> Mul<T> for Property<'a, T> where
    T: Mul<T> + Clone,
    <T as Mul<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Mul<T>>::Output>

The resulting type after applying the * operator.

impl<'a, T> Neg for Property<'a, T> where
    T: Neg + Clone,
    <T as Neg>::Output: Clone
[src]

type Output = Property<'a, <T as Neg>::Output>

The resulting type after applying the - operator.

impl<'a> Not for Property<'a, bool>[src]

type Output = Property<'a, bool>

The resulting type after applying the ! operator.

impl<'a, T> PartialEq<Property<'a, T>> for Property<'a, T> where
    T: PartialEq<T> + Clone
[src]

impl<'a, T> PartialEq<T> for Property<'a, T> where
    T: PartialEq<T> + Clone
[src]

impl<'a, T> Rem<Property<'a, T>> for Property<'a, T> where
    T: Rem<T> + Clone,
    <T as Rem<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Rem<T>>::Output>

The resulting type after applying the % operator.

impl<'a, T> Rem<T> for Property<'a, T> where
    T: Rem<T> + Clone,
    <T as Rem<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Rem<T>>::Output>

The resulting type after applying the % operator.

impl<'a, T> Serialize for Property<'a, T> where
    T: 'a + Clone + Serialize
[src]

impl<'a, T> Shl<Property<'a, T>> for Property<'a, T> where
    T: Shl<T> + Clone,
    <T as Shl<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Shl<T>>::Output>

The resulting type after applying the << operator.

impl<'a, T> Shl<T> for Property<'a, T> where
    T: Shl<T> + Clone,
    <T as Shl<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Shl<T>>::Output>

The resulting type after applying the << operator.

impl<'a, T> Shr<Property<'a, T>> for Property<'a, T> where
    T: Shr<T> + Clone,
    <T as Shr<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Shr<T>>::Output>

The resulting type after applying the >> operator.

impl<'a, T> Shr<T> for Property<'a, T> where
    T: Shr<T> + Clone,
    <T as Shr<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Shr<T>>::Output>

The resulting type after applying the >> operator.

impl<'a, T> Sub<Property<'a, T>> for Property<'a, T> where
    T: Sub<T> + Clone,
    <T as Sub<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Sub<T>>::Output>

The resulting type after applying the - operator.

impl<'a, T> Sub<T> for Property<'a, T> where
    T: Sub<T> + Clone,
    <T as Sub<T>>::Output: Clone
[src]

type Output = Property<'a, <T as Sub<T>>::Output>

The resulting type after applying the - operator.

impl<'a, T> Eq for Property<'a, T> where
    T: Eq + Clone
[src]

Auto Trait Implementations

impl<'a, T> !RefUnwindSafe for Property<'a, T>

impl<'a, T> !Send for Property<'a, T>

impl<'a, T> !Sync for Property<'a, T>

impl<'a, T> Unpin for Property<'a, T>

impl<'a, T> !UnwindSafe for Property<'a, T>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Any for T where
    T: Any
[src]

impl<C> AsUniform<CubeMap> for C where
    C: Borrow<CubeMap>, 
[src]

impl<'a, C> AsUniform<CubeMapSampler<'a>> for C where
    C: Borrow<CubeMapSampler<'a>>, 
[src]

impl<T> AsUniform<Texture> for T where
    T: Borrow<Texture>, 
[src]

impl<'a, T> AsUniform<TextureSampler<'a>> for T where
    T: Borrow<TextureSampler<'a>>, 
[src]

impl<T> AsUniform<dyn AsRef<[[f32; 3]; 3]> + 'static> for T where
    T: AsRef<[[f32; 3]; 3]>, 
[src]

impl<T> AsUniform<dyn AsRef<[[f32; 4]; 4]> + 'static> for T where
    T: AsRef<[[f32; 4]; 4]>, 
[src]

impl<T> AsUniform<dyn AsRef<[f32; 2]> + 'static> for T where
    T: AsRef<[f32; 2]>, 
[src]

impl<T> AsUniform<dyn AsRef<[f32; 3]> + 'static> for T where
    T: AsRef<[f32; 3]>, 
[src]

impl<T> AsUniform<dyn AsRef<[f32; 4]> + 'static> for T where
    T: AsRef<[f32; 4]>, 
[src]

impl<T> AsUniform<dyn AsRef<[f32; 9]> + 'static> for T where
    T: AsRef<[f32; 9]>, 
[src]

impl<T> AsUniform<dyn AsRef<[i32; 2]> + 'static> for T where
    T: AsRef<[i32; 2]>, 
[src]

impl<T> AsUniform<dyn AsRef<[i32; 3]> + 'static> for T where
    T: AsRef<[i32; 3]>, 
[src]

impl<T> AsUniform<dyn AsRef<[i32; 4]> + 'static> for T where
    T: AsRef<[i32; 4]>, 
[src]

impl<T> AsUniform<dyn AsRef<[u32; 2]> + 'static> for T where
    T: AsRef<[u32; 2]>, 
[src]

impl<T> AsUniform<dyn AsRef<[u32; 3]> + 'static> for T where
    T: AsRef<[u32; 3]>, 
[src]

impl<T> AsUniform<dyn AsRef<[u32; 4]> + 'static> for T where
    T: AsRef<[u32; 4]>, 
[src]

impl<A> AsUniform<dyn AsRef<f32> + 'static> for A where
    A: AsRef<f32>, 
[src]

impl<A> AsUniform<dyn AsRef<i32> + 'static> for A where
    A: AsRef<i32>, 
[src]

impl<A> AsUniform<dyn AsRef<u32> + 'static> for A where
    A: AsRef<u32>, 
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Color<dyn AsRef<[f32; 4]> + 'static> for T where
    T: AsRef<[f32; 4]> + ?Sized
[src]

impl<T> Downcast for T where
    T: Any
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<!> for T[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<V> IntoPnt<V> for V[src]

impl<V> IntoVec<V> for V[src]

impl<T> Pointable for T[src]

type Init = T

The type for initializers.

impl<T> Same<T> for T[src]

type Output = T

Should always be Self

impl<T> Serialize for T where
    T: Serialize + ?Sized
[src]

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 
[src]

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]

impl<T> ClosedNeg for T where
    T: Neg<Output = T>, 
[src]

impl<T> ClosedNeg for T where
    T: Neg<Output = T>, 
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T, Rhs, Output> NumOps<Rhs, Output> for T where
    T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>, 
[src]