pub(crate) type LazyResult<T> = LazyCell<Result<T, Error>>;
pub(crate) struct LazyResult<T> { contents: UnsafeCell<Option<Result<T, Error>>>, }
contents: UnsafeCell<Option<Result<T, Error>>>