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
Future
returned bywhen_all_processed()
function.- Dropped
Error - Error that is sent to all subscribers when this
ObservableField
/ObservableCell
is dropped. - Guard
- Guard backed by a counter incrementing on its creation and decrementing on
Drop
ping. - Guarded
- Wrapper around a data
T
decrementing its underlying counter onDrop
. - MutObservable
Field Guard - Mutable
ObservableField
reference returned byObservableField::borrow_mut
. - Observable
Cell - Observable analogue of
Cell
. - Observable
Field - Reactive cell which emits all modifications to its subscribers.
- Processed
Future
with inner factory.Factory
can be unwrapped usingInto
implementation.- Progressable
Cell - Reactive
Cell
with a progress tracking.
Enums§
- Universal
Subscriber - Subscriber that implements subscribing and
Whenable
inVec
.
Traits§
- OnObservable
Field Modification - Abstraction over catching all unique modifications of an
ObservableField
. - Whenable
- Abstraction over
ObservableField::when
andObservableField::when_eq
implementations for custom types.
Functions§
- when_
all_ processed - Creates
AllProcessed
Future
from the providedIterator
ofFactory
s.
Type Aliases§
- Observable
ObservableField
that allows to subscribe to all changes (ObservableField::subscribe
) and to concrete changes (ObservableField::when
andObservableField::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
ObservableField
that allows to subscribe to all changes (ObservableField::subscribe
) and to concrete changes (ObservableField::when
andObservableField::when_eq
).- Progressable
Hash Map - Reactive hash map based on
HashMap
with additional functionality of tracking progress made by its subscribers. - Progressable
Hash Set - Reactive hash set based on
HashSet
with an ability to recognize when all updates was processed by subscribers. - Progressable
Vec - Reactive vector based on
Vec
with additional functionality of tracking progress made by its subscribers.