Expand description
§medea-reactive
Reactive mutable data containers.
§License
Copyright © 2021-2025 Instrumentisto Team https://github.com/instrumentisto
This software is subject to the terms of the Blue Oak Model License 1.0.0. If a copy of the BlueOak-1.0.0 license was not distributed with this file, You can obtain one at https://blueoakcouncil.org/license/1.0.0.
Modules§
- collections
- Implementations of reactive collections based on
std::collections. - field
- Implementations of basic reactive containers.
- subscribers_
store - Stores for updates subscribers.
Structs§
- AllProcessed
Futurereturned bywhen_all_processed()function.- Dropped
Error - Error that is sent to all subscribers when this
ObservableField/ObservableCellis dropped. - Guard
- Guard backed by a counter incrementing on its creation and decrementing on
Dropping. - Guarded
- Wrapper around a data
Tdecrementing its underlying counter onDrop. - MutObservable
Field Guard - Mutable
ObservableFieldreference returned byObservableField::borrow_mut. - Observable
Cell - Observable analogue of
Cell. - Observable
Field - Reactive cell which emits all modifications to its subscribers.
- Processed
Futurewith inner factory.Factorycan be unwrapped usingIntoimplementation.- Progressable
Cell - Reactive
Cellwith a progress tracking.
Enums§
- Universal
Subscriber - Subscriber that implements subscribing and
WhenableinVec.
Traits§
- OnObservable
Field Modification - Abstraction over catching all unique modifications of an
ObservableField. - Whenable
- Abstraction over
ObservableField::whenandObservableField::when_eqimplementations for custom types.
Functions§
- when_
all_ processed - Creates
AllProcessedFuturefrom the providedIteratorofFactorys.
Type Aliases§
- Observable
ObservableFieldthat allows to subscribe to all changes (ObservableField::subscribe) and to concrete changes (ObservableField::whenandObservableField::when_eq).- Observable
Hash Map - Reactive hash map based on
HashMap. - Observable
Hash Set - Reactive hash set based on
HashSet. - Observable
Vec - Reactive vector based on
Vec. - Progressable
ObservableFieldthat allows to subscribe to all changes (ObservableField::subscribe) and to concrete changes (ObservableField::whenandObservableField::when_eq).- Progressable
Hash Map - Reactive hash map based on
HashMapwith additional functionality of tracking progress made by its subscribers. - Progressable
Hash Set - Reactive hash set based on
HashSetwith an ability to recognize when all updates was processed by subscribers. - Progressable
Vec - Reactive vector based on
Vecwith additional functionality of tracking progress made by its subscribers.