dioxus_signals/global/
memo.rsuse super::{Global, InitializeFromFunction};
use crate::read::Readable;
use crate::read_impls;
use crate::Memo;
impl<T: PartialEq> InitializeFromFunction<T> for Memo<T> {
    fn initialize_from_function(f: fn() -> T) -> Self {
        Memo::new(f)
    }
}
pub type GlobalMemo<T> = Global<Memo<T>, T>;
impl<T: PartialEq + 'static> GlobalMemo<T> {
    pub fn id(&self) -> generational_box::GenerationalBoxId {
        self.resolve().id()
    }
    pub fn memo(&self) -> Memo<T> {
        self.resolve()
    }
}
read_impls!(GlobalMemo<T> where T: PartialEq);