namespace SJK.Functional; // [Obsolete] // public class Cache where T : class // { // private T? _cache; // private Func _provider; // private readonly Func? _isvalid; // public Cache(Func provider, Func? isvalid = null) // { // _provider = provider; // _isvalid = isvalid; // } // public bool IsCached() => _cache is not null; // public T Value => _cache is null || (_isvalid is not null && !_isvalid(_cache)) ? _cache = _provider() : _cache; // }