[−][src]Struct census::TrackedObject
Your tracked object.
A tracked object contains reference counting logic and an
Arc to your object.
It is cloneable but calling clone will not clone your internal object.
Your object cannot be mutated. You can borrow it using
the Deref interface.
Methods
impl<T> TrackedObject<T>[src]
pub fn map<F>(&self, f: F) -> TrackedObject<T> where
F: FnOnce(&T) -> T, [src]
F: FnOnce(&T) -> T,
Creates a new object from an existing one.
The new object will be registered in your original object's inventory.
let inventory = Inventory::new(); let seven = inventory.track(7); let fourteen = seven.map(|i| i * 2); assert_eq!(*fourteen, 14); let living_instances = inventory.list(); assert_eq!(living_instances.len(), 2);
Trait Implementations
impl<T> Clone for TrackedObject<T>[src]
fn clone(&self) -> Self[src]
fn clone_from(&mut self, source: &Self)1.0.0[src]
Performs copy-assignment from source. Read more
impl<T> Drop for TrackedObject<T>[src]
impl<T> AsRef<T> for TrackedObject<T>[src]
impl<T> Deref for TrackedObject<T>[src]
impl<T> Borrow<T> for TrackedObject<T>[src]
Auto Trait Implementations
impl<T> Send for TrackedObject<T> where
T: Send + Sync,
T: Send + Sync,
impl<T> Sync for TrackedObject<T> where
T: Send + Sync,
T: Send + Sync,
Blanket Implementations
impl<T> From for T[src]
impl<T, U> Into for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
impl<T, U> TryFrom for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T> Borrow for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T, U> TryInto for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,