Struct raii_change_tracker::DataTracker [] [src]

pub struct DataTracker<T> where
    T: Clone + PartialEq
{ /* fields omitted */ }

Tracks changes to data and notifies listeners.

The data to be tracked is type T.

Subsribe to changes by calling add_listener.

See the module-level documentation for more details.

Methods

impl<T> DataTracker<T> where
    T: Clone + PartialEq
[src]

[src]

Create a new DataTracker which takes ownership of the data of type T.

[src]

Add a callback that will be called just after a data change is detected.

Returns a Receiver which will receive messages whenever a change occurs.

To remove a listener, drop the Receiver.

[src]

Return a Modifier which can be used to modify the owned data.

Trait Implementations

impl<T> AsRef<T> for DataTracker<T> where
    T: Clone + PartialEq
[src]

[src]

Performs the conversion.

Auto Trait Implementations

impl<T> Send for DataTracker<T> where
    T: Send

impl<T> Sync for DataTracker<T> where
    T: Send + Sync