3 ms·
You have to write a disposable wrapper to return. Return it in error case too. readonly record struct Result<TResult, TDisposable>(TResult? IfHappy, TDispo
by brewmarche 9mo ago
You have to write a disposable wrapper to return. Return it in error case too.
readonly record struct Result<TResult, TDisposable>(TResult? IfHappy, TDisposable? Disposable): IDisposable where TDisposable : IDisposable
{
public void Dispose() => Disposable?.Dispose();
}
- brewmarche 9mo agoUsage at call site: using (var result = foo.GetSomethingIfLucky()) { if (result.IfHappy is {} success) { // do something } }