comemo

Trait Track

Source
pub trait Track: Validate + Surfaces {
    // Provided methods
    fn track(&self) -> Tracked<'_, Self> { ... }
    fn track_mut(&mut self) -> TrackedMut<'_, Self> { ... }
    fn track_with<'a>(
        &'a self,
        constraint: &'a Self::Constraint,
    ) -> Tracked<'a, Self> { ... }
    fn track_mut_with<'a>(
        &'a mut self,
        constraint: &'a Self::Constraint,
    ) -> TrackedMut<'a, Self> { ... }
}
Expand description

A trackable type.

This is implemented by types that have an implementation block annotated with #[track] and for trait objects whose traits are annotated with #[track]. For more details, see its documentation.

Provided Methods§

Source

fn track(&self) -> Tracked<'_, Self>

Start tracking all accesses to a value.

Source

fn track_mut(&mut self) -> TrackedMut<'_, Self>

Start tracking all accesses and mutations to a value.

Source

fn track_with<'a>( &'a self, constraint: &'a Self::Constraint, ) -> Tracked<'a, Self>

Start tracking all accesses into a constraint.

Source

fn track_mut_with<'a>( &'a mut self, constraint: &'a Self::Constraint, ) -> TrackedMut<'a, Self>

Start tracking all accesses and mutations into a constraint.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§