Skip to main content

ListSourceListCombineEx

Trait ListSourceListCombineEx 

Source
pub trait ListSourceListCombineEx {
    type Item: Clone + PartialEq + 'static;

    // Required methods
    fn and_list(&self) -> Rc<dyn IObservable<ChangeSet<Self::Item>>>
       where Self::Item: Eq + Hash;
    fn or(&self) -> Rc<dyn IObservable<ChangeSet<Self::Item>>>
       where Self::Item: Eq + Hash;
    fn xor(&self) -> Rc<dyn IObservable<ChangeSet<Self::Item>>>
       where Self::Item: Eq + Hash;
    fn except(&self) -> Rc<dyn IObservable<ChangeSet<Self::Item>>>
       where Self::Item: Eq + Hash;
}
Expand description

And, Or, Xor and Except of an observable list of sources (And(this IObservableList<IObservable<IChangeSet<T>>>), And(this IObservableList<IObservableList<T>>), And(this IObservableList<ISourceList<T>>), ..): the result follows the sources as they are added to the list and removed from it.

Required Associated Types§

Source

type Item: Clone + PartialEq + 'static

The type of the items.

Required Methods§

Source

fn and_list(&self) -> Rc<dyn IObservable<ChangeSet<Self::Item>>>
where Self::Item: Eq + Hash,

The items that are in every source of the list; none while the list is empty (And(IObservableList<..>)).

Source

fn or(&self) -> Rc<dyn IObservable<ChangeSet<Self::Item>>>
where Self::Item: Eq + Hash,

The items that are in any source of the list (Or(IObservableList<..>)).

Source

fn xor(&self) -> Rc<dyn IObservable<ChangeSet<Self::Item>>>
where Self::Item: Eq + Hash,

The items that are in exactly one source of the list (Xor(IObservableList<..>)).

Source

fn except(&self) -> Rc<dyn IObservable<ChangeSet<Self::Item>>>
where Self::Item: Eq + Hash,

The items of the first source of the list that are in none of the others (Except(IObservableList<..>)).

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§