/// A tracker that holds strong references to resources. /// /// This is only used to keep resources alive. #[derive(Debug)] pub(crate) struct StatelessTracker<T> {
resources: Vec<Arc<T>>,
}
/// Inserts a single resource into the resource tracker. /// /// Returns a reference to the newly inserted resource. /// (This allows avoiding a clone/reference count increase in many cases.) pubfn insert_single(&mutself, resource: Arc<T>) -> &Arc<T> { self.resources.push(resource); unsafe { self.resources.last().unwrap_unchecked() }
}
}
impl<'a, T> IntoIterator for &'a StatelessTracker<T> { type Item = &'a Arc<T>; type IntoIter = Iter<'a, Arc<T>>;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.