Skip to main content

CacheChangeSetSourcesEx

Trait CacheChangeSetSourcesEx 

Source
pub trait CacheChangeSetSourcesEx<T, K> {
    // Required methods
    fn merge_change_sets(&self) -> Rc<dyn IObservable<ChangeSet<T, K>>>
       where T: PartialEq;
    fn merge_change_sets_with_comparer(
        &self,
        equality_comparer: impl Fn(&T, &T) -> bool + 'static,
    ) -> Rc<dyn IObservable<ChangeSet<T, K>>>;
    fn merge_change_sets_ordered_by(
        &self,
        comparer: Rc<dyn Fn(&T, &T) -> Ordering>,
    ) -> Rc<dyn IObservable<ChangeSet<T, K>>>
       where T: PartialEq;
    fn merge_change_sets_with(
        &self,
        equality_comparer: Option<Rc<dyn Fn(&T, &T) -> bool>>,
        comparer: Option<Rc<dyn Fn(&T, &T) -> Ordering>>,
        scheduler: Option<Rc<dyn IScheduler>>,
        completable: bool,
    ) -> Rc<dyn IObservable<ChangeSet<T, K>>>
       where T: PartialEq;
}
Expand description

MergeChangeSets of an enumerable of sequences of change sets of caches (MergeChangeSets(this IEnumerable<IObservable<IChangeSet<TObject, TKey>>>, ..)): the sequences are enumerated when the merge is subscribed, and the merge completes after them unless completable is false.

Required Methods§

Source

fn merge_change_sets(&self) -> Rc<dyn IObservable<ChangeSet<T, K>>>
where T: PartialEq,

The change sets of the sequences, merged (MergeChangeSets(IScheduler? = null, bool completable = true)).

Source

fn merge_change_sets_with_comparer( &self, equality_comparer: impl Fn(&T, &T) -> bool + 'static, ) -> Rc<dyn IObservable<ChangeSet<T, K>>>

With the equality of the items (MergeChangeSets(IEqualityComparer<TObject>, ..)).

Source

fn merge_change_sets_ordered_by( &self, comparer: Rc<dyn Fn(&T, &T) -> Ordering>, ) -> Rc<dyn IObservable<ChangeSet<T, K>>>
where T: PartialEq,

Where the value of a key is the least by comparer (MergeChangeSets(IComparer<TObject>, ..)).

Source

fn merge_change_sets_with( &self, equality_comparer: Option<Rc<dyn Fn(&T, &T) -> bool>>, comparer: Option<Rc<dyn Fn(&T, &T) -> Ordering>>, scheduler: Option<Rc<dyn IScheduler>>, completable: bool, ) -> Rc<dyn IObservable<ChangeSet<T, K>>>
where T: PartialEq,

With every argument: the equality of the items (PartialEq when None), the comparer, the scheduler that enumerates the sequences, and whether the merge completes after them (MergeChangeSets(IEqualityComparer<TObject>, IComparer<TObject>, IScheduler?, bool)).

Dyn Compatibility§

This trait is not dyn compatible.

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

Implementations on Foreign Types§

Source§

impl<T: Clone + 'static, K: Eq + Hash + Clone + 'static> CacheChangeSetSourcesEx<T, K> for [Rc<dyn IObservable<ChangeSet<T, K>>>]

Source§

fn merge_change_sets(&self) -> Rc<dyn IObservable<ChangeSet<T, K>>>
where T: PartialEq,

Source§

fn merge_change_sets_with_comparer( &self, equality_comparer: impl Fn(&T, &T) -> bool + 'static, ) -> Rc<dyn IObservable<ChangeSet<T, K>>>

Source§

fn merge_change_sets_ordered_by( &self, comparer: Rc<dyn Fn(&T, &T) -> Ordering>, ) -> Rc<dyn IObservable<ChangeSet<T, K>>>
where T: PartialEq,

Source§

fn merge_change_sets_with( &self, equality_comparer: Option<Rc<dyn Fn(&T, &T) -> bool>>, comparer: Option<Rc<dyn Fn(&T, &T) -> Ordering>>, scheduler: Option<Rc<dyn IScheduler>>, completable: bool, ) -> Rc<dyn IObservable<ChangeSet<T, K>>>
where T: PartialEq,

Implementors§