Added CellView type to limit where Cell value can be set from.

This commit is contained in:
2023-04-03 21:38:03 -07:00
parent 2cc2b45f19
commit 3719f81b35

View File

@ -0,0 +1,15 @@
#![no_std]
use core::cell::Cell;
/// Provides a view only reference to a [Cell].
/// Useful alternative to `&Cell` when an API wants to control where a [Cell]s value can be set.
#[derive(Copy, Clone)]
pub struct CellView<'a, T: Copy>(&'a Cell<T>);
impl<'a, T: Copy> CellView<'a, T> {
#[inline]
pub fn get(self) -> T {
self.0.get()
}
}