Have StoreContext::data return &'a T (#5855)

This commit is contained in:
Noa
2023-02-23 09:32:35 -06:00
committed by GitHub
parent f6b16a7178
commit 4f7746da60
2 changed files with 8 additions and 1 deletions

View File

@@ -980,7 +980,7 @@ impl<'a, T> StoreContext<'a, T> {
/// Access the underlying data owned by this `Store`. /// Access the underlying data owned by this `Store`.
/// ///
/// Same as [`Store::data`]. /// Same as [`Store::data`].
pub fn data(&self) -> &T { pub fn data(&self) -> &'a T {
self.0.data() self.0.data()
} }

View File

@@ -161,6 +161,13 @@ impl<T> AsContextMut for StoreContextMut<'_, T> {
} }
} }
impl<'a, T> From<StoreContextMut<'a, T>> for StoreContext<'a, T> {
#[inline]
fn from(store: StoreContextMut<'a, T>) -> StoreContext<'a, T> {
StoreContext(store.0)
}
}
// Implementations for internal consumers, but these aren't public types so // Implementations for internal consumers, but these aren't public types so
// they're not publicly accessible for crate consumers. // they're not publicly accessible for crate consumers.
impl<T> AsContext for &'_ StoreInner<T> { impl<T> AsContext for &'_ StoreInner<T> {