public static T DisposeWith <T>(this T disposable, ICompositeDisposable composite) where T : IDisposable { if (disposable == null || composite == null) { return(disposable); } composite.AddDisposable(disposable); return(disposable); }
public static void DisposeWith(this IDisposable disposable, ICompositeDisposable compositeDisposable) { if (disposable == null) { throw new ArgumentNullException(nameof(disposable)); } if (compositeDisposable == null) { throw new ArgumentNullException(nameof(compositeDisposable)); } compositeDisposable.AddDisposable(disposable); }
/// <summary> /// Extension method to dispose the <see cref="IDisposable"/> disposable with the <see cref="ICompositeDisposable"/> instance /// </summary> /// <param name="disposable">The disposable.</param> /// <param name="compositeDisposable">The composite disposable.</param> /// <returns></returns> public static IDisposable DisposeWith(this IDisposable disposable, ICompositeDisposable compositeDisposable) { compositeDisposable.AddDisposable(disposable); return(disposable); }